ba62583fc22e16314b1fabdb6b2574e422892bbf
[bpt/coccinelle.git] / parsing_cocci / parser_cocci_menhir.ml
1 (*
2 * Copyright 2012, INRIA
3 * Julia Lawall, Gilles Muller
4 * Copyright 2010-2011, INRIA, University of Copenhagen
5 * Julia Lawall, Rene Rydhof Hansen, Gilles Muller, Nicolas Palix
6 * Copyright 2005-2009, Ecole des Mines de Nantes, University of Copenhagen
7 * Yoann Padioleau, Julia Lawall, Rene Rydhof Hansen, Henrik Stuart, Gilles Muller, Nicolas Palix
8 * This file is part of Coccinelle.
9 *
10 * Coccinelle is free software: you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation, according to version 2 of the License.
13 *
14 * Coccinelle is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with Coccinelle. If not, see <http://www.gnu.org/licenses/>.
21 *
22 * The authors reserve the right to distribute this or future versions of
23 * Coccinelle under other licenses.
24 *)
25
26
27 # 0 "./parser_cocci_menhir.ml"
28 exception Error
29
30 type token =
31 | Tvolatile of (
32 # 96 "parser_cocci_menhir.mly"
33 (Data.clt)
34 # 8 "parser_cocci_menhir.ml"
35 )
36 | Tvoid of (
37 # 92 "parser_cocci_menhir.mly"
38 (Data.clt)
39 # 13 "parser_cocci_menhir.ml"
40 )
41 | Tunsigned of (
42 # 93 "parser_cocci_menhir.mly"
43 (Data.clt)
44 # 18 "parser_cocci_menhir.ml"
45 )
46 | Tunion of (
47 # 92 "parser_cocci_menhir.mly"
48 (Data.clt)
49 # 23 "parser_cocci_menhir.ml"
50 )
51 | Ttypedef of (
52 # 95 "parser_cocci_menhir.mly"
53 (Data.clt)
54 # 28 "parser_cocci_menhir.ml"
55 )
56 | Tstruct of (
57 # 92 "parser_cocci_menhir.mly"
58 (Data.clt)
59 # 33 "parser_cocci_menhir.ml"
60 )
61 | Tstatic of (
62 # 95 "parser_cocci_menhir.mly"
63 (Data.clt)
64 # 38 "parser_cocci_menhir.ml"
65 )
66 | Tssize_t of (
67 # 91 "parser_cocci_menhir.mly"
68 (Data.clt)
69 # 43 "parser_cocci_menhir.ml"
70 )
71 | Tsize_t of (
72 # 91 "parser_cocci_menhir.mly"
73 (Data.clt)
74 # 48 "parser_cocci_menhir.ml"
75 )
76 | Tsigned of (
77 # 93 "parser_cocci_menhir.mly"
78 (Data.clt)
79 # 53 "parser_cocci_menhir.ml"
80 )
81 | Tshort of (
82 # 90 "parser_cocci_menhir.mly"
83 (Data.clt)
84 # 58 "parser_cocci_menhir.ml"
85 )
86 | Tregister of (
87 # 95 "parser_cocci_menhir.mly"
88 (Data.clt)
89 # 63 "parser_cocci_menhir.ml"
90 )
91 | Tptrdiff_t of (
92 # 91 "parser_cocci_menhir.mly"
93 (Data.clt)
94 # 68 "parser_cocci_menhir.ml"
95 )
96 | Tlong of (
97 # 90 "parser_cocci_menhir.mly"
98 (Data.clt)
99 # 73 "parser_cocci_menhir.ml"
100 )
101 | Tlist
102 | Tint of (
103 # 90 "parser_cocci_menhir.mly"
104 (Data.clt)
105 # 79 "parser_cocci_menhir.ml"
106 )
107 | Tinline of (
108 # 95 "parser_cocci_menhir.mly"
109 (Data.clt)
110 # 84 "parser_cocci_menhir.ml"
111 )
112 | Tfloat of (
113 # 90 "parser_cocci_menhir.mly"
114 (Data.clt)
115 # 89 "parser_cocci_menhir.ml"
116 )
117 | Textern of (
118 # 95 "parser_cocci_menhir.mly"
119 (Data.clt)
120 # 94 "parser_cocci_menhir.ml"
121 )
122 | Tenum of (
123 # 92 "parser_cocci_menhir.mly"
124 (Data.clt)
125 # 99 "parser_cocci_menhir.ml"
126 )
127 | Tdouble of (
128 # 90 "parser_cocci_menhir.mly"
129 (Data.clt)
130 # 104 "parser_cocci_menhir.ml"
131 )
132 | Tconst of (
133 # 96 "parser_cocci_menhir.mly"
134 (Data.clt)
135 # 109 "parser_cocci_menhir.ml"
136 )
137 | Tchar of (
138 # 90 "parser_cocci_menhir.mly"
139 (Data.clt)
140 # 114 "parser_cocci_menhir.ml"
141 )
142 | Tauto of (
143 # 95 "parser_cocci_menhir.mly"
144 (Data.clt)
145 # 119 "parser_cocci_menhir.ml"
146 )
147 | Tattr of (
148 # 97 "parser_cocci_menhir.mly"
149 (string * Data.clt)
150 # 124 "parser_cocci_menhir.ml"
151 )
152 | TXor of (
153 # 138 "parser_cocci_menhir.mly"
154 (Data.clt)
155 # 129 "parser_cocci_menhir.ml"
156 )
157 | TWords
158 | TWhy0
159 | TWhy of (
160 # 122 "parser_cocci_menhir.mly"
161 (Data.clt)
162 # 136 "parser_cocci_menhir.ml"
163 )
164 | TWhile of (
165 # 99 "parser_cocci_menhir.mly"
166 (Data.clt)
167 # 141 "parser_cocci_menhir.ml"
168 )
169 | TWhenTrue of (
170 # 120 "parser_cocci_menhir.mly"
171 (Data.clt)
172 # 146 "parser_cocci_menhir.ml"
173 )
174 | TWhenFalse of (
175 # 120 "parser_cocci_menhir.mly"
176 (Data.clt)
177 # 151 "parser_cocci_menhir.ml"
178 )
179 | TWhen of (
180 # 120 "parser_cocci_menhir.mly"
181 (Data.clt)
182 # 156 "parser_cocci_menhir.ml"
183 )
184 | TVirtual
185 | TUsing
186 | TUnderscore
187 | TUndef of (
188 # 127 "parser_cocci_menhir.mly"
189 (Data.clt * token)
190 # 164 "parser_cocci_menhir.ml"
191 )
192 | TTypedef
193 | TTypeId of (
194 # 101 "parser_cocci_menhir.mly"
195 (string * Data.clt)
196 # 170 "parser_cocci_menhir.ml"
197 )
198 | TType
199 | TTildeExclEq of (
200 # 140 "parser_cocci_menhir.mly"
201 (Data.clt)
202 # 176 "parser_cocci_menhir.ml"
203 )
204 | TTildeEq of (
205 # 140 "parser_cocci_menhir.mly"
206 (Data.clt)
207 # 181 "parser_cocci_menhir.ml"
208 )
209 | TTilde of (
210 # 145 "parser_cocci_menhir.mly"
211 (Data.clt)
212 # 186 "parser_cocci_menhir.ml"
213 )
214 | TSymbol
215 | TSymId of (
216 # 101 "parser_cocci_menhir.mly"
217 (string * Data.clt)
218 # 192 "parser_cocci_menhir.ml"
219 )
220 | TSwitch of (
221 # 99 "parser_cocci_menhir.mly"
222 (Data.clt)
223 # 197 "parser_cocci_menhir.ml"
224 )
225 | TSub of (
226 # 140 "parser_cocci_menhir.mly"
227 (Data.clt)
228 # 202 "parser_cocci_menhir.ml"
229 )
230 | TString of (
231 # 133 "parser_cocci_menhir.mly"
232 (string * Data.clt)
233 # 207 "parser_cocci_menhir.ml"
234 )
235 | TStrict of (
236 # 120 "parser_cocci_menhir.mly"
237 (Data.clt)
238 # 212 "parser_cocci_menhir.ml"
239 )
240 | TStatement
241 | TSizeof of (
242 # 100 "parser_cocci_menhir.mly"
243 (Data.clt)
244 # 218 "parser_cocci_menhir.ml"
245 )
246 | TShROp of (
247 # 142 "parser_cocci_menhir.mly"
248 (Ast_cocci.arithOp * Data.clt)
249 # 223 "parser_cocci_menhir.ml"
250 )
251 | TShLOp of (
252 # 142 "parser_cocci_menhir.mly"
253 (Ast_cocci.arithOp * Data.clt)
254 # 228 "parser_cocci_menhir.ml"
255 )
256 | TScriptData of (
257 # 117 "parser_cocci_menhir.mly"
258 (string)
259 # 233 "parser_cocci_menhir.ml"
260 )
261 | TScript
262 | TRuleName of (
263 # 88 "parser_cocci_menhir.mly"
264 (string)
265 # 239 "parser_cocci_menhir.ml"
266 )
267 | TRightIso
268 | TReturn of (
269 # 99 "parser_cocci_menhir.mly"
270 (Data.clt)
271 # 245 "parser_cocci_menhir.ml"
272 )
273 | TPure
274 | TPtrOp of (
275 # 150 "parser_cocci_menhir.mly"
276 (Data.clt)
277 # 251 "parser_cocci_menhir.ml"
278 )
279 | TPtVirg of (
280 # 153 "parser_cocci_menhir.mly"
281 (Data.clt)
282 # 256 "parser_cocci_menhir.ml"
283 )
284 | TPragma of (
285 # 102 "parser_cocci_menhir.mly"
286 (Ast_cocci.added_string * Data.clt)
287 # 261 "parser_cocci_menhir.ml"
288 )
289 | TPosition
290 | TPosAny
291 | TPlusFile of (
292 # 129 "parser_cocci_menhir.mly"
293 (string * Data.clt)
294 # 268 "parser_cocci_menhir.ml"
295 )
296 | TPlus0
297 | TPlus of (
298 # 144 "parser_cocci_menhir.mly"
299 (Data.clt)
300 # 274 "parser_cocci_menhir.ml"
301 )
302 | TPathIsoFile of (
303 # 125 "parser_cocci_menhir.mly"
304 (string)
305 # 279 "parser_cocci_menhir.ml"
306 )
307 | TParameter
308 | TPOEllipsis of (
309 # 119 "parser_cocci_menhir.mly"
310 (Data.clt)
311 # 285 "parser_cocci_menhir.ml"
312 )
313 | TPCEllipsis of (
314 # 119 "parser_cocci_menhir.mly"
315 (Data.clt)
316 # 290 "parser_cocci_menhir.ml"
317 )
318 | TPArob of (
319 # 116 "parser_cocci_menhir.mly"
320 (Data.clt)
321 # 295 "parser_cocci_menhir.ml"
322 )
323 | TOrLog of (
324 # 135 "parser_cocci_menhir.mly"
325 (Data.clt)
326 # 300 "parser_cocci_menhir.ml"
327 )
328 | TOr of (
329 # 137 "parser_cocci_menhir.mly"
330 (Data.clt)
331 # 305 "parser_cocci_menhir.ml"
332 )
333 | TOn
334 | TOPar0 of (
335 # 122 "parser_cocci_menhir.mly"
336 (Data.clt)
337 # 311 "parser_cocci_menhir.ml"
338 )
339 | TOPar of (
340 # 122 "parser_cocci_menhir.mly"
341 (Data.clt)
342 # 316 "parser_cocci_menhir.ml"
343 )
344 | TOInit of (
345 # 147 "parser_cocci_menhir.mly"
346 (Data.clt)
347 # 321 "parser_cocci_menhir.ml"
348 )
349 | TOEllipsis of (
350 # 119 "parser_cocci_menhir.mly"
351 (Data.clt)
352 # 326 "parser_cocci_menhir.ml"
353 )
354 | TOCro of (
355 # 148 "parser_cocci_menhir.mly"
356 (Data.clt)
357 # 331 "parser_cocci_menhir.ml"
358 )
359 | TOBrace of (
360 # 147 "parser_cocci_menhir.mly"
361 (Data.clt)
362 # 336 "parser_cocci_menhir.ml"
363 )
364 | TNothing
365 | TNotEq of (
366 # 140 "parser_cocci_menhir.mly"
367 (Data.clt)
368 # 342 "parser_cocci_menhir.ml"
369 )
370 | TNever
371 | TName
372 | TMul of (
373 # 145 "parser_cocci_menhir.mly"
374 (Data.clt)
375 # 349 "parser_cocci_menhir.ml"
376 )
377 | TMinusFile of (
378 # 129 "parser_cocci_menhir.mly"
379 (string * Data.clt)
380 # 354 "parser_cocci_menhir.ml"
381 )
382 | TMinus of (
383 # 144 "parser_cocci_menhir.mly"
384 (Data.clt)
385 # 359 "parser_cocci_menhir.ml"
386 )
387 | TMid0 of (
388 # 123 "parser_cocci_menhir.mly"
389 (Data.clt)
390 # 364 "parser_cocci_menhir.ml"
391 )
392 | TMetavariable
393 | TMetaType of (
394 # 108 "parser_cocci_menhir.mly"
395 (Parse_aux.info)
396 # 370 "parser_cocci_menhir.ml"
397 )
398 | TMetaStmList of (
399 # 108 "parser_cocci_menhir.mly"
400 (Parse_aux.info)
401 # 375 "parser_cocci_menhir.ml"
402 )
403 | TMetaStm of (
404 # 108 "parser_cocci_menhir.mly"
405 (Parse_aux.info)
406 # 380 "parser_cocci_menhir.ml"
407 )
408 | TMetaPos of (
409 # 113 "parser_cocci_menhir.mly"
410 (Parse_aux.pos_info)
411 # 385 "parser_cocci_menhir.ml"
412 )
413 | TMetaParamList of (
414 # 110 "parser_cocci_menhir.mly"
415 (Parse_aux.list_info)
416 # 390 "parser_cocci_menhir.ml"
417 )
418 | TMetaParam of (
419 # 108 "parser_cocci_menhir.mly"
420 (Parse_aux.info)
421 # 395 "parser_cocci_menhir.ml"
422 )
423 | TMetaLocalIdExp of (
424 # 112 "parser_cocci_menhir.mly"
425 (Parse_aux.typed_expinfo)
426 # 400 "parser_cocci_menhir.ml"
427 )
428 | TMetaLocalFunc of (
429 # 105 "parser_cocci_menhir.mly"
430 (Parse_aux.idinfo)
431 # 405 "parser_cocci_menhir.ml"
432 )
433 | TMetaIterator of (
434 # 106 "parser_cocci_menhir.mly"
435 (Parse_aux.idinfo)
436 # 410 "parser_cocci_menhir.ml"
437 )
438 | TMetaInitList of (
439 # 110 "parser_cocci_menhir.mly"
440 (Parse_aux.list_info)
441 # 415 "parser_cocci_menhir.ml"
442 )
443 | TMetaInit of (
444 # 109 "parser_cocci_menhir.mly"
445 (Parse_aux.info)
446 # 420 "parser_cocci_menhir.ml"
447 )
448 | TMetaIdExp of (
449 # 112 "parser_cocci_menhir.mly"
450 (Parse_aux.typed_expinfo)
451 # 425 "parser_cocci_menhir.ml"
452 )
453 | TMetaId of (
454 # 104 "parser_cocci_menhir.mly"
455 (Parse_aux.midinfo)
456 # 430 "parser_cocci_menhir.ml"
457 )
458 | TMetaFunc of (
459 # 105 "parser_cocci_menhir.mly"
460 (Parse_aux.idinfo)
461 # 435 "parser_cocci_menhir.ml"
462 )
463 | TMetaFieldList of (
464 # 111 "parser_cocci_menhir.mly"
465 (Parse_aux.list_info)
466 # 440 "parser_cocci_menhir.ml"
467 )
468 | TMetaField of (
469 # 109 "parser_cocci_menhir.mly"
470 (Parse_aux.info)
471 # 445 "parser_cocci_menhir.ml"
472 )
473 | TMetaExpList of (
474 # 110 "parser_cocci_menhir.mly"
475 (Parse_aux.list_info)
476 # 450 "parser_cocci_menhir.ml"
477 )
478 | TMetaExp of (
479 # 112 "parser_cocci_menhir.mly"
480 (Parse_aux.typed_expinfo)
481 # 455 "parser_cocci_menhir.ml"
482 )
483 | TMetaErr of (
484 # 107 "parser_cocci_menhir.mly"
485 (Parse_aux.expinfo)
486 # 460 "parser_cocci_menhir.ml"
487 )
488 | TMetaDeclarer of (
489 # 106 "parser_cocci_menhir.mly"
490 (Parse_aux.idinfo)
491 # 465 "parser_cocci_menhir.ml"
492 )
493 | TMetaDecl of (
494 # 109 "parser_cocci_menhir.mly"
495 (Parse_aux.info)
496 # 470 "parser_cocci_menhir.ml"
497 )
498 | TMetaConst of (
499 # 112 "parser_cocci_menhir.mly"
500 (Parse_aux.typed_expinfo)
501 # 475 "parser_cocci_menhir.ml"
502 )
503 | TMeta of (
504 # 109 "parser_cocci_menhir.mly"
505 (Parse_aux.info)
506 # 480 "parser_cocci_menhir.ml"
507 )
508 | TMPtVirg
509 | TLogOp of (
510 # 141 "parser_cocci_menhir.mly"
511 (Ast_cocci.logicalOp * Data.clt)
512 # 486 "parser_cocci_menhir.ml"
513 )
514 | TLocal
515 | TLineEnd of (
516 # 120 "parser_cocci_menhir.mly"
517 (Data.clt)
518 # 492 "parser_cocci_menhir.ml"
519 )
520 | TIteratorId of (
521 # 101 "parser_cocci_menhir.mly"
522 (string * Data.clt)
523 # 497 "parser_cocci_menhir.ml"
524 )
525 | TIterator
526 | TIsoType
527 | TIsoTopLevel
528 | TIsoToTestExpression
529 | TIsoTestExpression
530 | TIsoStatement
531 | TIsoExpression
532 | TIsoDeclaration
533 | TIsoArgExpression
534 | TIso
535 | TInvalid
536 | TInt of (
537 # 133 "parser_cocci_menhir.mly"
538 (string * Data.clt)
539 # 513 "parser_cocci_menhir.ml"
540 )
541 | TInitialize
542 | TInitialiser
543 | TIncludeNL of (
544 # 126 "parser_cocci_menhir.mly"
545 (string * Data.clt)
546 # 520 "parser_cocci_menhir.ml"
547 )
548 | TIncludeL of (
549 # 126 "parser_cocci_menhir.mly"
550 (string * Data.clt)
551 # 525 "parser_cocci_menhir.ml"
552 )
553 | TInc of (
554 # 131 "parser_cocci_menhir.mly"
555 (Data.clt)
556 # 530 "parser_cocci_menhir.ml"
557 )
558 | TIf of (
559 # 99 "parser_cocci_menhir.mly"
560 (Data.clt)
561 # 535 "parser_cocci_menhir.ml"
562 )
563 | TIdentifier
564 | TIdent of (
565 # 101 "parser_cocci_menhir.mly"
566 (string * Data.clt)
567 # 541 "parser_cocci_menhir.ml"
568 )
569 | TIdExpression
570 | TGoto of (
571 # 100 "parser_cocci_menhir.mly"
572 (Data.clt)
573 # 547 "parser_cocci_menhir.ml"
574 )
575 | TGenerated
576 | TFunction
577 | TFunDecl of (
578 # 100 "parser_cocci_menhir.mly"
579 (Data.clt)
580 # 554 "parser_cocci_menhir.ml"
581 )
582 | TFresh
583 | TForall
584 | TFor of (
585 # 99 "parser_cocci_menhir.mly"
586 (Data.clt)
587 # 561 "parser_cocci_menhir.ml"
588 )
589 | TFloat of (
590 # 133 "parser_cocci_menhir.mly"
591 (string * Data.clt)
592 # 566 "parser_cocci_menhir.ml"
593 )
594 | TFinalize
595 | TField
596 | TExtends
597 | TExpression
598 | TExists
599 | TEver
600 | TError
601 | TEqEq of (
602 # 140 "parser_cocci_menhir.mly"
603 (Data.clt)
604 # 578 "parser_cocci_menhir.ml"
605 )
606 | TEq of (
607 # 153 "parser_cocci_menhir.mly"
608 (Data.clt)
609 # 583 "parser_cocci_menhir.ml"
610 )
611 | TElse of (
612 # 99 "parser_cocci_menhir.mly"
613 (Data.clt)
614 # 588 "parser_cocci_menhir.ml"
615 )
616 | TEllipsis of (
617 # 119 "parser_cocci_menhir.mly"
618 (Data.clt)
619 # 593 "parser_cocci_menhir.ml"
620 )
621 | TDotDot of (
622 # 122 "parser_cocci_menhir.mly"
623 (Data.clt)
624 # 598 "parser_cocci_menhir.ml"
625 )
626 | TDot of (
627 # 153 "parser_cocci_menhir.mly"
628 (Data.clt)
629 # 603 "parser_cocci_menhir.ml"
630 )
631 | TDo of (
632 # 99 "parser_cocci_menhir.mly"
633 (Data.clt)
634 # 608 "parser_cocci_menhir.ml"
635 )
636 | TDmOp of (
637 # 143 "parser_cocci_menhir.mly"
638 (Ast_cocci.arithOp * Data.clt)
639 # 613 "parser_cocci_menhir.ml"
640 )
641 | TDisable
642 | TDepends
643 | TDefineParam of (
644 # 128 "parser_cocci_menhir.mly"
645 (Data.clt * token * int * int)
646 # 620 "parser_cocci_menhir.ml"
647 )
648 | TDefine of (
649 # 127 "parser_cocci_menhir.mly"
650 (Data.clt * token)
651 # 625 "parser_cocci_menhir.ml"
652 )
653 | TDefault of (
654 # 99 "parser_cocci_menhir.mly"
655 (Data.clt)
656 # 630 "parser_cocci_menhir.ml"
657 )
658 | TDeclarerId of (
659 # 101 "parser_cocci_menhir.mly"
660 (string * Data.clt)
661 # 635 "parser_cocci_menhir.ml"
662 )
663 | TDeclarer
664 | TDeclaration
665 | TDec of (
666 # 131 "parser_cocci_menhir.mly"
667 (Data.clt)
668 # 642 "parser_cocci_menhir.ml"
669 )
670 | TCppConcatOp
671 | TContinue of (
672 # 100 "parser_cocci_menhir.mly"
673 (Data.clt)
674 # 648 "parser_cocci_menhir.ml"
675 )
676 | TContext
677 | TConstant
678 | TComma of (
679 # 153 "parser_cocci_menhir.mly"
680 (Data.clt)
681 # 655 "parser_cocci_menhir.ml"
682 )
683 | TChar of (
684 # 133 "parser_cocci_menhir.mly"
685 (string * Data.clt)
686 # 660 "parser_cocci_menhir.ml"
687 )
688 | TCase of (
689 # 99 "parser_cocci_menhir.mly"
690 (Data.clt)
691 # 665 "parser_cocci_menhir.ml"
692 )
693 | TCPar0 of (
694 # 123 "parser_cocci_menhir.mly"
695 (Data.clt)
696 # 670 "parser_cocci_menhir.ml"
697 )
698 | TCPar of (
699 # 123 "parser_cocci_menhir.mly"
700 (Data.clt)
701 # 675 "parser_cocci_menhir.ml"
702 )
703 | TCEllipsis of (
704 # 119 "parser_cocci_menhir.mly"
705 (Data.clt)
706 # 680 "parser_cocci_menhir.ml"
707 )
708 | TCCro of (
709 # 148 "parser_cocci_menhir.mly"
710 (Data.clt)
711 # 685 "parser_cocci_menhir.ml"
712 )
713 | TCBrace of (
714 # 147 "parser_cocci_menhir.mly"
715 (Data.clt)
716 # 690 "parser_cocci_menhir.ml"
717 )
718 | TBreak of (
719 # 100 "parser_cocci_menhir.mly"
720 (Data.clt)
721 # 695 "parser_cocci_menhir.ml"
722 )
723 | TBang0
724 | TBang of (
725 # 122 "parser_cocci_menhir.mly"
726 (Data.clt)
727 # 701 "parser_cocci_menhir.ml"
728 )
729 | TAssign of (
730 # 154 "parser_cocci_menhir.mly"
731 (Ast_cocci.assignOp * Data.clt)
732 # 706 "parser_cocci_menhir.ml"
733 )
734 | TArobArob
735 | TArob
736 | TAny of (
737 # 120 "parser_cocci_menhir.mly"
738 (Data.clt)
739 # 713 "parser_cocci_menhir.ml"
740 )
741 | TAndLog of (
742 # 136 "parser_cocci_menhir.mly"
743 (Data.clt)
744 # 718 "parser_cocci_menhir.ml"
745 )
746 | TAnd of (
747 # 139 "parser_cocci_menhir.mly"
748 (Data.clt)
749 # 723 "parser_cocci_menhir.ml"
750 )
751 | EOF
752
753 and _menhir_jeton = token
754
755
756 # 1 "parser_cocci_menhir.mly"
757
758
759 (* Not clear how to allow function declarations to specify a return type
760 and how to allow both to be specified as static, because they are in
761 different rules. The rules seem to have to be combined, which would allow
762 functions to be declared as local variables *)
763
764 (* Not clear how to let a function have a parameter of type void. At the
765 moment, void is allowed to be the type of a variable, which is wrong, and a
766 parameter needs both a type and an identifier *)
767 module Ast0 = Ast0_cocci
768 module Ast = Ast_cocci
769 module P = Parse_aux
770
771 (* ---------------------------------------------------------------------- *)
772 (* support for TMeta *)
773
774 let print_meta (r,n) = r^"."^n
775
776 let meta_metatable = Hashtbl.create(101)
777
778 let coerce_tmeta newty name builder matcher =
779 try
780 let x = Hashtbl.find meta_metatable name in
781 if not (matcher x)
782 then
783 failwith
784 (Printf.sprintf "Metavariable %s is used as %s"
785 (print_meta name) newty)
786 with Not_found ->
787 (if !Flag_parsing_cocci.show_SP
788 then
789 Common.pr2
790 (Printf.sprintf
791 "Metavariable %s is assumed to be %s metavariable"
792 (print_meta name) newty));
793 Hashtbl.add meta_metatable name builder
794
795 let tmeta_to_type (name,pure,clt) =
796 (coerce_tmeta "a type" name (TMetaType(name,pure,clt))
797 (function TMetaType(_,_,_) -> true | _ -> false));
798 Ast0.wrap(Ast0.MetaType(P.clt2mcode name clt,pure))
799
800 let tmeta_to_field (name,pure,clt) =
801 (coerce_tmeta "a field" name (TMetaField(name,pure,clt))
802 (function TMetaField(_,_,_) -> true | _ -> false));
803 P.meta_field (name,pure,clt)
804
805 let tmeta_to_exp (name,pure,clt) =
806 (coerce_tmeta "an expression" name
807 (TMetaExp(name,Ast0.NoConstraint,pure,None,clt))
808 (function TMetaExp(_,_,_,_,_) -> true | _ -> false));
809 Ast0.wrap
810 (Ast0.MetaExpr(P.clt2mcode name clt,Ast0.NoConstraint,None,Ast.ANY,pure))
811
812 let tmeta_to_param (name,pure,clt) =
813 (coerce_tmeta "a parameter" name (TMetaParam(name,pure,clt))
814 (function TMetaParam(_,_,_) -> true | _ -> false));
815 Ast0.wrap(Ast0.MetaParam(P.clt2mcode name clt,pure))
816
817 let tmeta_to_statement (name,pure,clt) =
818 (coerce_tmeta "a statement" name (TMetaType(name,pure,clt))
819 (function TMetaType(_,_,_) -> true | _ -> false));
820 P.meta_stm (name,pure,clt)
821
822 let tmeta_to_seed_id (name,pure,clt) =
823 (coerce_tmeta "an identifier" name
824 (TMetaId(name,Ast.IdNoConstraint,Ast.NoVal,pure,clt))
825 (function TMetaId(_,_,_,_,_) -> true | _ -> false));
826 Ast.SeedId name
827
828 let tmeta_to_ident (name,pure,clt) =
829 (coerce_tmeta "an identifier" name
830 (TMetaId(name,Ast.IdNoConstraint,Ast.NoVal,pure,clt))
831 (function TMetaId(_,_,_,_,_) -> true | _ -> false));
832 Ast0.wrap(Ast0.MetaId(P.clt2mcode name clt,Ast.IdNoConstraint,Ast.NoVal,pure))
833
834 # 808 "parser_cocci_menhir.ml"
835 let _eRR =
836 Error
837
838 module MenhirInterpreter = MenhirLib.TableInterpreter.Make (struct
839
840 exception Error = Error
841
842 type token = _menhir_jeton
843
844 let token2terminal : token -> int =
845 fun _tok ->
846 match _tok with
847 | EOF ->
848 193
849 | TAnd _ ->
850 192
851 | TAndLog _ ->
852 191
853 | TAny _ ->
854 190
855 | TArob ->
856 189
857 | TArobArob ->
858 188
859 | TAssign _ ->
860 187
861 | TBang _ ->
862 186
863 | TBang0 ->
864 185
865 | TBreak _ ->
866 184
867 | TCBrace _ ->
868 183
869 | TCCro _ ->
870 182
871 | TCEllipsis _ ->
872 181
873 | TCPar _ ->
874 180
875 | TCPar0 _ ->
876 179
877 | TCase _ ->
878 178
879 | TChar _ ->
880 177
881 | TComma _ ->
882 176
883 | TConstant ->
884 175
885 | TContext ->
886 174
887 | TContinue _ ->
888 173
889 | TCppConcatOp ->
890 172
891 | TDec _ ->
892 171
893 | TDeclaration ->
894 170
895 | TDeclarer ->
896 169
897 | TDeclarerId _ ->
898 168
899 | TDefault _ ->
900 167
901 | TDefine _ ->
902 166
903 | TDefineParam _ ->
904 165
905 | TDepends ->
906 164
907 | TDisable ->
908 163
909 | TDmOp _ ->
910 162
911 | TDo _ ->
912 161
913 | TDot _ ->
914 160
915 | TDotDot _ ->
916 159
917 | TEllipsis _ ->
918 158
919 | TElse _ ->
920 157
921 | TEq _ ->
922 156
923 | TEqEq _ ->
924 155
925 | TError ->
926 154
927 | TEver ->
928 153
929 | TExists ->
930 152
931 | TExpression ->
932 151
933 | TExtends ->
934 150
935 | TField ->
936 149
937 | TFinalize ->
938 148
939 | TFloat _ ->
940 147
941 | TFor _ ->
942 146
943 | TForall ->
944 145
945 | TFresh ->
946 144
947 | TFunDecl _ ->
948 143
949 | TFunction ->
950 142
951 | TGenerated ->
952 141
953 | TGoto _ ->
954 140
955 | TIdExpression ->
956 139
957 | TIdent _ ->
958 138
959 | TIdentifier ->
960 137
961 | TIf _ ->
962 136
963 | TInc _ ->
964 135
965 | TIncludeL _ ->
966 134
967 | TIncludeNL _ ->
968 133
969 | TInitialiser ->
970 132
971 | TInitialize ->
972 131
973 | TInt _ ->
974 130
975 | TInvalid ->
976 129
977 | TIso ->
978 128
979 | TIsoArgExpression ->
980 127
981 | TIsoDeclaration ->
982 126
983 | TIsoExpression ->
984 125
985 | TIsoStatement ->
986 124
987 | TIsoTestExpression ->
988 123
989 | TIsoToTestExpression ->
990 122
991 | TIsoTopLevel ->
992 121
993 | TIsoType ->
994 120
995 | TIterator ->
996 119
997 | TIteratorId _ ->
998 118
999 | TLineEnd _ ->
1000 117
1001 | TLocal ->
1002 116
1003 | TLogOp _ ->
1004 115
1005 | TMPtVirg ->
1006 114
1007 | TMeta _ ->
1008 113
1009 | TMetaConst _ ->
1010 112
1011 | TMetaDecl _ ->
1012 111
1013 | TMetaDeclarer _ ->
1014 110
1015 | TMetaErr _ ->
1016 109
1017 | TMetaExp _ ->
1018 108
1019 | TMetaExpList _ ->
1020 107
1021 | TMetaField _ ->
1022 106
1023 | TMetaFieldList _ ->
1024 105
1025 | TMetaFunc _ ->
1026 104
1027 | TMetaId _ ->
1028 103
1029 | TMetaIdExp _ ->
1030 102
1031 | TMetaInit _ ->
1032 101
1033 | TMetaInitList _ ->
1034 100
1035 | TMetaIterator _ ->
1036 99
1037 | TMetaLocalFunc _ ->
1038 98
1039 | TMetaLocalIdExp _ ->
1040 97
1041 | TMetaParam _ ->
1042 96
1043 | TMetaParamList _ ->
1044 95
1045 | TMetaPos _ ->
1046 94
1047 | TMetaStm _ ->
1048 93
1049 | TMetaStmList _ ->
1050 92
1051 | TMetaType _ ->
1052 91
1053 | TMetavariable ->
1054 90
1055 | TMid0 _ ->
1056 89
1057 | TMinus _ ->
1058 88
1059 | TMinusFile _ ->
1060 87
1061 | TMul _ ->
1062 86
1063 | TName ->
1064 85
1065 | TNever ->
1066 84
1067 | TNotEq _ ->
1068 83
1069 | TNothing ->
1070 82
1071 | TOBrace _ ->
1072 81
1073 | TOCro _ ->
1074 80
1075 | TOEllipsis _ ->
1076 79
1077 | TOInit _ ->
1078 78
1079 | TOPar _ ->
1080 77
1081 | TOPar0 _ ->
1082 76
1083 | TOn ->
1084 75
1085 | TOr _ ->
1086 74
1087 | TOrLog _ ->
1088 73
1089 | TPArob _ ->
1090 72
1091 | TPCEllipsis _ ->
1092 71
1093 | TPOEllipsis _ ->
1094 70
1095 | TParameter ->
1096 69
1097 | TPathIsoFile _ ->
1098 68
1099 | TPlus _ ->
1100 67
1101 | TPlus0 ->
1102 66
1103 | TPlusFile _ ->
1104 65
1105 | TPosAny ->
1106 64
1107 | TPosition ->
1108 63
1109 | TPragma _ ->
1110 62
1111 | TPtVirg _ ->
1112 61
1113 | TPtrOp _ ->
1114 60
1115 | TPure ->
1116 59
1117 | TReturn _ ->
1118 58
1119 | TRightIso ->
1120 57
1121 | TRuleName _ ->
1122 56
1123 | TScript ->
1124 55
1125 | TScriptData _ ->
1126 54
1127 | TShLOp _ ->
1128 53
1129 | TShROp _ ->
1130 52
1131 | TSizeof _ ->
1132 51
1133 | TStatement ->
1134 50
1135 | TStrict _ ->
1136 49
1137 | TString _ ->
1138 48
1139 | TSub _ ->
1140 47
1141 | TSwitch _ ->
1142 46
1143 | TSymId _ ->
1144 45
1145 | TSymbol ->
1146 44
1147 | TTilde _ ->
1148 43
1149 | TTildeEq _ ->
1150 42
1151 | TTildeExclEq _ ->
1152 41
1153 | TType ->
1154 40
1155 | TTypeId _ ->
1156 39
1157 | TTypedef ->
1158 38
1159 | TUndef _ ->
1160 37
1161 | TUnderscore ->
1162 36
1163 | TUsing ->
1164 35
1165 | TVirtual ->
1166 34
1167 | TWhen _ ->
1168 33
1169 | TWhenFalse _ ->
1170 32
1171 | TWhenTrue _ ->
1172 31
1173 | TWhile _ ->
1174 30
1175 | TWhy _ ->
1176 29
1177 | TWhy0 ->
1178 28
1179 | TWords ->
1180 27
1181 | TXor _ ->
1182 26
1183 | Tattr _ ->
1184 25
1185 | Tauto _ ->
1186 24
1187 | Tchar _ ->
1188 23
1189 | Tconst _ ->
1190 22
1191 | Tdouble _ ->
1192 21
1193 | Tenum _ ->
1194 20
1195 | Textern _ ->
1196 19
1197 | Tfloat _ ->
1198 18
1199 | Tinline _ ->
1200 17
1201 | Tint _ ->
1202 16
1203 | Tlist ->
1204 15
1205 | Tlong _ ->
1206 14
1207 | Tptrdiff_t _ ->
1208 13
1209 | Tregister _ ->
1210 12
1211 | Tshort _ ->
1212 11
1213 | Tsigned _ ->
1214 10
1215 | Tsize_t _ ->
1216 9
1217 | Tssize_t _ ->
1218 8
1219 | Tstatic _ ->
1220 7
1221 | Tstruct _ ->
1222 6
1223 | Ttypedef _ ->
1224 5
1225 | Tunion _ ->
1226 4
1227 | Tunsigned _ ->
1228 3
1229 | Tvoid _ ->
1230 2
1231 | Tvolatile _ ->
1232 1
1233
1234 let error_terminal =
1235 0
1236
1237 let token2value : token -> Obj.t =
1238 fun _tok ->
1239 match _tok with
1240 | EOF ->
1241 Obj.repr ()
1242 | TAnd _v ->
1243 Obj.repr _v
1244 | TAndLog _v ->
1245 Obj.repr _v
1246 | TAny _v ->
1247 Obj.repr _v
1248 | TArob ->
1249 Obj.repr ()
1250 | TArobArob ->
1251 Obj.repr ()
1252 | TAssign _v ->
1253 Obj.repr _v
1254 | TBang _v ->
1255 Obj.repr _v
1256 | TBang0 ->
1257 Obj.repr ()
1258 | TBreak _v ->
1259 Obj.repr _v
1260 | TCBrace _v ->
1261 Obj.repr _v
1262 | TCCro _v ->
1263 Obj.repr _v
1264 | TCEllipsis _v ->
1265 Obj.repr _v
1266 | TCPar _v ->
1267 Obj.repr _v
1268 | TCPar0 _v ->
1269 Obj.repr _v
1270 | TCase _v ->
1271 Obj.repr _v
1272 | TChar _v ->
1273 Obj.repr _v
1274 | TComma _v ->
1275 Obj.repr _v
1276 | TConstant ->
1277 Obj.repr ()
1278 | TContext ->
1279 Obj.repr ()
1280 | TContinue _v ->
1281 Obj.repr _v
1282 | TCppConcatOp ->
1283 Obj.repr ()
1284 | TDec _v ->
1285 Obj.repr _v
1286 | TDeclaration ->
1287 Obj.repr ()
1288 | TDeclarer ->
1289 Obj.repr ()
1290 | TDeclarerId _v ->
1291 Obj.repr _v
1292 | TDefault _v ->
1293 Obj.repr _v
1294 | TDefine _v ->
1295 Obj.repr _v
1296 | TDefineParam _v ->
1297 Obj.repr _v
1298 | TDepends ->
1299 Obj.repr ()
1300 | TDisable ->
1301 Obj.repr ()
1302 | TDmOp _v ->
1303 Obj.repr _v
1304 | TDo _v ->
1305 Obj.repr _v
1306 | TDot _v ->
1307 Obj.repr _v
1308 | TDotDot _v ->
1309 Obj.repr _v
1310 | TEllipsis _v ->
1311 Obj.repr _v
1312 | TElse _v ->
1313 Obj.repr _v
1314 | TEq _v ->
1315 Obj.repr _v
1316 | TEqEq _v ->
1317 Obj.repr _v
1318 | TError ->
1319 Obj.repr ()
1320 | TEver ->
1321 Obj.repr ()
1322 | TExists ->
1323 Obj.repr ()
1324 | TExpression ->
1325 Obj.repr ()
1326 | TExtends ->
1327 Obj.repr ()
1328 | TField ->
1329 Obj.repr ()
1330 | TFinalize ->
1331 Obj.repr ()
1332 | TFloat _v ->
1333 Obj.repr _v
1334 | TFor _v ->
1335 Obj.repr _v
1336 | TForall ->
1337 Obj.repr ()
1338 | TFresh ->
1339 Obj.repr ()
1340 | TFunDecl _v ->
1341 Obj.repr _v
1342 | TFunction ->
1343 Obj.repr ()
1344 | TGenerated ->
1345 Obj.repr ()
1346 | TGoto _v ->
1347 Obj.repr _v
1348 | TIdExpression ->
1349 Obj.repr ()
1350 | TIdent _v ->
1351 Obj.repr _v
1352 | TIdentifier ->
1353 Obj.repr ()
1354 | TIf _v ->
1355 Obj.repr _v
1356 | TInc _v ->
1357 Obj.repr _v
1358 | TIncludeL _v ->
1359 Obj.repr _v
1360 | TIncludeNL _v ->
1361 Obj.repr _v
1362 | TInitialiser ->
1363 Obj.repr ()
1364 | TInitialize ->
1365 Obj.repr ()
1366 | TInt _v ->
1367 Obj.repr _v
1368 | TInvalid ->
1369 Obj.repr ()
1370 | TIso ->
1371 Obj.repr ()
1372 | TIsoArgExpression ->
1373 Obj.repr ()
1374 | TIsoDeclaration ->
1375 Obj.repr ()
1376 | TIsoExpression ->
1377 Obj.repr ()
1378 | TIsoStatement ->
1379 Obj.repr ()
1380 | TIsoTestExpression ->
1381 Obj.repr ()
1382 | TIsoToTestExpression ->
1383 Obj.repr ()
1384 | TIsoTopLevel ->
1385 Obj.repr ()
1386 | TIsoType ->
1387 Obj.repr ()
1388 | TIterator ->
1389 Obj.repr ()
1390 | TIteratorId _v ->
1391 Obj.repr _v
1392 | TLineEnd _v ->
1393 Obj.repr _v
1394 | TLocal ->
1395 Obj.repr ()
1396 | TLogOp _v ->
1397 Obj.repr _v
1398 | TMPtVirg ->
1399 Obj.repr ()
1400 | TMeta _v ->
1401 Obj.repr _v
1402 | TMetaConst _v ->
1403 Obj.repr _v
1404 | TMetaDecl _v ->
1405 Obj.repr _v
1406 | TMetaDeclarer _v ->
1407 Obj.repr _v
1408 | TMetaErr _v ->
1409 Obj.repr _v
1410 | TMetaExp _v ->
1411 Obj.repr _v
1412 | TMetaExpList _v ->
1413 Obj.repr _v
1414 | TMetaField _v ->
1415 Obj.repr _v
1416 | TMetaFieldList _v ->
1417 Obj.repr _v
1418 | TMetaFunc _v ->
1419 Obj.repr _v
1420 | TMetaId _v ->
1421 Obj.repr _v
1422 | TMetaIdExp _v ->
1423 Obj.repr _v
1424 | TMetaInit _v ->
1425 Obj.repr _v
1426 | TMetaInitList _v ->
1427 Obj.repr _v
1428 | TMetaIterator _v ->
1429 Obj.repr _v
1430 | TMetaLocalFunc _v ->
1431 Obj.repr _v
1432 | TMetaLocalIdExp _v ->
1433 Obj.repr _v
1434 | TMetaParam _v ->
1435 Obj.repr _v
1436 | TMetaParamList _v ->
1437 Obj.repr _v
1438 | TMetaPos _v ->
1439 Obj.repr _v
1440 | TMetaStm _v ->
1441 Obj.repr _v
1442 | TMetaStmList _v ->
1443 Obj.repr _v
1444 | TMetaType _v ->
1445 Obj.repr _v
1446 | TMetavariable ->
1447 Obj.repr ()
1448 | TMid0 _v ->
1449 Obj.repr _v
1450 | TMinus _v ->
1451 Obj.repr _v
1452 | TMinusFile _v ->
1453 Obj.repr _v
1454 | TMul _v ->
1455 Obj.repr _v
1456 | TName ->
1457 Obj.repr ()
1458 | TNever ->
1459 Obj.repr ()
1460 | TNotEq _v ->
1461 Obj.repr _v
1462 | TNothing ->
1463 Obj.repr ()
1464 | TOBrace _v ->
1465 Obj.repr _v
1466 | TOCro _v ->
1467 Obj.repr _v
1468 | TOEllipsis _v ->
1469 Obj.repr _v
1470 | TOInit _v ->
1471 Obj.repr _v
1472 | TOPar _v ->
1473 Obj.repr _v
1474 | TOPar0 _v ->
1475 Obj.repr _v
1476 | TOn ->
1477 Obj.repr ()
1478 | TOr _v ->
1479 Obj.repr _v
1480 | TOrLog _v ->
1481 Obj.repr _v
1482 | TPArob _v ->
1483 Obj.repr _v
1484 | TPCEllipsis _v ->
1485 Obj.repr _v
1486 | TPOEllipsis _v ->
1487 Obj.repr _v
1488 | TParameter ->
1489 Obj.repr ()
1490 | TPathIsoFile _v ->
1491 Obj.repr _v
1492 | TPlus _v ->
1493 Obj.repr _v
1494 | TPlus0 ->
1495 Obj.repr ()
1496 | TPlusFile _v ->
1497 Obj.repr _v
1498 | TPosAny ->
1499 Obj.repr ()
1500 | TPosition ->
1501 Obj.repr ()
1502 | TPragma _v ->
1503 Obj.repr _v
1504 | TPtVirg _v ->
1505 Obj.repr _v
1506 | TPtrOp _v ->
1507 Obj.repr _v
1508 | TPure ->
1509 Obj.repr ()
1510 | TReturn _v ->
1511 Obj.repr _v
1512 | TRightIso ->
1513 Obj.repr ()
1514 | TRuleName _v ->
1515 Obj.repr _v
1516 | TScript ->
1517 Obj.repr ()
1518 | TScriptData _v ->
1519 Obj.repr _v
1520 | TShLOp _v ->
1521 Obj.repr _v
1522 | TShROp _v ->
1523 Obj.repr _v
1524 | TSizeof _v ->
1525 Obj.repr _v
1526 | TStatement ->
1527 Obj.repr ()
1528 | TStrict _v ->
1529 Obj.repr _v
1530 | TString _v ->
1531 Obj.repr _v
1532 | TSub _v ->
1533 Obj.repr _v
1534 | TSwitch _v ->
1535 Obj.repr _v
1536 | TSymId _v ->
1537 Obj.repr _v
1538 | TSymbol ->
1539 Obj.repr ()
1540 | TTilde _v ->
1541 Obj.repr _v
1542 | TTildeEq _v ->
1543 Obj.repr _v
1544 | TTildeExclEq _v ->
1545 Obj.repr _v
1546 | TType ->
1547 Obj.repr ()
1548 | TTypeId _v ->
1549 Obj.repr _v
1550 | TTypedef ->
1551 Obj.repr ()
1552 | TUndef _v ->
1553 Obj.repr _v
1554 | TUnderscore ->
1555 Obj.repr ()
1556 | TUsing ->
1557 Obj.repr ()
1558 | TVirtual ->
1559 Obj.repr ()
1560 | TWhen _v ->
1561 Obj.repr _v
1562 | TWhenFalse _v ->
1563 Obj.repr _v
1564 | TWhenTrue _v ->
1565 Obj.repr _v
1566 | TWhile _v ->
1567 Obj.repr _v
1568 | TWhy _v ->
1569 Obj.repr _v
1570 | TWhy0 ->
1571 Obj.repr ()
1572 | TWords ->
1573 Obj.repr ()
1574 | TXor _v ->
1575 Obj.repr _v
1576 | Tattr _v ->
1577 Obj.repr _v
1578 | Tauto _v ->
1579 Obj.repr _v
1580 | Tchar _v ->
1581 Obj.repr _v
1582 | Tconst _v ->
1583 Obj.repr _v
1584 | Tdouble _v ->
1585 Obj.repr _v
1586 | Tenum _v ->
1587 Obj.repr _v
1588 | Textern _v ->
1589 Obj.repr _v
1590 | Tfloat _v ->
1591 Obj.repr _v
1592 | Tinline _v ->
1593 Obj.repr _v
1594 | Tint _v ->
1595 Obj.repr _v
1596 | Tlist ->
1597 Obj.repr ()
1598 | Tlong _v ->
1599 Obj.repr _v
1600 | Tptrdiff_t _v ->
1601 Obj.repr _v
1602 | Tregister _v ->
1603 Obj.repr _v
1604 | Tshort _v ->
1605 Obj.repr _v
1606 | Tsigned _v ->
1607 Obj.repr _v
1608 | Tsize_t _v ->
1609 Obj.repr _v
1610 | Tssize_t _v ->
1611 Obj.repr _v
1612 | Tstatic _v ->
1613 Obj.repr _v
1614 | Tstruct _v ->
1615 Obj.repr _v
1616 | Ttypedef _v ->
1617 Obj.repr _v
1618 | Tunion _v ->
1619 Obj.repr _v
1620 | Tunsigned _v ->
1621 Obj.repr _v
1622 | Tvoid _v ->
1623 Obj.repr _v
1624 | Tvolatile _v ->
1625 Obj.repr _v
1626
1627 let default_reduction =
1628 (16, "\000\000\000\000\003\003\000\135\000\000\000\000\003W\001L\000\000\001J\001K\001I\000\000\001N\001M\000\001\000\000\001\134\000\000\000\000\000\151\002\029\000\000\000\000\003l\000\000\000\000\003s\003q\003m\003j\000\000\000\000\003o\003n\000\018\003\159\003\158\002\"\002!\000\000\000\017\002#\000\000\002\030\002 \000\000\003\243\000\000\000\000\001\231\001\230\001\229\001\228\000\000\000\244\000\243\000\000\000\000\002\001\000\000\001\150\001\233\000\000\000\000\000\000\000\000\000\000\000\252\000\000\000\000\001\021\001E\001\020\001\019\001\018\001\017\001D\001C\001\016\001\015\002?\000\000\000\000\002>\000\000\000\000\000\000\000\163\000\000\000\000\000\162\002B\001\r\000\000\002%\000\000\000\000\000\000\002&\002\031\000\150\002+\000\000\000\000\000\000\003'\000\000\003\151\003\150\003\152\000\000\003\187\000\000\003\144\000\000\000\000\000\000\000\000\001\000\000\019\000\000\000\000\000\000\003\234\002\202\000\000\000\000\003\232\000\000\002\230\000\000\000\000\000\000\000\000\000\000\000\000\003\231\003\233\002\208\001?\002\207\001>\002\206\002\205\002\204\002\021\002\200\000\000\000\000\002\201\000\245\000\000\000\000\000\000\002\203\000\000\000\000\002\199\003\230\000\000\000\000\003\199\002\162\000\000\000\000\002\165\000\000\000\000\000\000\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\246\001=\002\198\002\211\000q\000\025\000s\000\000\000\000\000U\000\000\000\000\000\000\000\000\000\000\000\000\000V\000\000\000W\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000h\002\195\000t\000\000\000\000\000\145\000\248\002\128\002\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\027\000\000\000\000\000\000\000\000\000\000\000r\000j\000\000\000i\000\000\002\163\002\166\000\000\002\164\002\167\003\198\000\020\000\000\002\238\000\000\000\183\000\000\000\000\002\002\000\000\001\152\001\234\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\001\255\000\000\001\146\000\180\000\000\000\179\000\000\001\148\001\232\000\000\000\000\002\237\000\000\000\000\000\000\002\216\000\000\000\000\000\000\002\209\000\000\000\000\000\000\000\000\002\236\002\235\002\234\002\233\002\232\002\228\000\000\003\210\002\229\000\000\003\211\002\231\000\000\003\213\000\000\002\227\000\000\000}\002\178\000\000\000\000\002\181\000\000\000\000\000\015\000\000\000\000\000\000\000\000\000\000\000m\000\000\000l\000\155\002\239\002\226\000\014\000\016\000k\0007\000\185\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\147\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0009\000\000\000\000\000\000\000\000\000\000\000\000\0020\0024\000\000\000\000\000\154\0021\001\004\001\002\000\000\002\184\000\000\000\000\002\179\002\182\000\000\002\180\002\183\003\212\000\000\000\000\002\197\001\026\000\000\002\023\000\000\000\000\000\000\000\000\000\000\000\250\002\028\000\000\000\000\001\166\002\196\000\000\000\000\002\224\000\000\000\000\002\223\000\000\000\000\000\000\000\000\000\000\002\022\000\000\000\000\000\000\000\000\000\240\000\239\000\000\000\000\002\222\001^\001]\002\221\000\000\002\220\002\219\002\218\001`\002\214\000\000\003\203\002\215\000\000\000\000\000\000\000\000\000\000\000\238\000\000\003\204\002\217\000\000\003\206\000\000\002\213\000\000\000\000\000{\002\170\000\000\000\000\002\173\000\000\000\000\002\176\000\000\000\000\002\171\002\174\000\000\002\172\002\175\002\225\002\212\003\205\000\000\001\b\001Y\000\000\000\000\000\000\000\000\001[\000\000\001\132\000(\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000*\000\000\000\000\000\000\000\000\001\\\000\000\001V\000\000\000\000\002E\000\000\000\000\000\000\000\167\000\000\000\000\000\166\002I\001_\001W\000\000\000\254\001U\002F\000\000\001Z\000\000\002\177\000|\000\000\002\169\003\207\000\000\002\185\000~\000\000\002\168\003\226\003\227\003\225\003\224\003\197\000\000\000\000\003\196\000\000\002\019\000\000\002\210\000\000\000\000\000z\000\000\000\000\000\000\003\214\000\000\002\020\000\000\000\000\000\000\003\228\000\000\000\000\000\000\003\200\000\000\000g\000\184\000\000\001~\000\000\003\156\003&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002e\000\189\000\190\000\000\000\000\000\000\000\000\000\000\002S\002d\002\t\000\000\000\000\000\000\000\000\000\000\001\012\000\194\000\000\002\n\000\000\000\000\000\000\000\000\000\188\000\000\000\186\000\175\000\000\000\000\000\174\002W\002T\000\000\000\000\003\155\000\000\003\154\000\000\000\000\000\000\003\157\003\145\003\146\000\000\002(\000\000\003\148\000\000\000\000\000\177\003\149\000\000\000\000\000\000\002)\003\186\000\000\000\000\002\b\000\000\001\164\001\241\000\000\003\153\000\000\000\000\002*\000\000\000\000\001d\000\000\001c\000\000\001r\000\000\001\136\000\000\000\000\000\000\001\184\000\000\003\190\000\000\000\000\002\005\001\185\000\000\001\158\001\238\003\191\000\000\003\194\003\193\000\000\000\000\003g\003\192\000\143\000\000\000\224\000\000\000\000\000\000\001|\003\189\000\000\003\188\003\140\003\142\003\143\003\141\000\000\000\000\000\000\000\000\000\000\001Q\000\000\000\000\000\000\000\000\000\000\000\192\000\204\000\191\000\000\000\000\000\132\000\000\000\000\000\000\000\216\000\000\003Q\000\000\000\000\000\212\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\219\000\000\000\000\000\223\001$\001#\000\000\000\000\000\000\000\000\001B\000\000\000\000\000\000\000\000\000\209\000\000\000\206\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\213\000\000\000\000\000\000\000\000\000\214\000\000\000\210\000\000\000\000\000\000\000\000\002\244\000\000\000\000\000\000\000\000\003\221\000\000\003\131\000\000\003\130\000\000\000\000\000\000\000\000\003\241\000\000\000\000\000\000\003\242\000\000\000\022\000\000\000\000\000\000\000\000\002\251\000\000\000\000\000\000\002\250\002\249\002\248\002\247\002\246\002\242\000\000\003\217\002\243\000\000\003\218\002\245\000\000\003\220\000\000\002\241\000\000\000\127\002\186\000\000\000\000\002\189\000\000\000\000\002\192\000\000\000\000\002\187\002\190\000\000\002\188\002\191\002\253\002\240\003\219\000\000\000\000\000p\000\000\000o\000\000\002\252\000\000\001\235\000n\000F\001\025\000v\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000G\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\000\000\000\000\000\000\000\000\000\000\000\000\002\193\000\128\000\000\003\237\000\000\001\168\000\000\000\000\000\000\000\195\003x\001z\000\000\001y\001P\001O\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\135\000\000\000\000\002g\000\000\000\000\000\000\002o\000\000\000\000\002s\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002v\000\000\000\000\002z\000\000\002i\000\000\000\000\002l\000\000\000\000\000\000\002p\000\000\000\000\002t\000\000\000\000\002m\000\000\000\000\002q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\159\000\247\000\000\000\000\0027\000\000\000\000\000\158\002;\0028\001\006\000\225\000\000\000\227\000\226\000\000\003\133\000\000\003\132\003t\000\000\000\000\000\000\000\000\000\000\003\127\000\000\003y\000\000\003\134\000\000\000\000\000\000\000\000\003\128\003v\002\130\000\000\000\199\001R\000\000\003\137\000\000\001T\000\000\000\000\003\165\000\000\003\172\000\201\000\000\000\207\000\000\003\166\000\200\000\000\003\167\000\000\003\174\000\000\000\000\000\000\000\000\000\220\000\000\000\000\000\221\000\000\000\203\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\218\000\000\000\000\000\222\000\000\000\000\000\000\000\000\001A\000\000\000\000\000\000\000\208\000\000\000\205\000\000\000\000\000\000\000\000\000\000\000\215\000\000\000\211\000\197\000\196\000\000\003\175\003\176\000\000\003\177\000\000\003\178\000\000\001S\003|\000\000\000\000\000\000\000\000\000\000\003}\002j\000\000\000\000\000\000\000\000\002w\000\000\000\000\002x\000\000\002f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002u\000\000\000\000\002y\000\000\002h\000\000\000\000\002k\000\000\000\000\000\000\002n\000\000\000\000\002r\000\000\000\000\002\007\000\000\001\162\001\240\000\000\003u\000\000\000\000\000\000\003{\000\000\000\000\000\000\0016\000\000\0010\000\000\0011\000\000\001;\001/\001:\000\000\003\136\001<\000\000\000\202\000\000\000\000\000\000\000\000\0018\0013\002\003\000\000\0014\000\000\0015\000\000\001\154\001\236\000\000\000\000\000\000\002\015\000\000\002\r\000\000\000\000\002\017\002\011\000\000\002\018\002\012\000\000\003\138\002\024\000\000\000\198\000\000\000\000\002\004\000\000\001\156\001\237\000\000\003\238\000\000\003\235\000\000\003\236\000\023\000\024\000\000\000\000\0033\000\000\0032\000\000\000\000\0035\000\000\0034\000\000\000\000\002\006\000\000\0031\0030\000\000\001\160\001\239\000\000\0036\000\000\000\000\003\239\000\021\000\130\000\000\003\240\000\000\000\000\003M\000\000\000\000\003\139\000w\000\000\000\000\000\000\000x\000\000\003\129\000\000\001\128\000\000\001\130\003~\000\000\000\000\001l\000\000\001k\000\000\001s\000\000\001\144\000\000\000\000\000\000\001h\000\000\001g\000\000\001p\000\000\001\140\000\000\000\000\000\000\001o\000\000\000\000\001w\000\000\000\000\001j\001x\000\000\001i\000\000\001q\000\000\001\142\000\000\000\000\000\000\001m\000\000\000\000\000\000\001f\000\000\001e\000\000\001t\000\000\001\138\000\000\000\000\000\000\001n\000\002\000\000\000d\000\000\000\000\001\227\000e\000\000\000\000\003\r\003\017\003\021\003\t\003\026\003\006\000\000\000\000\003\018\003\025\003\n\003\024\003\b\003\023\003\012\003\004\003\011\003\020\003\007\003\014\003\005\003\016\003\022\003\019\003\015\001\190\001\189\000\141\000\000\000\000\003c\000\000\000\000\000\000\000\000\003H\003E\000\000\000\000\003I\003F\003G\003$\000\000\000\000\003i\003\028\003\027\003\029\000\000\001\207\000c\001u\000\003\000\000\000\000\003\000\000\000\002~\000\000\000\142\000\000\000\000\003e\000\000\000\000\000\000\000\134\000\000\000\000\003U\000\000\002a\002`\001\181\003%\000\000\001\222\000\000\003\001\000\000\000\000\000\136\000\000\000\000\003Y\000\000\001\204\000\000\000\000\001\196\000\000\000\000\000\000\001\203\000\000\001\199\000\000\000\000\000\000\000\000\000\000\001\171\001\170\001\169\000\000\000\000\000\000\001\223\000\000\001\194\000\000\001\193\000\000\000\131\000\000\000\000\003O\000\000\000\000\001\188\000\000\000\000\001\192\000\000\000\000\000\139\000\000\000\000\003_\000\000\000\000\003.\000\000\003-\000\000\000\000\000\000\002_\002^\003+\002\136\003 \003,\000\000\001\210\000\000\000\000\000\000\001\206\000\000\001\212\000\000\000\000\000\000\000\000\000\000\000\000\001\226\000\000\001\198\000\000\001\197\000\000\000\000\000\000\003\"\000\140\000\000\000\000\003a\000\000\003!\000\000\001\208\000\000\000\000\001\209\000\000\000\000\000\000\000\000\000\000\000\000\001\225\000\000\001\202\000\000\001\201\000\000\000\000\001\030\000\000\001\029\000\000\000\000\000\000\000\000\000\000\001\224\000\000\001\195\000\000\001\028\000\000\002-\000\137\000\000\000\000\003[\000\000\000\000\000\000\000\000\003\161\003\160\000\000\000\000\001H\001G\000\133\001F\000\000\000\000\003S\000\000\002Y\002X\002[\003\030\002\132\002Z\001\027\000\000\000\138\000\000\000\000\003]\000\000\000\000\000\000\000\000\002]\002\\\003*\003(\002\134\003\031\003)\000\000\001\217\000\000\001\220\000\000\000\000\001\213\000\000\000\000\000\000\001\205\000\000\001\211\000\000\000\000\001\200\000\000\000\000\000\000\000\000\000\000\000\000\001\187\000\000\000\000\001\219\000\000\001\218\000\000\000\000\000\000\000\000\001\216\000\000\000\000\001\215\000\000\001\214\000\000\000\000\001\221\000\000\000\000\001v\000\004\000\000\001\191\000\005\000\000\000\000\001!\000\006\000\000\001\245\001\246\001\244\000\000\001\243\003\162\001\177\000\000\000\007\000\000\001\248\001\249\001\247\000\000\000\000\000\000\000\000\001&\000\000\000\000\000\000\000\000\001+\001-\001,\001'\001)\001(\000\000\000\000\000\000\000\000\000\000\003\168\003\181\000\000\003\169\000\000\003\170\000\000\000\000\003\163\000\000\000\000\000\000\000\000\003\180\000\000\000\000\003\179\001\253\001\252\000\000\000\000\001\179\001\242\001\250\000\000\000\000\000\000\000\000\000\000\002c\000\000\000\000\000\000\000\000\000\000\002L\002b\000\000\000\000\000\000\000\171\000\000\000\000\000\170\002P\002M\001\n\000\193\000\000\000\000\000\000\000\000\001@\001\"\000\000\003\184\000\000\003\185\000\000\000\000\002\027\002\025\000\000\002\026\000\b\000\000\000\t\000\000\002\151\002\152\002\150\000\000\002\149\000\000\000\n\000\000\002\154\002\155\002\153\000\000\002\157\000\000\000\000\000\000\002\143\000\000\000\000\002\145\000\000\002\139\000\000\002\141\000\000\002\146\000\000\002\147\000\000\002\140\002\138\002\158\001\183\002\148\000\000\002\160\000\000\002\159\000\000\002\161\000\000\003/\000\011\000\000\000\000\000\000\000\000\000\000\000\000\000\228\000\000\000\000\000\232\000\000\000\231\000\000\000\229\000\000\000\000\000\000\000\000\000\000\000\233\000\230\000\000\000\235\000\000\000\000\000\000\003;\000\000\003:\000\000\000\000\000\000\000\000\003<\000\000\000\000\001 \000\000\000\000\000\000\000\000\000\000\003K\000\129\000\000\000\000\000\242\000\000\001\023\001\022\000\000\001b\000\000\0039\001\175\001\173\000\000\000\000\000\000\000\000\003=\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0038\000\000\000\000\000\000\000\000\000\000\000\000\0037\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003D\000\000\000\000\003C\000\000\003@\000\000\000\000\000\000\000\000\000\000\003A\000\000\000\000\000\000\003B\000\r\000\000\003>\000\000\003?")
1629
1630 let error =
1631 (194, "\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000 \000\002\000A\128\000\000\129\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\240\000\000\000\000\000\000\000\001\235\218\188\000\004\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017\173\028\000\000@\012@\000\192\005\002\024\004@\b\002\016\000\000\000\t\144\196\004'C@\n0\131T\0162\025@\134\0014\002!\222\004\128\001\014d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000B\2444\000\163\b5A\003!\148\b`\019@\"\029\224H\000\016\230C\016\016\157\r\000(\194\rP@\200e\002\024\004\208\b\135x\018\000\0049\144\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\026\209\192\000\004\000\196\000\012\000P!\128D\000\128!\000\000\000\000\153\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004/S@\n0\131T\0162\025@\134\0014\002!\222\004\128\001\014d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\004\000\000\016\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\b \000\001\000@\000\000 \000\002\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000@\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000@\000\000\000\128\000\000\016\004\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \128\000\004\001\000\000\000\128\000\b\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\129\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\016\004\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\002\000\000 @\000\000\000\000\000\000@\000\000\000\000\000\0000\140\000\002\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\016\000\000\000\000\000\000\016\000\000\000 \128\000\004\001\000\000\000\128\000\b\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 @\000\000\000\000\000\000@\000\000\000\130\000\000\016\004\000\000\002\000\000\000\000\000\016\000\000\000\000\000\000\016\000\000\000 \128\000\004\001\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 @\000\000\000\000\000\000@\000\000\000\130\000\000\016\004\000\000\002\000\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\tP\208\002\140 \213\004\012\198P!\128M\000\136w\129 \000C\153\012@\000\000\000\000\001\000\000\000\002\b\000\000@\016\000\000\b\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\004\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\001\tP\208\002\140 \213\004\012\198P!\128M\000\136w\129 \000C\153\012^\189\171\192\000A\000 \000\002\b\004\000\024\016\000\000\b\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\004\016\002\000\000 \000@\001\129\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\016\000\000\000!\000\000\004\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000A\000 \000\002\b\004\000\024\016\000\000\b\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\001\004\016\002\000\000 \128@\001\129\000\000\000\128\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000A\000 \000\002\000\004\000\024\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000@\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\b\000\000\000\000\000\000\000\000\000\128\000\b\128\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\b\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\000\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\158\189\171\192\000E$ \004\131@\164\024\2270\000\bH\004\000\128\004\016\bg\175j\240\000\017I\b\001 \208)\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\000\000A\000\134\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\158\189\171\192\000E$ \004\131@\164\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\001\000\000\000\000\000\000\000@\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\000\012L\019e\146\192\000\000\020\000\129\000\000\027\160\016\159\029\192\000\000\000\000\001\000\000\000\002\000\000\000@\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\004RB\000H4\138A\142s\000\000\132\128@\b\000A \134z\246\175\000\001\020\144\128\018\r\002\144c\140\192\000! \016\002\000\016@!\128\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\144\000\00010M\150K\000\000\000P\002\004\000\000n\128B|w\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\006\200\000'\135p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000l\128\002xw\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\000\012D\019a\018\192\000\000\020\000\128\000\000\019 \000\158\r\192\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\003\000\016@!\128\000\000\000\000\000\000\017\000\000\000\016\000\000\001\000 \000\000\000\192\000&\131\016\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0001\016M\132K\000\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\b\000\000\001\000@\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000z\246\175\000\001\000\000\128\000\b\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\175j\208\000\016\000\b\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000J\004\000\000\000\002\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\018\129\000\000\000\000\128\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000B\0200\000\001\000\017\000\003\000\144\b`\017\000 \b@\000\000\000&C\020\016\133,\000\000@\004@\000\192$\002\024\004@\b\002\016\000\000\000\t\144\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\004\000D\000\012\002@!\128D\000\128!\000\000\000\000\153\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004!C\000\000\016\001\016\0000\t\000\134\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\020\144\128\018\r\002\144c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\020\144\000\018\rB\128c\140\192\000! \016\000\000\016@!\128\000\000\000\000\005$\000\004\131x\160\027\2270\000\024H\004\002\160\004\016H`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134z\246\175\000\001\020\144\128\018\r\002\144c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000 \000\000\012\000\016`R\128\000\000\016\000\000\000\000\016 \000\129\001\128\000\000\000\000\005$\000\004\131x\160\027\2270\000\024H\004\002\160\004\016H`\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000\000\001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000@\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\000\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002@\000\000\192\129\022I(\000\000\001\000\000\016\000\001\170\001\b\193\024\000\000\000\000\000\016\000\000\000 \000\000\004\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000E$ \004\131H\164\024\2310\000\bH\004\000\128\004\018\bg\175j\240\000\017I\b\001 \210)\0069\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\136\000\030\189\171\192\000E$ \004\131H\164\024\2310\000\bH\004\000\000\004\018\bg\175j\240\000\017I\b\001 \210)\0069\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0000\000E\128J\000\000\000@\000\000\000\000h\128\0020F\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\000\000\003\000\004X\004\160\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\003\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\000\004X\004\160\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\000\004X\004\160\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\000\004X\004\160\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\000\004X\004\160\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\144\000\0000\000E\128J\000\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\t\000\000\003\000\004X\004\160\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\128\001\235\218\188\000\004RB\000H4\138A\142s\000\000\132\128@\b\000A \134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\128\001\235\218\188\000\004RB\000H4\138A\142s\000\000\132\128@\b\000A \134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\016\004\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000 \000\b@\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\000\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\002\000\000\004\000\000\000\000\000\016\005$\000\004\131@\160\024\2270\000\bH\004\000\000\004\016\b`\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\000\000A\000\134\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\002\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\175j\240\000\017I\b\001 \208)\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\001I\000\001\000\196(\0068\200\000\006\018\001\000\000\001\004\002\024\000\000\000\000\000R@\000H7\138\001\1903\000\001\132\128@*\000A\004\134\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\000\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\002\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131x\160\027\2270\000\024H\004\002\160\004\016H`\000\000\000\000\001I\000\001 \222(\006\248\204\000\006\018\001\000\168\001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\144\000\00010M\150K\000\000\000P\002\004\000\000n\128BTw\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\129\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \212(\006x\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000R@\000H7\138\001\1903\000\001\132\128@*\000A\004\134\000\000\000\000\000\004\000\000\000\b\000\000\001\000@\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\004\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\000\000\003\019\004\217d\176\000\000\005\000 @\000\006\232\004%Gp\000\000\000\000\001I\000\001\000\192(\0068\200\000\006\018\001\000\000\001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\003\002\004\025$\160\000\000\004\000\000@\000\004(\004 @`\000\000\000\000\000@\000\000\000\128\000\000\016\004\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\020\144\128\018\r\"\144c\156\192\000! \016\002\000\016H!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\000\004\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\000\000\003\003\004\025$\176\000\000\004\000\000@\000\006h\004$D`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\005$\000\004\131p\160\027\2270\000\024H\004\002 \004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000R@\000H7\n\001\1903\000\001\132\128@\"\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\012\000\016`\018\128\000\000\016\000\000\000\000\016 \000\129\001\128\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002\000\000\000\192\001\006\001(\000\000\001\000\000\000\000\001\002\000\b\016\024\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\000\012\000\016`\018\128\000\000\016\000\000\000\000\016 \000\129\001\128\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002\000\000\000\192\001\006\001(\000\000\001\000\000\000\000\001\002\000\b\016\024\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\000\012\000\016`\018\128\000\000\016\000\000\000\000\016 \000\129\001\128\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002\000\000\000\192\001\006\001(\000\000\001\000\000\000\000\001\002\000\b\016\024\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\000\012\000\016`\018\128\000\000\016\000\000\000\000\016 \000\129\001\128\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002\000\000\000\192\001\006\001(\000\000\001\000\000\000\000\001\002\000\b\016\024\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002\000\000\000\192\001\006\001(\000\000\001\000\000\000\000\001\002\000\b\016\024\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\000\012\000\016`\018\128\000\000\016\000\000\000\000\016 \000\129\001\128\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002\000\000\000\192\001\006\001(\000\000\001\000\000\000\000\001\002\000\b\016\024\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002\000\000\000\192\001\006\001(\000\000\001\000\000\000\000\001\002\000\b\016\024\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000 \000\000\012\000\016`\018\128\000\000\016\000\000\000\000\016 \000\129\001\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\129\000\000\000\000\000\000\005$\000\004\131x\160\027\2270\000\024H\004\002\160\004\016H`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\000\000\000\000\000\000\020\144\000\018\r\226\128o\140\192\000a \016\b\128\016A!\128\000\000\000\000\005$\000\004\131x\160\027\2270\000\024H\004\002\160\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\000\000\000\000\000\000\020\144\000\018\r\226\128o\140\192\000a \016\n\128\016A!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000R@\000H5\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000E$ \004\131@\164\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\144\000\0000\000E\129J\000\000\000@\000\000\000\000h\128\0020F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\004RB\000H4\nA\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\t\000\000\003\017\004\216T\176\000\000\005\000 \000\000\006\200\000'\199p\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\004RB\000H4\nA\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\t\000\000\003\017\004\216T\176\000\000\005\000 \000\000\006\200\000'\199p\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\b\000\000\000\000\000\000\000\000\000\128\000\b\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\0000\000\000\004\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000@\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\000\128\000\b \017\128\000@\000\000\000\000\002\000\000\b\000\030\189\171\192\000@\000 \000\002\b\004`\000\016\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\"\000\007\175j\240\000\016\000\b\000\000\130\001\024\000\004\000\000\000\000\000\000\000\000\128\001\235\218\188\000\004\000\002\000\000 \128F\000\001\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\136\000\030\189\171\192\000@\000 \000\002\b\004`\000\016\000\000\000\000\000\128\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\003\000\000\000@\016\000\000\b\000\000\000\000\"\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\000\004\001\000\000\000\128\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000@\000 \000\002\b\004`\000\016\000\000\000\000\000\128\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\000\128\000\b \017\128\000@\000\000\000\000\002\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\128\001\235\218\188\000\004\000\002\000\000 \128F\000\001\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\246\173\000\001\004\000\128\000\000\000\016\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000@\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\004\000\128\000\b \016\000`@\000\000 \000\002\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\175j\240\000\016@\b\000\000\130\001\000\006\004\000\000\002\000\000\000\000\000\016\001\235\218\188\000\004\016\002\000\000 \128@\001\129\000\000\000\128\000\b\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\149\r\000(\194\rP@\204e\002\024\004\208\b\135x\018\000\0049\144\197\235\218\188\000\004\016\002\000\000 \128@\001\129\000\000\000\128\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000@\000z\246\175\000\001\004\000\128\000\b\000\016\000`@\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\0000\001\000\004\001\000\000\000\128\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\005\235\218\188\000\004\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000@\000 \000\002\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\b\020ZB\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134z\246\175\000\001\000\000\128\000\b\000\016\000\000@\000\000\000\000\000\000\000\000\000\030\189\171\192\000@\000 \000\002\000\004\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\004\000\007\175j\240\000\016\000\b\000\000\128\001\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\004\000\000\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\001\000\000\000\000\000\004\000\000\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\235\218\180\000\004\000\002\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\140 \145\004\000\134\016\000\000I\000\bv\129 \000C\000\000\000\000@\004\000\163\b$A\000!\132\000\000\018@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\140 \145\004\000\134\016\000\000I\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\129\005\164\t\004\003\016\161\028\2270\128\025\234\012\000\017\133\016(`\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\128\001\004\000\128\000\b\000\016\000\003\000\000\000 \000\000\001\128!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\004\000\128\000\b\000\016\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000@\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\020\144\000\018\rB\128g\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\000\004\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\012\000\000!\128@\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\016\004\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000@\000 \000\002\b\004`\000\016\000\000\000\000\000\128\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131P\160\025\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\004\000\002\000\000 \128F\000\001\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\018\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\b\000\000\128\000\000\000\000\000\000\005$\000\004\131P\160\025\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\175j\208\000\016@\b\000\000\000\001\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\000\004\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\b\000\000\128\000\000\000\000\000\000\005$\000\004\131P\160\025\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\016\004\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\020\144\000\018\rB\128g\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\b@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\001\255\250\254\b\020ZB\144H5\nq\206?\b\001\158\160\192\t\030Q\134\134\000\000\000$\000\004\012L\019m\146\192\001\000T\000\129 \000\027\160\016\148\029\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\025\235\218\188\000\004RB\000H4\nA\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\t\000\000\003\017\004\216T\176\000\000\005\000 \000\000\006\136\000\005\007p\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\016H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\015\020ZB\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\016\000\000\000\000\000\000\000@\136\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\235\248 Qi\nA\000\196)\1998\252 \006z\131\000\004iD\n\025\255\250\254\b\020ZB\144H5\011q\206?\b\001\158\160\192\t\026QB\134z\246\175\000\001\020\144\128\018\r\002\144c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\020\144\000\016\012B\128c\140\128\000a \016\000\000\016@!\128\000\000\000\000\005$\000\004\003\000\160\024\227 \000\024H\004\000\000\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001\000\192(\0068\200\000\006\018\001\000\000\001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\000\000\003\019\004\217d\176\000\000\005\000 @\000\006\168\004\005\007p\000\000\000\000\000@\000\000\000\128\000\000\016\004\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\020\144\128\018\r\"\144c\156\192\000! \016\002\000\016H!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\000\004\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\000\000\003\017\004\216D\176\000\000\005\000 \000\000\006\136\000\005\007p\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002@\000\000\196A6\017,\000\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\000\012D\019a\018\192\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\192\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002@\000\000\196A6\017,\000\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\000\012D\019a\018\192\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002@\000\000\196A6\017,\000\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\000\012D\019a\018\192\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002@\000\000\196A6\017,\000\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\000\012D\019a\018\192\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\000\012D\019a\018\192\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002@\000\000\196A6\017,\000\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\000\012D\019a\018\192\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000$\000\000\012D\019a\018\192\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\002@\000\000\196A6\017,\000\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000R@\000H7\138\001\1903\000\001\132\128@*\000A\004\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\015\020ZB\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\191\240\241E\164)\004\003\024\183\028\227\241\128\025\234L\000\017\229\028kp\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\b\020ZB\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\127\254\191\130\005\022\144\164\018\rB\220s\143\194\000g\1680\002F\148P\161\159\255\175\224\129E\164)\004\131P\167\028\227\240\128\025\234\012\000\145\165\016h`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\191\240\129E\1649\004\195P\183\028\227\241\1289\234L\001\209\229\029kp\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\002\004\022\144$\016\012B\132s\140\194\000g\1680\000F\020@\161\128\000\000\000\129\005\164\t\004\003\016\161\028\2270\128\025\234\012\000\017\133\016(`\000\000\000\000\000@\000\000\000\128\000\000\016\004\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\191\235\248\000\017I\bA \208)\0068\252\000\002\018\001\000 \t\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\004\000\128\000\b\000\016\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000@\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\rB\128g\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\0000\000\000\134\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000@\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\000\128\000\b \017\128\000@\000\000\000\000\002\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\rB\128g\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131P\160\025\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000:\246\173\000\001\004\000\128\000\000\000\016\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\000@\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\rB\128g\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\000\004\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \212(\006x\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\000\001\003\003\004\027$\176\000@\020\000\000H\000\006(\004$\004`\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\016H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\018\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\b\016Z@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\134\000\000\000\002\004\022\144$\016\012B\132s\140\194\000g\1680\000F\020@\161\128\000\000\000\000\001\000\000\000\000\b\000\000@\016\000\000\b\000\000\128\000\002\000\000\000\000\000\000\000@\000\000\000\002\000\000\016\004\000\000\002\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\004\000\000\000\000 \000\001\000@\000\000 \000\000\000\000\b\000\000\000\000\000\000\001\000\000\000\000\b\000\000@\016\000\000\b\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\136\000\000\000\000\000\000\001\000\000\000\000\b\000\000@\016\000\000\b\000\000\128\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\004\000\000\000\000 \000\001\000@\000\000 \000\002\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000E$ \004\131H\164\024\2310\000\bH\004\000\128\004\018\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\b\016Z@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\b\020ZB\144H5\nq\206?\024\001\158\160\192\t\026Q\002\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\239\252<Qi\nA\000\198-\1998\252`\006z\147\000\004yG\026\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\235\248 Qi\nA\000\198)\1998\252`\006z\131\000\004iD\n\024\000\000\000\000\000\000\000\000\b\004\000\000\000\000\016\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\175\224\129E\164)\004\003\024\167\028\227\241\128\025\234\012\000\017\165\016+p\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\004\012L\019m\146\192\001\000T\000\129 \000\027\160\016\020\029\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@ \016\000\000\000\000@\000\000\000\000 \000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\175\224\129E\164)\004\131P\167\028\227\241\128\025\234\012\000\145\165\016+p\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\b\020ZB\144@1\138q\206?\024\001\158\160\192\001\026Q\002\183\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\175j\240\000\017I\b\001 \210)\0069\204\000\002\018\001\000 \001\004\130\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \212(\006x\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\001\000\003\000\000\b`\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\b\000\000\001\000@\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\004\000\002\000\000 \128F\000\001\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\004\000\002\000\000 \128F\000\001\000\000\000\000\000\b\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\020\144\000\018\rB\128g\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\189\171@\000A\000 \000\000\000\004\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\128\000\000\016\004\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\020\144\000\018\rB\128g\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\b\020ZB\144H5\nq\206?\024\001\158\160\192\t\026Q\002\183\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@ \016\000\000\000\000@\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\022\144\164\018\rB\156s\143\198\000g\1680\002F\148@\161\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000@\000\192\000\002\024\004@\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\001\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A \134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\129\005\164\t\004\003\016\161\028\2270\128\025\234\012\000\017\133\016(`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000E$ \004\131H\164\024\2310\000\bH\004\000\128\004\018\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131P\160\025\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\004\000\012\000\000!\128@\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\000\004\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\175j\240\000\016\000\b\000\000\130\001\024\000\004\000\000\000\000\000 \000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \212(\006x\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H5\n\001\1583\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\175j\208\000\016@\b\000\000\000\001\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\000\004\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \212(\006x\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000 Ai\002A\000\196(G8\204 \006z\131\000\004aD\n\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000\004\000\007\255\239\252 Qi\014A0\212-\1998\252`\014z\147\000dyGZ\220\000\000\000\b\016Z@\144@1\n\017\2063\b\001\158\160\192\001\024Q\002\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\175\224\129E\164)\004\003\024\183\028\227\240\128\025\234\012\000\017\229\028h`\000\000\000\000\000\000\000\000 \016\000\000\000\000\000\000\000\000\000 \000\000\000\001\255\250\254\b\020ZB\144@1\139q\206?\b\001\158\160\192\001\030Q\198\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\b\020ZB\144H5\011q\206?\b\001\158\160\192\t\030Q\198\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\175\224\129E\164)\004\131P\183\028\227\240\128\025\234\012\000\145\229\028h`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\001\000\001\255\250\254\b\020ZB\144@1\139q\206?\b\001\158\160\192\001\026QB\134\000\000\000\000\000\000\000\000\002\001\000@\000\000\000\000\000\000\000\002\000\000\016\000\031\255\175\224\129E\164)\004\003\024\183\028\227\240\128\025\234\012\000\017\165\020(`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\016\000\000\000\000\000\000\000\000\128\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\b\020ZB\144H5\011q\206?\b\001\158\160\192\t\026QB\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\004\000\012\000@!\128@\000\000 \000\000\000\000\016\000\000\000\000\000\000\000\000\016\000\192@\000\000\000\000\000 \000\000\000\128\000\001\000\023\255\235\248 Qi\nA\000\198)\1998\252 \006z\131\000\004iD\n\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000D\003\001\000\000\000\000\000\000\128\000\000\002\000\000\004\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\235\248 Qi\014A0\212)\1998\252 \014z\131\000$iDJ\029\255\250\254\b\020ZB\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\235\248 Qi\014A0\212)\1998\252 \014z\131\000$iDJ\028\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\001\000\001\255\250\254\b\020ZB\144H5\011q\206?\b\001\158\160\192\t\026QB\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@ \016\000\000\000\000@\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\022\144\164\018\rB\156s\143\198\000g\1680\002F\148@\161\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000{\254\191\128\001\020\144\164\016\012\002\144c\143\128\000a \016\000\000\148@\161\128\000\000\000\000\005$\001\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\255\175\224\000E$)\004\003\000\164\024\227\224\000\024H\004\000\000%\016(`\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\001\000\001\239\250\254\000\004RB\144@0\nA\142>\000\001\132\128@\000\002Q\002\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\001\000\003\000\016\b`\016\000\000\b\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\016 \000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\b\020ZB\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\031\255\175\224\129E\164)\004\131P\167\028\227\240\128\025\234\012\000\145\229\024h`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\b@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\000\004\016\002\000\000 \000@\000\012\000\000\000\128\000\000\006\000\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\005\255\250\254\b\020ZB\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\175\224\129E\164)\004\003\024\167\028\227\240\128\025\234\012\000\017\165\016(`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000@\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\160\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\175\224\129E\164)\004\003\016\165\028\227\240\128\025\234\012\000\017\165\016(g\175j\240\000\017I\b\001\000\192)\0068\200\000\006\018\001\000\000\001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000_\255\175\224\129E\164)\004\003\016\165\028\227\240\128\025\234\012\000\017\165\016(`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\022\144\164\016\012B\148s\143\194\000g\1680\000F\148@\161\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\235\248\000\016@\b\000\000\128\001\000\0000\000\000\002\000\000\000\b\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\001\127\254\191\128\001\004\000\128\000\b\000\016\000\003\000\000\000 \000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\235\248\000\016@\b\000\000\128\001\000\0000\000\000\002\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\144\000\018\r\002\128c\140\192\000! \016\002\000\016@!\128\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\194\000\226\b$I\002\016\012\000\000\018@\002\020\161H\000\024\192\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\001\000\016\002\136 \145\004\000\004\000\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\001\000\016\002\136 \017\004\000\004\000\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000 \000\000\000\016\001\000(\130\t\016@\000@\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\b\000\000\128\000\000\000\000\000\b\000 \000\000\000\000\000@\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\b\128\000\000\000\000\000\b\000 \000\000\000\000\000@\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\014\000\130D\016!\000\192\000\001$\000!H\020\128\001\140\000\000z\246\175\000\003\128 \128\004\b@0\000\000I\000\bR\005 \000c\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000(\130\t\024@\000@\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\136 \145\004\000\004\000\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\b\000\000\000\004\000@\n \130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\b\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\b\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 @\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\014\000\130@\016!\000\192\000\001$\000!H\020\128\001\132\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000\224\b \001\002\016\012\000\000\018@\002\020\129H\000\024@\000\000\000\016\001\000(\130\t\016@\000@\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\129\000\000\000@\004\000\162\b$A\000\001\000\000\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\000\162\b$A\000\001\000\000\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\136 \145\004\000\004\000\000\000\t\000\bv\129 \000C\000\000\000\000@\004\000\162\b$A\000\001\000\000\000\n@\002\029\160H\000\016\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000(\130\t\016@\000@\000\000\000\144\000\135h\018\000\0040\000\000\000\004\000@\n \130D\016\002\016\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\"\136 \145\004\000\004\000\000\000\t\000(v\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\004\000@\n \130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\175j\240\000\016\000\b\000\000\128\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\129\000\030\189\171\192\000@\000 \000\002\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\001\000\016\002\136 \145\004\000\006\000\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000(\130\t\016@\000@\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\128\000\000\000\000\000\000\000\016\001\000(\130\t\016@\000@\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\128\000\000\000@\004\000\162\b$A\000\001\000\000\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\128\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\136 \145\004\000D\000\000\000\t\000\bv\129 \000C\000\000\000\000@\004\000\162\b$A\000\001\000\000\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\n \130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\232 \145\004\000\020\000\000\000)\000\bv\129 \000C\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\000\162\b$A\000\001\000\000\000\002@\002\029\160H\000\016\192\000\000\000\016\001\000(\130\t\016@\b@\000\000\002\144\000\135h\018\000\0048\000\000\000\004\000@\138 \130D\016\000\016\000\000\000$\000\161\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000@\004\000\162\b$A\000\001\000\000\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\"\136 \145\004\000\004\000\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000 \000\000\000\016\001\002(\130\t\016@\000@\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000`\000\000\000\000\016\000\000\000 \000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\136 \145\004\000\004\000\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\n \130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\136 \145\004\000\132\000\000\000)\000\bv\129 \000C\128\000\000\000@\004\b\162\b$A\000\001\000\000\000\002@\n\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\004\000@\n \130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\160\016\129\000(\130\t\016@\000`\000\000\000\144\000\135h\018\000\0040\000\000\000\004\000@\n \130D\016\000\024\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\000\162\b$A\000\001\128\000\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\n$\130D\016\002P\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\"\136 \145\004\000\004\000\000\000\t\000(v\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\016\001\000(\130\t\016@\000@\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\n \130D\016\000\024\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\000\162\b$A\000\001\128\000\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\128\000\000\000@\004\000\162\b$A\000\001\000\000\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\128\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\016\000\000\000\000\000\b\b\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000(\130\t\016@\000@\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\128\000\000\000@\004\000\162\b$A\000\001\000\000\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\132\000\000\000\000@\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000(\130\t\016@\000@\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\000\162\b$A\000\001\000\000\000\002@\002\029\160H\000\016\192\000\000\000\016\001\000.\130\t\016@\001@\000\000\002\144\000\135h\018\000\0048\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\n \130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\175z\241\0008\130\t\016@\132A\000\000\004\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\001\000\016\002\136 \017\004\000\004\000\000\000\t\000\bv\129 \000C\000\000\000\000@\004\000\186H$A\000%\128\000\000\n@\002\029\160H\000\016\224\000\000\000\016\001\000(\130\t\016@\b@\000\000\000\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\000\162\b$A\000\001\000\000\000\002@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\001\235\222\188@\014 \130D\016!\024@\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\136 \145\004\000\004\000\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000@\n \130D\016\000\016\000\000\000$\000!\218\004\128\001\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\136 \145\004\000\004\000\000\000\t\000\bv\129 \000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188 \014 \130D\144!\000\192\000\001$\000!J\020\128\001\140\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \2088\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \208(\0068\204\000\002\018\001\000 \001\004\002\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\239\252 Qi\nA \2449\1998\252 \006z\147\000$iD\n\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\194\005\022\144\164\018\015B\156s\143\194\000g\1690\002F\148@\173\222\255\191\240\000@\000 \000\002\000\004\000\000\000\000\000\000@\000\000\000\000\000\007\191\239\252\000\016\000\b\000\000\128\001\000\000\000\000\000\000\016\000\000\000\000\000\001\239\251\255\000\004\000\002\000\000 \000@\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000B\0200\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\016\133\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\004!C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\001\bP\192\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\250\254\015\020ZB\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\127\254\191\130\005\022\144\164\016\012b\156s\143\194\000g\1680\000F\148@\161\128\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\235\248 Qi\nA\000\198)\1998\252 \006z\131\000\004iD\n\220\000\000\000\000\000\000\000\000\b\004\000\000\000\000\000\000\000\000\000\b\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@ \016\000\000\000\000\000\000\000\000\000 \000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\022\144\164\018\rB\156s\143\194\000g\1680\002F\148@\173\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001I\000\001 \222(\006\248\204\000\006\018\001\000\168\001\004\018\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\175\224\241E\164)\004\003\024\167\028\227\240\128\025\234\012\000\017\165\016(g\255\235\248 Qi\nA\000\198)\1998\252 \006z\131\000\004iD\n\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\127\254\191\130\005\022\144\164\016\012b\156s\143\194\000g\1680\000F\148@\173\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\235\248<Qi\nA\000\198)\1998\252 \006z\131\000\004iD\n\025\255\250\254\b\020ZB\144@1\138q\206?\b\001\158\160\192\001\026Q\002\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\239\251\255\000\004\016\002\000\000 \000@\000\000\000\000\000\132\000\000\000\000\000\000\001\bP\192\000\004\000\000\000\012\000\000!\128@\000\000!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\002\000\000\b`\016\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\004\000\002\000\000 \128F\000\001\000\000\000\000\000\b\000\000 \000z\246\175\000\001\000\000\128\000\b \017\128\000@\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\128\001\235\218\188\000\004\000\002\000\000 \128F\000\001\000\000\000\000\000\000\000\000 \000z\246\175\000\001\000\000\128\000\b \017\128\000@\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\"\000\007\175j\240\000\016\000\b\000\000\130\001\024\000\004\000\000\000\000\000 \000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\003\000\000\000@\016\000\000\b\000\000\000\000\"\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000 \000\000\004\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\"\000\007\175j\240\000\016\000\b\000\000\130\001\024\000\004\000\000\000\000\000 \000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\235\248 Qi\nA \212)\1998\252 \006z\131\000$iD\026\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@ \016\000\000\000\000\000\000\000\000\000 \000\000\000\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\191\130\005\022\144\164\018\rB\156s\143\194\000g\1680\002F\148@\173\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\133\012\000\000@\000@\000\192\000\002\024\004\000\000\002\016\000\000\000\000\000\196\000\000\000\000\000\000\b\b\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005$\000\004\131@\224\024\2270\000\bH\004\000\128\004\016\b`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R@\000H4\n\001\1423\000\000\132\128@\b\000A\000\134\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\191\240\129E\164)\004\131\208\231\028\227\240\128\025\234L\000\145\165\016+p\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\251\255\b\020ZB\144H=\nq\206?\b\001\158\164\192\t\026Q\002\183\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\191\240\129E\164)\004\003\024\167\028\227\240\128\025\234L\000\017\165\016+p\000\000\000\000\000\000\000\000 \016\000\000\000\000\000\000\000\000\000 \000\000\000\197\255\251\255\b\020ZB\144@1\138q\206?\b\001\158\164\192\001\026Q\002\183\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\191\240\129E\164)\004\131P\167\028\227\240\128\025\234L\000\145\165\016+w\255\239\252 Qi\nA\000\198)\1998\252 \006z\147\000\004iD\n\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\002\001\000\000\000\000\000\000\000\000\000\002\000\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\239\252 Qi\nA \212)\1998\252 \006z\147\000$iD\n\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\254\255\194\005\022\144\164\018\rB\156s\143\194\000g\1690\002F\148@\173\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\239\252 Qi\nA \212)\1998\252 \006z\147\000$iD\n\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\004\000\004\000\012\000\000!\128@\000\000!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\239\252 Qi\nA \212)\1998\252 \006z\147\000$iD\n\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\002\001\000\000\000\000\000\000\000\000\000\002\000\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\239\252 Qi\nA \212)\1998\252 \006z\147\000$iD\n\220\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\bP\192\000\004\000\004\000\012\000\000!\128@\000\000!\000\000\000\000\000\012@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\004\000\000\000\000\000\000\000\000\000@\145.\000`\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\128\000\000@\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\004\b\000\000\000\000\000\000\000\000@\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000@\128\000\000\000\000\000\000\000\004\000\000\000\002\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\001\002\000\000\000\000\000\000\000\000\016\000\000\000\b\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\128\016\000\000\000\000\000\000\002\000\000\016 \000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\016\000\000\000\000@\000\000\000\000\000\000\000\000A\128\016\000\b\005\000\000\000\000\000\000\000 \000\001\002\000\000\000\000\000\000\000\000\016\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\b\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\004\000\000\000\000\000\000\000\000\004\024\001\000\000\000P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\016\224\006\000\000\001\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000A\128\024\000\000\004\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\016`\004\000\000\001\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\002\000\016\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\024\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\016\224\006\000\000\001\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\004\024\001\128\000\000@\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000A\128\016\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016`\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\016`\006\000\000\001\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\004\024\001\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000@\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000A\128\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000")
1632
1633 let action =
1634 ((16, "\002\130\000\185\000\000\000\000\022\134\000\185\000\000\000\000\000\026\000\000\000\000\000\000\000\213\000\000\000\000\000\000\002\130\000\000\000\005:*\000\000\000\000I\182\026P\000\000\025,\027t\000\000\000\000\000\000\000\000\000\213\0002\000\000\000\000\000\000\000\000\000\000\000\000\000\000J\142\000\000\000\000\025,\000\000\000\000\000\006\000\000\000\017\000\017\000\000\000\000\000\000\000\000\000\r\000\000\000\000\000\144\000\017\000\000\000\144\000\000\000\000\000\017\000\162\001\244\000\017\001\242\000\000\003\000\000R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\223\000\017\000\000\000I\002\220\000\017\000\000\000\005\001f\000\000\000\000\000\000\002\016\000\000\028\152\000\017\002\028\000\000\000\000\000\000\000\000:*\029\188?\184\000\000?\184\000\000\000\000\000\000\000\017\000\000?\184\000\000>\156\003\028?\184\003P\000\000\000\000\000\017\007fW\234\000\000\000\000[0[\200\000\000^\200\000\000\\`Vn%\254%\254^\200Vn\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\\\248%\254\000\000\000\000\\\248\\\248\\\248\000\000\\\248\000\006\000\000\000\000Vn\\\248\000\000\000\000/\026\000\017\000\000 b%\254Vn\000\0000jVn<\002Vn<\128Vn\000\000\000\000\000\000\000\000\000\000\000\000\000\000J\248Vn\000\000L\020Vn=\156Vn>\184Vn\000\000Vn\000\000Vn?\212Vn@\240VnB\012VnC(VnDDVnE`Vn!`Vn\000\000\000\000\000\000\003dVn\000\000\000\000\000\000\000\000VnL\156VnM\184VnN@VnO\\VnF|VnG\152VnH\180VnO\228VnQ\000Vn\000\000VnQ\136VnR\164VnS,Vn\000\000VnTHVnT\208Vn\000\000\000\000Vn\000\000\003\202\000\000\000\000\000\017\000\000\000\000\000\000\000\000\003\242\000\000\004\020\000\000\000\020Vn\000\000\000\020\000\000\000\000\000\194:*\000\000&\224\0032\0032m\164]\226\000\000m\164\000\000\000\000m\164\000\000\000\194\000\000\000\000%\254\004V\000\000\004x^\2005p\000\000_X%\254\004z\000\000\004\1384>5p^\200\000\000\000\000\000\000\000\000\000\000\000\000\\\248\000\000\000\000\\\248\000\000\000\000\\\248\000\000\000\006\000\000^\200\000\000\000\000n\006\000\017\000\000 b b\000\000\000\227$\226 b \230Vn\000\000Vn\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\028Vn\024\132Vn\005\nVn\000\000Vn$\"VnI\022Vnw\154Vnw\246VnxZVnx\182Vn\000\000Vny\026VnyvVny\218Vn\000\000Vnz6Vnz\154\000\175!\226\000\000\000\000\001X#b\000\000\000\000\000\000\000\000\004\228\000\000Vn\004\252\000\000\000\000\000\017\000\000\000\000\000\000\002\184^\200\000\000\000\000\006\000\000\000\000[`0\005\242Vn\005\240\000\000\000\000^\200\000[\000\000\000\000Vn\005v\000\000%\254\005\130\000\000\005\132n\1385p^\200\005\134\000\000Vn\000|Vn\005\138\000\000\000\0005p5p\000\000\000\000\000\000\000\0002\200\000\000\000\000\000\000\000\000\000\000\\\248\000\000\000\000\000\164\006\136Vn5p\000\017\000\000\\\248\000\000\000\000\\\248\000\000\000\006\000\0003\240n\138\000\000\000\000\"\172\000\017\000\000 b\005\208\000\000Vn\005\212\000\000\000\000\000\017\000\000\000\000\000\000\000\000\000\000-\140\000\000\000\000\006\0165p\006&5p\000\000\000\003\000\000\000\000\025\168Vn\026\204Vn\027\240Vn\029\020Vn\0308Vn8\168VnK0VnKTVn\000\000VnV\000Vn_fVna\224Vn\000\000VnkBVnk\194\000\000\006\004\000\000\001(6\\\000\000\002x845p\000\000\003\n7H\000\000\000\000\000\000\000\000\006\152\000\000\000\000\000\000\0068\000\000\006N\000\000\000\000\006T\000\000\000\000\006X\000\000\000\000\006b\000\000\000\000\000\000\000\000\000\000\000\000\006d\007,\000\000\006j\000\000\006r\000\000\006rW\234\000\000%\254\006tv\188\000\000\007X\000\000%\254\006\1309*\000\000%\254\006\132:F\000\000\006\132\000\000\000\000\007f\000\000\007x\000\000\000\000\001f\007H\000\017\006\142\007`EDED\000\000\000\000\000\000\003\\T,ED\003hG|\000\000\000\000\000\000\006h\007R\002\162\007fED\000\000\000\000\006\156\000\000\006\160\007pED\006\164\000\000\001N\000\000\000\000\003\196M\156\000\000\000\000\000\000\006\168\007\156\000\000\007\158\000\0001\234\000\017\007\160\000\000\000\000\000\000\006\174\000\000?\184\000\000D(A\240\000\000\000\000\030\224?\184\006\176\000\000\000\000\001\140?\184\000\000\001\140\000\000\000\000\006\194\000\000\002\162\006\192\000\000\001V:*\000\000:*\000\000\006\174\000\000\001V\000\000\019\1524\240:*\000\000\006\208\000\000\002\000:*\000\000\000\000\002\000\000\000\000\000\000\000\000\026\000\000\000\000\001<\000\026\000\000\000\000\000\000\007\194\000\000&\224'n'n\000\000\000\000'n\000\000\000\000\000\000\000\000\000\000\007\170Vn\006\222)X\007^\000\000\007\192Vn\006\244\007\188:*\000\000\000\000\000\000:*\000\017\000\000\000\017Vn\007\242\000\000\000\017\000\000\000\017\007\244\000\000\t.\007\196\000\017\007\014\007\222ED\007\018\001\154\000\000Vn\b\004\000\000\000\000\000\000\007\230ED\007\026\b\n\000\000\003\186\004>Vn\b\020\000\000\b\022\000\0001\234\000\017\004lVn\b(\000\000\b*\000\000\000\017\004\140Vn\b.\000\000\b6\000\000\0013\007t\t\n,n\000\000`\192%\254\007LW(\000\000X\130\000\000\b<\000\000\003\002\b\018Vn\007\208\000\000\b\022Vn\007\212\000\000\001p\000\000\t\n\t\n%\254\007X\000\000\007ZoLoL\000\000\000\000\000\000\000\000\000\000\000\000\\\248\000\000\000\000\\\248\000\000\000\000\\\248\000\000\000\006\000\000oL\000\000\000\000;b\000\017\000\000 b\007`\000\000Vn\007d\000\000\000\000\000\017\000\000\000\000\000\000\000\000\000\000Y<Vn\000\000Vn\000\000\007p\000\000\000\020\000\000\000\000\000\000\000\000\000\000c\014VncvVn\007\156Vn\000\000Vnd\146Vnd\250Vnf\022Vnf~Vng\154Vnh\002Vn\000\000Vni\030Vni\134Vnj\162Vn\000\000Vnk\nVnl&5p\007n\000\000\000\000\003\002\000\000\003\002\000\000\019\152\t\n\t\n\000\000\000\000\000\000\000\003\000\000\000\000\000\000\bFVn\007|)X*j\000\017\bl\000\000\bN\022\152\000\000:*\000\017\001\166\000\000Vn\br\000\000\n&\bD\000\017\007\138\bZED\007\142\004H\000\000Vn\b\128\000\000\004L\000\000Vn\b\132\000\0001\234\000\017\004\158\000\000Vn\b\174\000\000\000\017\005 \000\000Vn\b\196\000\000-\152\b\198Z\000\b\206Vn\007\226)X)X\001\022\001\022\003\228\001\226\001\022\000\000\000\000\004\012\004\026\000\000\004Z\n\"\000\000\000\000\000\000\000\000\000\000\007\228\000\000\000\000\b\214\000\000\b\216\000\000\000\000\t\026\b\196Vn\007\250\b\238\000\000\b\242\000\000\b0\000\000\b\218 b\b\014)X\000\000\000\000\000\000\007\136\000\000\000\000\003\002\000\000\b\146\000\000\015\018\0012\000\000\015\018\000\000\000\000-\152\000\000\011\182\000\000\000\000\012\014\000\000\015\018\000\000\b\230 b\b\026\005b\000\000Vn\t\016\000\000\0032\000\000\b\226\000\017\b0\t\000ED\b4\005n\000\000Vn\t$\000\000\t\006ED\bF\t6\000\000\0056Vn\t8\000\000\t:\000\0001\234\000\017\005<Vn\t>\000\000\tP\000\000\000\000\000\000\012\014\000\000\000\000\001:\000\000\t\n\000\000\0032\000\000\000\000Z\000\tXVn\bl)X\000\000\000\000\tB b\bx\005t\000\000Vn\tt\000\000\007\184\000\000\tD\000\017\b\144\t`ED\b\152\005v\000\000Vn\t\136\000\000\005|\000\000Vn\t\138\000\0001\234\000\017\005\198\000\000Vn\t\140\000\000\002\200*j\000\000\002\200\000\000\000\000\b\162\000\000\000\020\001\128)X\000\000\006\006\0007\006\006\000\000\0007\000\000\t\n\000\000\t\n\000\000\000\000\000\000\b\174\000\000\000\000\b\186\000\000\004V\007\136\0007\006\006\000\000\000\000\000\000\0007\000\000\t\n\000\000\004V\000\000\000\000\022|\020R\019\152\000\000\020R\000\000\n\140\019\152\000\000\000\000\n\140\000\000\000\000\b\186\000\000\000\000\b\192\000\000\004\244\t\n\000\000\004\244\000\000\000\000\t@\000\000\001:\000\000\t\n\000\000\000\000\000\000\024\024Z\152\000\000\t\178\000\000\024\024\t\184\000\000\t\186\000\000\005\146\024\024\000\000\t\188\000\000\000\000\005\146\000\000\000\000\b\210\000\000\023@\tP\000\000\000\000\000\000\tR\000\000\000\165\000\178\000\000\019\152\t\176\000\000\000\000Vn\t\002\t\n\000\000\b\214\000\000\0013\000\000:*\000\000\000\000\003\236\019\152\000\000\019\152\000\000\b\198\000\000\003\236\000\000Vn\003\240Vn\000\000Vn\000\000\b\200\000\000\003\240\000\000Vn\003\240\b\204\000\000\021\024+\234\000\000\003\250\021\024\000\000\000\000\021\024\000\000\b\206\000\000\003\250\000\000Vn\003\240\b\208\000\000:*\005\216:*\000\000:*\000\000\b\218\000\000\005\216\000\000Vn\003\240\b\220\000\000\000\000'~\000\000\000\185\t~\000\000\000\000\tT]\212\000\000\000\000\000\000\000\000\000\000\000\000\t(\006\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\004]\212\000\000\001\b\003P\t*\000\185\000\000\000\000\t2\000\185\000\000\000\000\000\000\000\000\001\024\003P\000\000\000\000\000\000\000\000\t\144\000\000\000\000\000\000\000\000/\0261j\000\000q&\000\000]\212\000\000\002v]\212\000\000\002\196\001\218\001\218\000\000\003\224\001\218\000\000\t\b\000\000\000\000\000\000\000\000\t\162\000\0002\200\000\0004\240]\212\000\000\000\029]\212\000\000\t\198\000\000]\212\t\202\000\000r\194]\212\t\222\000\000\t\224\000\000s\194]\212]\212\t\138\000\185\000\000\000\000\000\000\t`]\212\t\234\000\000\t\236\000\000\t\240\000\000:*\000\000\004\n:*\000\000\tj'n\000\000]\212\t\248\000\000\002\220]\212\000\000\004\154]\212\000\000\004\132\n~\000\000\n\128\000\000b\030]\212\tv\000\000\000\000\000\000\000\000\000\000\000\000\n\n\000\000t\016a\156\n\020\000\000\n\030\000\000u\016p\012]\212\t\158]\212\n(\000\000\n*\000\000\n,\000\000a\156\t\212\000\185\000\000\000\000\005\154a\156\000\000\004\132\000\000\n2\000\000]\212\n8\000\000u^p\028]\212\t\178]\212\n<\000\000\n>\000\000\nD\000\000l\200'n\000\000'n\000\000b\030]\212\t\192]\212\nL\000\000\nN\000\000'n\000\000qt\000\000\000\000\005\166]\212\000\000\001\128\003\142\001\218\t\198\000\000\000\000\0032\0032\000\000\000\000\000\000\000\000\005\024\0032\000\000\t\208\000\000\000\000\000\000\000\000\000\000\000\000\000\000]\212\000\000\005\236]\212\000\000\005Z\001f\000\185\t\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\nd\000\000\nf\000\000]\212\nh\000\000v^a\156\np\000\000\nr\000\000]\212\n|\000\000(\226\n\"v\172U\206rt\n\004\000\000]\212\n\142\000\000\n\144\000\000\nd(\226]\212\n\152\000\000]\212\n\154\000\000\n\156\000\000]\212\n\158\000\000\000\185\n\n\000\000\000\000'~\000\000\000\000\0044\011\004\000\000\000\000\001C\000\000\000\000\000\000Vn\000\000\000\000\000\000\004\132\000\000\000J\000\000\000\000\000\000\006\006:*:*:*\000\000\003`\003`\003`\003`\000\000\000\000\000\000\000\000\000\000\000\000\003\002\019\152\n\250\016\148\0012\000\000\000\000\004P\000\000\012\014\000\0005p\n&\000\000\003\002\019\152\n4\018\022\000\000\003\002\016\148\000\000\000\000\000\000:*6j\000\000\000\000\000\000\n\132\0032\011\014O@O@\000\000\004\230d,O@\005\164P\228\000\000\000\000\b\170\n\254\000\017\000\000\005\200R\136\000\000\000\000\000\000\000\000\000\000\nD\011\020\t\n\nP\000\000\000\000\004P\000\000\012\014\000\000\021r\000\027\000\000\000\000\011\004\000\000\000\000\0044\000\000\002\030\000\000\000\000\000\000Vn\000\000\004\132\000\000\002\198\000\000\000\000\000\000\007\136\000\000\r\144\005L\r\144\000\000\t\n\r\144\000\000\005\246\000\000\t\n\000\000\t\n\000\000\t\n\000\000\019\242\000\000\000\000\000\000\000\000\000\000\t\n\000\000\005\246\000\000\t\n\000\000*\196\000\000\000\000\n\140\n\134\000\185\002$\0110\005\202\000\000\005\202\011Z\000\000\011\\\000\000\006\204\000\000\005\202\002\196\005\202\0110\005\202\000\000\000\000\003\170\000\000\0144\002$\nV\000\000\n`\000\000\n\160\000\185\002$\nf\000\000\n\140\011t\000\000\014\234\bd\011\136\000\225\011\136\000\000\000\000\b,\000\185\000\000\001D\000\000\000\000\000p\000\000\np\000\000\000\000\000\000\n\174\000\185\002$\nv\000\000\000\000\n\140\014\234\bd\b,\001D\000p\nx\000\000\014\234\bd\b,\001D\000p\nz\000\000\006\170\002\012\n\152\000\185\n\146\006\220\003\230\n\190\000\185\000\000\n\194\000\185\000\000\011 \000\000\n\168\004\140\n\196\006\220\011\\\000\000\n\220\006\220\011b\000\000\000\000\006\220\000\000\011d\000\000"), (16, "\r\217\r\217\r\217\r\217\r\217\r\217\r\217\r\217\r\217\r\217\r\217\r\217\r\217\r\217\012:\r\217\r\217\r\217\r\217\r\217\r\217\r\217\r\217\r\217\r\217\019N\006\145\025/\0253\r\217\005\249\001\194\0257\r%\n\005\r-\r\217\000\190\r\217\r%\r%\026\163\r\217\012n\r\217\r\217\000\n\r\217\000\190\026\167\r\217\r%\014\014\r=\000\130\r\217\r\217\r\217\001\170\026\170\r\217\000&\004\217\0056\028\018\001N\r\217\b\197\000\198\r\217\r\217\n\005\b\237\001\198\000\254\r\217\r\217\r%\r\217\006\190\r\217\000*\0007\000;\000\194\r\217\000\190\r\217\r\217\005\254\r\217\r\217\r\217\b\181\0196\000\202\r\217\r\217\r\217\004:\r]\r\217\r\217\r\217\n\218\000\206\001\"\r\217\r\217\r\217\r\217\r\217\r\217\006f\001\006\007\022\r\217\r\217\000N\n\158\019\158\019\198\019\214\020\n\020\026\020B\n\222\r\217\r\217\r\217\000\n\015\218\r\217\r\217\r\217\r\217\006\145\r\217\012\150\r\217\001Z\000\n\r\217\001\030\001\"\r\217\r\217\b\253\011r\001&\001\002\000\n\004\217\001*\001.\006\t\r\217\r\217\007\149\007\"\r\217\000\234\021\198\000\134\r\217\r\217\r\217\r\217\011~\r]\r\217\0012\r\217\000\222\001j\b\241\r\217\r\217\r\217\000\n\r\217\002}\r\217\r\217\000\190\r\217\004R\r\217\r\217\006Y\r\217\r\217\r\217\r\229\r\229\r\229\r\229\r\229\r\229\r\229\r\229\r\229\r\229\r\229\r\229\r\229\r\229\028:\r\229\r\229\r\229\r\229\r\229\r\229\r\229\r\229\r\229\r\229\n\005\r\149\006\198\015*\r\229\012n\000\190\025W\025[\012n\n~\r\229\025_\r\229\014\014\012\150\018\186\r\229\014\014\r\229\r\229\023\194\r\229\018\190\000\202\r\229\006\210\005\129\012\137\001\238\r\229\r\229\r\229\006Q\000\206\r\229\r\157\000\198\tR\003\233\003\241\r\229\0246\000\254\r\229\r\229\003\233\003\241\011\178\012\154\r\229\r\229\014\169\r\229\014~\r\229\014\169\023\214\006I\000\n\r\229\019\"\r\229\r\229\000\202\r\229\r\229\r\229\000\190\nR\020\246\r\229\r\229\r\229\000\206\020\142\r\229\r\229\r\229\015.\028\170\n\134\r\229\r\229\r\229\r\229\r\229\r\229\n\t\028.\012\137\r\229\r\229\015\218\021&\004]\0282\015\218\r\157\000\n\021~\004\017\r\229\r\229\r\229\0156\bF\r\229\r\229\r\229\r\229\018\186\r\229\t\t\r\229\001\n\n\230\r\229\018\190\001\002\r\229\r\229\018\194\014\169\014\169\005\241\000\202\n\186\014\169\005\241\006\014\017\190\r\229\004]\002]\r\229\000\206\000\006\000\"\r\229\r\229\r\229\r\229\011\182\002\129\r\229\006\025\r\229\001\018\014\130\n\t\r\229\r\229\r\229\r\133\r\229\019\"\r\229\r\229\006\137\r\229\000\n\r\229\r\229\000\190\r\229\r\229\r\229\006\153\006\153\006\153\006\153\006\153\006\153\006\153\006\153\006\153\006\153\006\153\006\153\006\153\006\153\000\n\006\153\006\153\006\153\006\153\006\153\006\153\006\153\006\153\006\153\006\153\000\190\000\n\000\198\tR\006\153\012r\012\130\012\146\003\193\000^\b\229\006\153\000f\006\153\000v\004R\027\174\006\153\r\141\006\153\006\153\000z\006\153\020\234\006q\006\153\021z\027~\011\026\000\202\006\153\000\198\006\153\011\030\017\154\006\153\001~\001^\025z\000\206\011\"\006\153\001\142\000\190\000.\011&\025~\020\250\026\195\026\199\006\153\006\153\003\173\026\203\000~\006\153\006\153\006\205\000\202\016J\006\153\021\006\006\153\006\153\000\n\006\153\006\153\006\153\000\206\021\n\001\214\006\153\006\153\006\153\000\198\016N\006\153\006\153\006\153\023\218\021n\bR\006\153\006\153\006\153\006\153\006\153\006\153\t\025\000\138\0045\006\153\006\153\000\n\t\237\003\193\011\194\022j\006\017\006\017\020\142\000\202\011\198\006\153\006\153\006I\t\162\006\153\006\153\006\153\006\153\000\206\006\153\006N\006\153\016\238\021\022\006\153\003\193\006\205\006\153\006\153\028\190\027\190\006\129\023\198\021\026\005\241\023\222\001\026\001\222\027\174\026\227\026\231\027\182\006\153\000\n\026\235\t\001\006\153\006\153\006\153\006\153\004\133\028\202\006\153\001\238\006\153\019~\0045\019\166\006\153\006\153\006\153\bb\019\230\0045\006\153\006\153\000\190\006\153\002\141\006\153\006\153\004\165\006\153\006\153\006\153\006\189\006\189\006\189\006\189\006\189\006\189\006\189\006\189\006\189\006\189\006\189\006\189\006\189\006\189\003^\006\189\006\189\006\189\006\189\006\189\006\189\006\189\006\189\006\189\006\189\r=\006\189\tz\015*\006\189\014\174\tQ\014\194\t\134\n\005\006\189\006\189\tA\006\189\028\230\022\130\022\138\006\189\012n\006\189\006\189\025\030\006\189\r=\000\202\006\189\019\134\014\014\019\174\005\241\006\189\006\189\006\189\019\242\000\206\006\189\006\189\006\189\006\189\r=\018\014\006\189\006\189\006\189\006\189\027\198\006\189\006\189\014\222\005\241\006\189\006\189\006\189\006\189\t\222\006\189\027\182\022\146\002\173\000\n\006\189\025\030\006\189\004\n\006\189\006\189\006\189\006\189\021\138\006\189\0152\006\189\006\189\006\189\b\225\rM\006\189\006\189\006\189\015.\004*\006\189\006\189\006\189\006\189\006\189\006\189\006\189\n\025\022F\015F\0069\006\189\006)\b\209\011\230\r5\0042\0061\ru\014\178\b\213\014\198\006\189\006\189\006\189\015\218\006\189\006\189\006\189\006\189\006\189\006\189\014\246\006\189\011~\000\n\006\189\012\006\018\142\006\189\006\189\022\130\022\138\r=\006\189\006\189\r=\023\194\015R\006a\004\154\006\189\002m\012\"\006\189\014\169\014\169\011~\006\189\006\189\014\169\006\189\014\226\012n\006\189\0166\006\189\004\162\004\186\n\025\006\189\016j\014\014\011~\017\"\017V\004\194\006\189\017j\006\189\022v\006\189\006\189\0242\006\189\006\189\006\189\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\020v\000v\025f\000\182\011\"\000\186\001\146\001\150\000z\011&\025j\027\134\020z\n\017\017\134\011*\018\238\026.\005\138\020\"\006&\t5\011:\020~\001\154\020\130\014\250\006i\001\242\020\134\012B\011B\027\138\012F\0062\020\138\012J\016\146\n\005\027\142\016\178\000~\023\242\012^\020\150\r}\n\001\012n\020\154\rE\015\218\re\002\002\006^\020\158\025\158\014\014\011~\006n\016:\011~\014\"\012\162\025\202\025\214\016n\014&\017\202\017&\017Z\020\162\002&\017n\002*\004\181\n\017\001\162\015\210\014.\000\190\n5\n5\012\186\0022\0142\n5\rm\012\190\006\238\002:\020*\006v\006\150\012\194\012\198\011V\011Z\012\202\0146\006\162\006\170\020\166\006\186\014:\020\170\006\206\006y\023\026\027\150\017\138\000\198\t\154\026:\023\182\006\254\012\206\t%\020\174\014>\014B\012\210\014F\020\178\000\n\020\182\014Z\020\186\020\190\004\145\020\194\026Z\014f\012\218\007\026\002\157\015\218\020\198\000\202\007j\020\202\027\162\027\158\007v\025\234\028\166\028\186\015\"\000\206\024&\007\166\015&\015r\004\181\011^\020\206\006!\012\222\007\174\015v\020\210\020\214\027\166\012\230\004\181\004\181\n5\n5\b>\004\181\015~\n5\012\234\000\n\006\197\006\197\bz\012\242\002~\006\197\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\b\138\000v\025f\000\182\011\"\000\186\001\146\001\150\000z\011&\025j\b\146\000\n\029\015\b\158\011*\b\170\002\233\b\182\b\210\004\198\002\233\011:\b\222\001\154\b\230\b\238\b\254\001\242\005\241\012B\011B\t\n\012F\t\022\t&\012J\t2\tF\tV\t^\000~\tb\012^\t\158\t\166\n\001\t\182\001\238\t\190\t\194\t\202\002\002\t\242\000\190\012n\t\246\t\254\n\014\n\030\nF\014\"\012\162\025\202\014\014\nj\014&\018\018\nv\n\147\0176\002&\n\178\002*\004\197\n\250\001\162\015\210\014.\011.\0116\011>\012\186\0022\0142\000\198\017:\012\190\006\238\002:\011F\011N\011R\012\194\012\198\011V\011Z\012\202\0146\011z\011\142\011\154\015\214\014:\011\162\011\166\011\174\011\194\011\190\011\206\011\214\011\218\000\202\011\198\006\254\012\206\011\238\011\246\014>\014B\012\210\014F\000\206\000\n\005\241\014Z\012\014\012\022\004\145\012*\028\n\014f\012\218\0122\012>\012V\012j\012v\012~\012\134\012\142\012\170\012\178\015\218\005\241\r\026\015\"\000\n\005\241\r&\015&\015r\r^\011^\r\142\014\006\012\222\014J\015v\014R\014b\014j\012\230\014\138\004\197\014\150\014\158\014\162\014\170\015~\014\186\012\234\014\206\006\213\006\213\000\190\012\242\002~\006\213\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\014\234\000v\025f\000\182\011\"\000\186\001\146\001\150\000z\011&\025j\015\002\015\014\000\198\026J\011*\015\022\015\030\015n\006\181\015z\015\130\011:\015\142\001\154\006\181\006\181\015\146\001\242\015\154\012B\011B\015\158\012F\015\166\015\174\012J\028\"\015\182\015\190\000\202\000~\015\230\012^\016*\0162\n\001\006\173\000\190\016B\000\206\016R\002\002\006\173\006\173\012n\016Z\016^\016f\016v\016~\012\158\012\162\006\181\014\014\006\173\014&\016\134\016\138\016\154\016\162\002&\016\186\002*\004\225\000\n\001\162\014*\014.\000\198\011\150\016\194\012\186\0022\0142\016\254\017\006\012\190\006\238\002:\017\022\006\173\017\030\012\194\012\198\011V\011Z\012\202\0146\017.\017>\011\194\014\177\014:\017F\017J\000\202\011\198\017R\017b\017v\017\146\017\178\002\233\006\254\012\206\000\206\002\233\014>\014B\012\210\014F\017\250\000\n\018\006\014Z\018z\018\134\004\145\018\166\018\210\014f\012\218\018\222\018\230\018\250\019\018\019\030\019.\019F\019V\000\n\019b\015\218\019\147\019\187\015\"\019\211\019\255\020\023\015&\015r\004\225\011^\0207\020O\012\222\020g\015v\020r\020\146\020\254\012\230\004\225\004\225\021\014\021?\021\150\004\225\015~\000\190\012\234\000\190\n=\n=\021\171\012\242\002~\n=\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\021\211\000v\021\223\000\182\011\"\000\186\001\146\001\150\000z\011&\000\198\014\146\021\239\021\247\015*\011*\022\n\022\030\022'\022/\004y\0227\011:\022R\001\154\022c\022\134\022\142\001\242\022\158\012B\011B\011\194\012F\022\187\000\202\012J\000\202\011\198\022\203\027r\000~\b=\012^\022\211\000\206\n\001\000\206\022\230\022\239\022\247\022\255\002\002\023\n\023/\012n\b=\023;\023N\023W\023_\012\158\012\162\023g\014\014\023\138\014&\023\147\023\155\023\206\000\n\002&\000\n\002*\023\254\024>\001\162\014*\014.\024_\024g\024s\012\186\0022\0142\024\131\024\139\012\190\006\238\002:\015.\024\151\024\162\012\194\012\198\011V\011Z\012\202\0146\024\178\024\191\024\199\003\165\014:\024\206\024\219\024\231\024\239\024\251\025\007\025\"\025\170\002q\b=\006\254\012\206\027\226\025\210\014>\014B\012\210\014F\025\226\000\n\026\022\014Z\027\246\026\030\026N\026v\004y\014f\012\218\028N\026z\027\250\004y\004y\026\130\026\175\003\165\027v\027\130\015\218\027\146\027\154\015\"\027\215\004y\004y\015&\015r\027\223\011^\027\230\027\243\012\222\027\254\015v\028\014\028C\028R\012\230\028_\028\131\028\159\b=\028\174\028\182\015~\028\194\012\234\028\206\028\219\004y\028\226\012\242\002~\b=\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\028\234\000v\n\005\000\182\011\"\000\186\001\146\001\150\000z\011&\028\243\012n\028\250\029\003\029\023\011*\000\000\000\000\000\000\003\165\014\014\000\000\011:\000\000\001\154\003\165\003\165\000\000\001\242\000\000\012B\011B\000\000\012F\000\000\000\000\012J\003\165\000\000\000\000\000\000\000~\000\000\012^\000\000\000\000\n\001\000\000\000\000\000\000\000\000\000\000\002\002\000\000\003\165\012n\000\000\000\000\014\169\000\000\000\000\012\158\012\162\003\165\014\014\027\182\014&\000\000\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\001\162\014*\014.\000\000\000\000\000\000\012\186\0022\0142\000\000\000\000\012\190\006\238\002:\000\000\000\000\000\000\012\194\012\198\011V\011Z\012\202\0146\015\218\000\000\000\000\014\177\014:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\254\012\206\000\000\000\000\014>\014B\012\210\014F\000\000\000\n\000\000\014Z\000\000\000\000\000\000\014\169\014\169\014f\012\218\000\000\014\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\218\000\000\000\000\015\"\000\000\000\000\000\000\015&\015r\000\000\011^\000\000\000\000\012\222\000\000\015v\000\000\000\000\000\000\012\230\000\000\000\000\000\000\000\000\000\000\000\000\015~\000\000\012\234\000\000\014\177\014\177\000\000\012\242\002~\014\177\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\000\000\000v\025f\000\182\011\"\000\186\001\146\001\150\000z\011&\025j\000\000\000\000\000\000\000\000\011*\000\000\000\000\000\000\000\000\000\000\000\000\011:\000\000\001\154\000\000\000\000\000\000\001\242\000\000\012B\011B\000\000\012F\000\000\000\000\012J\000\000\000\000\000\000\000\000\000~\000\000\012^\000\000\000\000\n\001\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\"\012\162\000\000\000\000\000\000\014&\026\250\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\001\162\015\210\014.\000\000\000\000\000\000\012\186\0022\0142\000\000\000\000\012\190\006\238\002:\000\000\000\000\000\000\012\194\012\198\011V\011Z\012\202\0146\000\000\000\000\000\000\003\177\014:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\254\012\206\000\000\000\000\014>\014B\012\210\014F\000\000\000\n\000\000\014Z\000\000\000\000\004\145\000\000\000\000\014f\012\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\027\174\000\000\000\000\000\000\000\000\000\000\015\"\000\000\000\000\000\000\015&\015r\000\000\011^\000\000\000\000\012\222\000\000\015v\000\000\000\000\000\000\012\230\000\000\000\000\000\000\000\000\000\000\000\000\015~\000\000\012\234\000\000\n!\n!\000\000\012\242\002~\n!\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\003\173\000v\000\000\000\182\011\"\000\186\001\146\001\150\000z\011&\000\000\000\000\000\000\000\000\000\000\011*\000\000\000\000\000\000\003\177\000\000\000\000\011:\000\000\001\154\003\177\003\177\000\000\001\242\000\000\012B\011B\000\000\012F\000\000\000\000\012J\003\177\000\000\000\000\000\000\000~\000\000\012^\000\000\000\000\n\001\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\"\012\162\003\177\000\000\027\182\014&\015\238\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\001\162\015\210\014.\000\000\000\000\000\000\012\186\0022\0142\000\000\000\000\012\190\006\238\002:\000\000\000\000\000\000\012\194\012\198\011V\011Z\012\202\0146\000\000\000\000\000\000\014\141\014:\000\000\000\000\000\000\000\000\000\000\000\000\003\173\000\000\000\000\000\000\006\254\012\206\003\173\003\173\014>\014B\012\210\014F\000\000\000\n\000\000\014Z\000\000\000\000\003\173\027~\000\000\014f\012\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\"\000\000\000\000\000\000\015&\015r\000\000\011^\003\173\000\000\012\222\000\000\015v\000\000\000\000\000\000\012\230\000\000\000\000\000\000\000\000\000\000\000\000\015~\000\000\012\234\000\000\014\141\014\141\000\000\012\242\002~\014\141\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\000\000\000v\000\000\000\182\011\"\000\186\001\146\001\150\000z\011&\000\000\000\000\000\000\000\000\000\000\011*\000\000\000\000\000\000\000\000\000\000\000\000\011:\000\000\001\154\000\000\000\000\000\000\001\242\000\000\012B\011B\000\000\012F\000\000\000\000\012J\000\000\000\000\000\000\000\000\000~\000\000\012^\000\000\000\000\n\001\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\"\012\162\000\000\000\000\000\000\014&\025\174\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\001\162\015\210\014.\000\000\000\000\000\000\012\186\0022\0142\000\000\000\000\012\190\006\238\002:\000\000\000\000\000\000\012\194\012\198\011V\011Z\012\202\0146\000\000\000\000\000\000\000\000\014:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\254\012\206\000\000\000\000\014>\014B\012\210\014F\000\000\000\n\000\000\014Z\000\000\000\000\000\000\000\000\000\000\014f\012\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\"\000\000\000\000\000\000\015&\015r\000\000\011^\000\000\000\000\012\222\000\000\015v\000\000\000\000\000\000\012\230\000\000\000\000\000\000\000\000\000\000\000\000\015~\000\000\012\234\000\000\014\217\014\217\000\000\012\242\002~\014\217\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\000\000\000v\000\000\000\182\011\"\000\186\001\146\001\150\000z\011&\000\000\000\000\000\000\000\000\000\000\011*\000\000\000\000\000\000\000\000\000\000\000\000\011:\000\000\001\154\000\000\000\000\000\000\001\242\000\000\012B\011B\000\000\012F\000\000\000\000\012J\000\000\000\000\000\000\000\000\000~\000\000\012^\000\000\000\000\n\001\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\"\012\162\000\000\000\000\000\000\014&\025\174\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\001\162\015\210\014.\000\000\000\000\000\000\012\186\0022\0142\000\000\000\000\012\190\006\238\002:\000\000\000\000\000\000\012\194\012\198\011V\011Z\012\202\0146\000\000\000\000\000\000\000\000\014:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\254\012\206\000\000\000\000\014>\014B\012\210\014F\000\000\000\n\000\000\014Z\000\000\000\000\000\000\000\000\000\000\014f\012\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\"\000\000\000\000\000\000\015&\015r\000\000\011^\000\000\000\000\012\222\000\000\015v\000\000\000\000\000\000\012\230\000\000\000\000\000\000\000\000\000\000\000\000\015~\000\000\012\234\000\000\014\213\014\213\000\000\012\242\002~\014\213\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\000\000\000v\000\000\000\182\011\"\000\186\001\146\001\150\000z\011&\000\000\000\000\000\000\000\000\000\000\011*\000\000\000\000\000\000\000\000\000\000\000\000\011:\000\000\001\154\000\000\000\000\000\000\001\242\000\000\012B\011B\000\000\012F\000\000\000\000\012J\011\026\000\000\000\000\000\000\000~\011\030\012^\000\000\000\000\n\001\025z\000\000\011\"\000\000\000\000\002\002\000\000\011&\025~\000\000\000\000\000\000\000\000\000\000\014\"\012\162\000\000\000\000\000\000\014&\018F\000\000\000\000\000\000\002&\000\000\002*\000\000\000\190\001\162\015\210\014.\000\000\000\000\000\000\012\186\0022\0142\000\000\000\000\012\190\006\238\002:\000\000\016J\000\000\012\194\012\198\011V\011Z\012\202\0146\000\000\000\000\000\000\000\000\014:\000\000\000\000\000\198\016N\000\000\000\000\000\000\000\000\000\000\000\000\006\254\012\206\000\000\000\000\014>\014B\012\210\014F\000\000\000\n\000\000\014Z\000\000\000\000\011\194\000\000\000\000\014f\012\218\000\202\011\198\b5\000\000\000\000\000\000\n\005\000\000\000\000\000\000\000\206\000\000\000\000\015\"\000\000\012n\b5\015&\015r\000\000\011^\000\000\000\000\012\222\014\014\015v\000\000\000\000\000\000\012\230\000\000\000\000\000\000\000\000\000\000\000\n\015~\000\000\012\234\000\000\004\165\000\000\000\000\012\242\002~\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\000\000\000v\000\000\000\182\011\"\000\186\001\146\001\150\000z\011&\000\000\000\000\000\000\000\000\b5\011*\000\000\000\000\000\000\000\000\000\000\000\000\011:\000\000\001\154\000\000\000\000\000\000\001\242\000\000\012B\011B\000\000\012F\000\000\000\000\012J\011\026\000\000\000\000\000\000\000~\011\030\012^\015\218\000\000\n\001\025z\000\000\011\"\000\000\000\000\002\002\000\000\011&\025~\000\000\000\000\000\000\000\000\000\000\019\218\012\162\000\000\000\000\000\000\014&\b5\000\000\000\000\000\000\002&\000\000\002*\000\000\000\190\001\162\000\000\014.\b5\000\000\000\000\012\186\0022\0142\000\000\000\000\012\190\006\238\002:\000\000\016J\000\000\012\194\012\198\011V\011Z\012\202\0146\000\000\000\000\000\000\000\000\014:\000\000\000\000\000\198\016N\000\000\000\000\000\000\000\000\000\000\000\000\006\254\012\206\000\000\000\000\014>\014B\012\210\014F\000\000\000\n\000\000\014Z\000\000\000\000\011\194\000\000\000\000\014f\012\218\000\202\011\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\206\000\000\000\000\015\"\000\000\000\000\000\000\015&\015r\000\000\011^\000\000\000\000\012\222\000\000\015v\000\000\000\000\000\000\012\230\000\000\000\000\000\000\000\000\000\000\000\n\015~\000\000\012\234\000\000\004\165\000\000\000\000\012\242\002~\000R\000V\000Z\000\146\000\000\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\000\000\000v\000\000\000\182\011\"\000\186\001\146\001\150\000z\011&\rU\rU\000\000\000\000\000\000\000\000\000\190\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\154\000\000\007\233\007\233\001\242\000\000\012B\007\233\016J\001\246\000\000\000\000\001\250\000\000\000\000\000\000\000\000\000~\000\000\000\000\000\000\000\000\t\249\000\198\016N\000\000\000\000\000\000\002\002\000\000\000\000\002\006\000\000\000\000\000\000\000\000\004R\002\026\002\022\000\000\002\030\000\000\000\000\000\000\000\000\011\194\000\000\002&\000\000\002*\000\202\011\198\001\162\005z\000\000\000\000\005\130\000\000\002.\0022\000\206\000\000\000\000\0026\001\"\002:\rU\000\000\000\000\002>\002B\011V\014n\002F\002J\000\000\000\000\000\000\000\000\005\146\005\154\000\000\000\000\000\000\000\000\000\n\rU\000\000\000\000\000\000\000\190\002N\000\000\000\000\005\162\000\000\002R\rU\002E\000\n\005\170\005\178\000\000\rU\rU\000\000\0176\000\000\002Z\000\000\005\186\000\000\000\000\005\194\000\000\005\202\000\000\000\000\000\000\002^\000\000\000\198\017:\000\000\000\000\000\000\006I\000\000\000\022\011^\000\000\000\000\002b\000\000\004R\rU\000\000\000\000\002n\000\000\rU\rU\005\210\011\194\000\000\000\000\000\000\002\134\000\202\011\198\000\000\000\000\002v\002~\000R\000V\000Z\000\146\000\206\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\000\000\000v\000\000\000\182\011\"\000\186\001\146\001\150\000z\011&\000\000\000\000\000\000\000\000\005\218\000\n\000\000\002E\000\000\000\000\000\000\005\226\000\000\000\000\001\154\000\000\000\000\000\000\001\242\000\000\012B\000\000\000\000\012F\000\000\002E\012J\000\000\000\000\002E\002E\000~\000\000\018\198\000\000\000\000\n\001\000\000\000\000\000\000\005\234\005\242\002\002\000\000\000\000\000\000\006I\000\000\000\000\000\000\000\000\018\214\012\162\000\000\000\000\001\t\000\000\000\000\001\t\000\000\000\000\002&\000\000\002*\000\000\000\000\001\162\000\000\000\000\000\000\000\000\000\000\012\186\0022\000\000\000\000\000\000\012\190\001\"\002:\000\000\002\242\003\026\012\194\012\198\011V\014n\012\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\000\000\001\t\000\000\001\t\001\t\006\254\012\206\000\000\000\000\000\000\000\000\012\210\000\000\003\"\000\n\000\000\003\002\000\000\003\018\000\000\000\000\r\189\000\000\012\218\000\000\000\000\r\189\000\000\000j\r\189\000r\r\189\000\000\r\189\000\000\000\178\000\000\000\000\r\189\r\189\000\000\r\189\000\000\000\000\011^\003*\000\000\012\222\000\000\018\218\000\000\000\000\r\189\012\230\r\189\000\000\000\000\000\000\r\189\r\189\018\226\000\000\012\234\000\000\r\189\000\000\000\000\012\242\002~\000\000\r\189\r\189\000\000\r\189\000\000\r\189\000\000\r\189\000\000\000\000\000\000\000\000\000\000\r\189\000\000\0032\000\000\000\000\001\t\000\000\r\189\r\189\003\n\000\000\r\189\000\000\000\000\000\000\000\000\r\189\r\189\000\000\007\198\r\189\000\000\r\189\001\t\000\000\000\000\000\000\001\t\001\t\r\189\000\000\000\000\000\000\000\000\r\189\r\189\000\000\000\000\001\t\003:\000\000\000\000\000\000\000\000\r\189\007\206\007\214\r\189\r\189\000\000\r\189\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\189\007\222\000\000\000\000\r\189\000\000\000\000\007\230\007\238\r\189\r\189\r\189\000\000\r\189\r\189\r\189\r\189\007\246\000\000\000\000\007\254\000\000\b\006\r\189\000\000\r\169\r\189\000\000\000\000\000\000\r\169\000\000\000\000\r\169\000b\r\169\000\000\r\169\000\000\000\000\000\000\r\189\r\169\r\169\000\000\r\169\r\189\r\189\r\189\b\014\000\000\r\189\r\189\000\000\000\000\r\189\r\169\000\000\r\169\000\000\r\189\r\189\r\169\r\169\000\000\r\189\000\000\000\000\r\169\000\000\000\000\000\000\000\000\000\000\r\169\r\169\000\000\r\169\000\000\r\169\000\000\r\169\000\000\000\000\000\000\000\000\000\000\r\169\000\000\b\022\000\000\000\000\000\000\000\000\r\169\r\169\b\030\000\000\r\169\000\000\000\000\000\000\000\000\r\169\r\169\000\000\000\205\r\169\000\000\r\169\005]\000\000\000\000\000\000\000\000\000\000\r\169\005]\000\000\000\000\000\000\r\169\r\169\000\000\000\000\b&\b.\000\000\000\000\000\000\000\000\r\169\002\242\003\026\r\169\r\169\000\000\r\169\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\169\002\250\000\000\000\000\r\169\000\000\000\000\000\205\000\205\r\169\r\169\r\169\000\000\r\169\r\169\r\169\r\169\003\"\000\000\000\000\003\002\000\000\003\018\r\169\000\000\r\197\r\169\000\000\000\000\000\000\r\197\000\000\000\000\r\197\000n\r\197\000\000\r\197\000\000\000\000\000\000\r\169\r\197\r\197\000\000\r\197\r\169\r\169\r\169\003*\000\000\r\169\r\169\000\000\000\000\r\169\r\197\000\000\r\197\000\000\r\169\r\169\r\197\r\197\000\000\r\169\000\000\000\000\r\197\000\000\000\000\000\000\000\000\000\000\r\197\r\197\000\000\r\197\000\000\r\197\000\000\r\197\000\000\000\000\000\000\000\000\000\000\r\197\000\000\0032\000\000\000\000\000\000\000\000\r\197\r\197\003\n\000\000\r\197\000\000\000\000\000\000\000\000\r\197\r\197\000\000\000\181\r\197\000\000\r\197\000\205\000\000\000\000\000\000\000\000\000\000\r\197\000\205\000\000\000\000\000\000\r\197\r\197\000\000\000\000\000\205\003:\000\000\000\000\000\000\000\000\r\197\000\181\000\181\r\197\r\197\000\000\r\197\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\197\002\250\000\000\000\000\r\197\000\000\000\000\000\181\000\181\r\197\r\197\r\197\000\000\r\197\r\197\r\197\r\197\000\181\000\000\000\000\003\002\000\000\003\018\r\197\000\000\b\141\r\197\000\000\000\000\000\000\b\141\000\000\000\000\b\141\000\000\b\141\000\000\b\141\000\000\000\000\000\000\r\197\b\141\b\141\000\000\b\141\r\197\r\197\r\197\000\181\000\000\r\197\r\197\000\000\000\000\r\197\b\141\000\000\b\141\000\000\r\197\r\197\b\141\b\141\000\000\r\197\000\000\000\000\b\141\000\000\000\000\000\000\000\000\000\000\b\141\b\141\000\000\b\141\000\000\b\141\000\000\b\141\000\000\000\000\000\000\000\000\000\000\b\141\000\000\000\181\000\000\000\000\000\000\000\000\b\141\b\141\003\n\000\000\b\141\001\134\000\000\000\000\000\000\b\141\b\141\000\000\000\177\b\141\000\000\b\141\000\181\000\000\000\000\000\000\000\000\000\000\b\141\000\181\000\000\000\000\000\000\b\141\b\141\000\000\000\000\000\181\000\181\000\000\000\000\000\000\000\000\b\141\000\177\000\177\b\141\b\141\000\000\b\141\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\141\002\250\000\000\000\000\b\141\000\000\000\000\000\177\000\177\b\141\b\141\b\141\000\000\b\141\b\141\b\141\b\141\000\177\000\000\000\000\003\002\000\000\003\018\b\141\000\000\r\181\b\141\000\000\000\000\000\000\r\181\000\000\000\000\r\181\000\000\r\181\000\000\r\181\000\000\000\000\000\000\b\141\r\181\r\181\000\000\r\181\b\141\b\141\b\141\000\177\000\000\b\141\b\141\000\000\000\000\b\141\r\181\000\000\r\181\000\000\b\141\b\141\r\181\r\181\000\000\b\141\000\000\000\000\r\181\000\000\000\000\000\000\000\000\000\000\r\181\r\181\000\000\r\181\000\000\r\181\000\000\r\181\000\000\000\000\000\000\000\000\000\000\r\181\000\000\000\177\000\000\000\000\000\000\000\000\r\181\r\181\003\n\000\000\r\181\001\166\000\000\000\000\000\000\r\181\r\181\000\000\000\169\r\181\000\000\r\181\000\177\000\000\000\000\000\000\000\000\000\000\r\181\000\177\000\000\000\000\000\000\r\181\r\181\000\000\000\000\000\177\000\177\000\000\000\000\000\000\000\000\r\181\000\169\000\169\r\181\r\181\000\000\r\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\181\000\169\000\000\000\000\r\181\000\000\000\000\000\169\000\169\r\181\r\181\r\181\000\000\r\181\r\181\r\181\r\181\000\169\000\000\000\000\003\002\000\000\000\169\r\181\000\000\b\153\r\181\000\000\000\000\000\000\b\153\000\000\000\000\b\153\000\000\b\153\000\000\b\153\000\000\000\000\000\000\r\181\b\153\b\153\000\000\b\153\r\181\r\181\r\181\000\169\000\000\r\181\r\181\000\000\000\000\r\181\b\153\000\000\b\153\000\000\r\181\r\181\b\153\b\153\000\000\r\181\000\000\000\000\b\153\000\000\000\000\000\000\000\000\000\000\b\153\b\153\000\000\b\153\000\000\b\153\000\000\b\153\000\000\000\000\000\000\000\000\000\000\b\153\000\000\000\169\000\000\000\000\000\000\000\000\b\153\b\153\003\n\000\000\b\153\n>\000\000\000\000\000\000\b\153\b\153\000\000\000\000\b\153\000\000\b\153\000\169\000\000\000\000\000\000\000\000\000\000\b\153\000\169\000\000\000\000\000\000\b\153\b\153\000\000\000\000\000\169\000\169\000\000\000\000\000\000\000\000\b\153\000\000\000\000\b\153\b\153\000\000\b\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\153\000\000\000\000\000\000\b\153\000\000\000\000\000\000\000\000\b\153\b\153\b\153\000\000\b\153\b\153\b\153\b\153\000\000\000\000\000\000\000\000\000\000\000\000\b\153\000\000\000\000\b\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\153\000\000\000\000\000\000\000\000\b\153\b\153\b\153\000\000\000\000\b\153\b\153\000\000\000\000\b\153\000\000\000\000\000\000\000\000\b\153\b\153\000\000\000\000\000\000\b\153\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\154\000\000\000\000\000\000\001\242\000\000\000\190\000\000\000\000\002\n\000\000\000\000\002\014\000\000\000\000\000\000\000\000\000~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\002\006\000\000\000\000\000\000\000\000\000\000\002\162\004\146\000\000\002\030\000\000\000\000\005*\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\001\162\001\241\000\000\000\000\001\241\000\000\004\206\0022\000\000\000\000\000\000\004\210\001\"\002:\000\000\000\000\005.\004\214\004\218\000\000\000\000\004\222\002J\000\000\000\000\000\000\000\000\001\241\001\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\226\000\000\000\000\001\241\000\000\004\230\000\000\001\241\000\n\001\241\001\241\000\000\000\000\000\000\000\000\000\000\000\000\004\238\000\000\001\241\000\000\000\000\001\241\000\000\001\241\000\000\000\000\000\000\0052\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\242\000\000\000\000\000\000\000\000\000\000\004\250\000\000\000\000\004\t\001\241\000\000\000\000\004\001\000\000\004\254\000\000\004\001\000\000\000\000\005\006\002~\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\004\001\000\000\000\000\000\000\000\000\001\241\005B\000\000\001\241\000\000\000\000\000\000\001\241\000\000\000\000\001\154\000\000\000\000\000\000\001\242\000\000\000\190\000\000\000\000\002\n\000\000\001\241\002\014\004\001\000\000\001\241\001\241\000~\000\000\000\000\000\000\000\000\005J\000\000\004\001\000\000\001\241\001\241\002\002\000\000\000\000\002\006\000\000\000\000\000\000\000\000\000\000\002\162\004\146\000\000\002\030\000\000\000\000\005*\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\001\162\000\000\004\001\004\001\000\000\000\000\004\206\0022\000\000\000\000\000\000\004\210\001\"\002:\000\000\000\000\005.\004\214\004\218\000\000\003J\004\222\002J\004\001\004\001\000\000\004\001\000\000\000\000\000\000\000\000\000\000\004\001\004\001\000\000\000\000\015%\004\001\000\000\004\226\000\000\000\000\000\000\000\000\004\230\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\238\000\000\000\000\000\000\000\000\000\000\015%\015%\000\000\000\000\000\000\0052\000\000\000\000\007Z\000\000\000\000\000\000\000\000\000\000\000\000\015%\000\000\000\000\004\242\000\000\000\000\015%\015%\000\000\004\250\007b\000\000\b\185\007n\000\000\000\000\015%\000\000\004\254\015%\000\000\015%\000\000\005\006\002~\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\015%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\154\000\000\000\000\000\000\001\242\007z\000\190\000\000\000\000\002\n\000\000\000\000\002\014\000\000\000\000\000\000\000\000\000~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015%\000\000\000\000\002\002\000\000\007~\002\006\015%\000\000\000\000\000\000\000\000\002\162\004\146\000\000\002\030\007\134\000\000\005*\000\000\000\000\015%\002&\000\000\002*\000\000\000\000\001\162\015%\000\000\000\000\000\000\000\000\004\206\0022\000\000\015%\015%\004\210\001\"\002:\000\000\000\000\005.\004\214\004\218\000\000\000\000\004\222\002J\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\241\000\000\000\000\000\241\000\000\000\000\000\000\000\000\004\226\000\000\000\000\000\000\000\000\004\230\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\238\000\241\000\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0052\000\000\000\000\000\000\000\000\002\250\000\000\000\000\000\000\000\241\000\000\000\241\000\241\004\242\000\000\000\000\000\000\000\000\000\000\004\250\000\000\000\241\002a\000\000\003\002\000\000\003\018\000\000\004\254\000\000\000\000\000\000\000\000\005\006\002~\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\241\000\186\001\146\001\150\000z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\154\000\000\000\000\000\000\001\242\000\000\000\190\000\000\000\000\002\n\000\000\000\000\002\014\000\000\000\000\000\000\000\000\000~\000\000\000\000\000\241\000\000\000\000\000\241\000\000\000\000\000\000\003\n\002\002\000\000\000\000\002\006\000\000\000\000\000\000\000\000\000\000\002\162\004\146\000\000\002\030\000\241\000\000\005:\000\000\000\241\000\241\002&\000\000\002*\000\000\000\000\001\162\000\000\000\000\000\000\000\241\000\241\004\206\0022\000\000\000\000\000\000\004\210\001\"\002:\000\000\000\000\005.\004\214\004\218\000\000\000\000\004\222\002J\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\226\000\000\000\000\000\000\000\000\004\230\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000R\000V\000Z\000\146\004\238\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\000\000\000\000\004\242\000\000\000\000\000\000\000\000\000\000\004\250\000\000\000\000\b\201\001\154\000\000\000\000\000\000\001\242\004\254\000\190\000\000\000\000\001\246\005\006\002~\001\250\000\000\000\000\000\000\000\000\000~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\002\006\000\000\000\000\000\000\000\000\000\000\002\026\002\022\000\000\002\030\000\000\000\000\000\000\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\001\162\000\000\000\000\000\000\000\000\000\000\002.\0022\000\000\000\000\000\000\0026\001\"\002:\000\000\000\000\000\000\002>\002B\000\000\000\000\002F\002J\000\000\000V\004^\000\146\000\000\000\150\000\000\000\154\000\158\004b\000^\000\000\000\170\000\174\000\000\000v\002N\000\182\000\000\000\186\001\146\002R\000z\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002Z\000\000\000\000\000\000\000\000\001\154\000\000\000\000\000\000\000\000\000\000\002^\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000~\000\000\002b\000\000\000\000\000\000\000\000\000\000\002n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\134\000\000\000\000\000\000\000\000\002v\002~\001\149\001\149\001\149\001\149\000\000\001\149\005\233\001\149\001\149\001\149\001\149\001\162\001\149\001\149\000\000\001\149\000\000\001\149\005\233\001\149\001\149\001\149\001\149\000\000\000\000\000\000\000\000\020Z\000\000\005\233\000\000\005\233\000\000\000\000\000\000\005\233\005\233\001\149\001\149\001\149\000\000\005\233\000\000\020^\000\000\000\000\000\000\005\233\000\000\001\149\005\233\000\000\000\000\000\000\005\233\001\149\000\000\000\000\001\149\000\000\005\233\000\000\001\149\000\000\000\000\020j\000\000\000\000\001\149\000\000\000\000\005\233\000\000\000\000\000\000\001\149\005\233\011\006\000\000\000\000\001\149\000\000\005\233\000\000\000\000\000\000\000\000\000\000\000\000\001\149\001\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\005\233\000\000\000\000\005\233\000\000\001\149\000\000\000\000\001\149\000\000\000\000\001\149\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\005\233\005\233\005\233\001\149\005\233\005\233\000\000\005\233\001\149\000\000\001\149\000\000\000\000\001\149\005\233\020n\000\000\005\233\000\000\000\000\001\149\000\000\001\149\000\000\000\000\001\149\000\000\000\000\000\000\000\000\000\000\000\000\005\233\000\000\000\000\000\000\000\000\005\233\005\233\000\000\001\149\001\149\000\000\000\000\000\000\001\149\001\149\000\000\000\000\000\000\000R\000V\004^\000\146\000\000\000\150\021B\000\154\000\158\004b\000^\000\000\000\170\000\174\020v\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\020z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020~\001\154\020\130\000\000\000\000\000\000\020\134\000\000\000\000\000\000\000\000\000\000\020\138\000\000\000\000\000\000\000\000\000\000\024\158\000\000\000\000\020\150\000\000\000\000\000\000\020\154\000\000\000\000\000\000\000\000\000\000\020\158\000\000\000\000\000\000\000\000\000\000\000\000\n\166\000\000\000\000\000\000\000\000\022:\000\000\000\000\000\000\020\162\023\166\000\000\000\000\011*\000\000\001\162\000\000\000\000\000\000\000\000\011:\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\190\011B\000\000\012F\000\000\000\000\012J\000\000\000\000\n\210\000\000\000\000\020\166\012^\000\000\020\170\n\001\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\020\174\000\000\000\000\014V\012\162\020\178\000\n\020\182\014&\020\186\020\190\000\000\020\194\002&\000\000\002*\000\000\000\000\000\000\020\198\014.\000\000\020\202\000\000\012\186\0022\0142\000\000\000\000\012\190\006\238\002:\000\000\000\000\000\000\012\194\012\198\020\206\000\000\012\202\0146\000\000\020\210\020\214\000\000\014:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\254\012\206\000\000\000\000\014>\014B\012\210\014F\000\000\000\n\000\000\014Z\000\000\000\000\000\000\000\000\000\000\014f\012\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\"\000\000\000\000\000\000\015&\015r\011*\000\000\000\000\000\000\012\222\000\000\015v\011:\000\000\000\000\012\230\000\000\000\000\001\242\000\000\000\190\011B\015~\012F\012\234\000\000\012J\011\026\000\000\012\242\002~\000\000\011\030\012^\000\000\000\000\n\001\025z\000\000\011\"\000\000\000\000\002\002\000\000\011&\025~\000\000\000\000\000\000\000\000\000\000\012\182\012\162\000\000\000\000\000\000\014&\000\000\000\000\000\000\000\000\002&\000\000\002*\000\000\000\190\000\000\000\000\014.\000\000\000\000\000\000\012\186\0022\0142\000\000\000\000\012\190\006\238\002:\000\000\016J\000\000\012\194\012\198\000\000\000\000\012\202\0146\000\000\000\000\000\000\000\000\014:\000\000\000\000\000\198\016N\000\000\000\000\000\000\000\000\000\000\000\000\006\254\012\206\000\000\000\000\014>\014B\012\210\014F\000\000\000\n\000\000\014Z\000\000\000\000\011\194\000\000\000\000\014f\012\218\000\202\011\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\206\000\000\000\000\015\"\000\000\000\000\000\000\015&\015r\000\000\000\000\000\000\000\000\012\222\000\000\015v\000\000\000\000\000\000\012\230\000\000\000\000\000\000\000\000\000\000\000\n\015~\000\000\012\234\000\000\004\165\000\000\000\000\012\242\002~\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\154\000\000\nm\nm\001\242\000\000\000\190\nm\000\000\012F\000\000\000\000\012J\000\000\000\000\000\000\000\000\000~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\019\218\012\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\001\162\015\201\000\000\000\000\015\201\000\000\012\186\0022\000\000\000\000\000\000\012\190\001\"\002:\000\000\000\000\000\000\012\194\012\198\000\000\012\153\012\202\000\000\000\000\000\000\000\000\000\000\015\201\015\201\000\000\000\000\000\000\015\201\000\000\000\000\015\201\015\201\000\000\006\254\012\206\000\000\000\000\015\201\000\000\012\210\015\201\015\201\000\n\015\201\015\201\000\000\012\153\015\201\000\000\015\201\015\201\012\218\000\000\015\201\000\000\000\000\015\201\000\000\015\201\015\201\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\153\000\000\012\222\000\000\000\000\000\000\000\000\000\000\012\230\000\000\012\153\000\000\015\201\000\000\015\201\000\000\000\000\012\234\000\000\000\000\000\000\000\000\012\242\002~\000\000\015\201\000\000\000\000\000\000\000\000\000\000\000\000\015\201\000\000\000\000\012\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\201\015\201\000\000\015\201\015\201\015\201\000\000\015\201\000\000\000\000\000\000\000\000\000\000\000\000\005\t\000\000\015\201\005\t\000\000\000\000\005\t\015\201\000\000\005\t\015\201\000\000\015\201\000\000\000\000\000\000\000\000\000\000\015\201\015\201\015\201\000\000\015\201\015\201\015\201\012\149\005\t\005\t\000\000\000\000\000\000\000\000\005\t\005\t\005\t\005\t\000\000\005\t\000\000\000\000\005\t\005\t\000\000\000\000\000\000\000\000\000\000\005\t\005\t\000\000\005\t\005\t\000\000\005\t\005\t\000\000\012\149\005\t\000\000\005\t\005\t\000\000\005\t\005\t\000\000\000\000\005\t\000\000\005\t\005\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\149\000\000\000\000\000\000\000\000\000\000\005\t\000\000\000\000\000\000\012\149\000\000\005\t\000\000\005\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\t\005\t\000\000\000\000\000\000\000\000\000\000\005\t\000\000\000\000\012\149\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\t\005\t\000\000\000\000\007\141\005\t\005\t\005\t\000\000\005\t\007\141\005\t\000\000\005\t\000\000\000\000\005\t\000\000\000\000\000\000\000\000\005\t\005\t\000\000\005\t\000\000\000\000\005\t\005\t\000\000\005\t\000\000\005\t\000\000\000\000\000\000\005\t\005\t\005\t\005\t\005\t\000\000\005\t\005\t\005\t\012\005\012\005\012\005\012\005\000\000\012\005\000\000\012\005\012\005\012\005\012\005\000\000\012\005\012\005\000\000\012\005\000\000\012\005\000\000\012\005\012\005\012\005\012\005\000\000\000\000\015y\000\000\000\000\015y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\005\012\005\012\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\005\000\000\015y\015y\000\000\000\000\012\005\015y\000\000\021R\002\150\015y\000\000\021Z\000\000\000\000\000\000\015y\000\000\012\005\015y\015y\000\000\015y\015y\000\000\012\005\002\158\000\000\015y\002\178\012\005\000\000\015y\000\000\000\000\015y\000\000\015y\015y\012\005\012\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\005\000\000\015y\012\005\015y\000\000\012\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015y\000\000\000\000\000\000\012\005\000\000\000\000\004\014\000\000\012\005\000\000\012\005\000\000\000\000\012\005\000\000\000\000\000\000\000\000\000\000\000\000\012\005\000\000\012\005\000\000\000\000\012\005\015y\015y\000\000\015y\015y\004\018\000\000\015y\000\000\000\000\000\000\000\000\000\000\000\000\012\005\012\005\004\026\000\000\000\000\021\174\012\005\015y\000\000\000\000\015y\015y\015y\015y\015y\000\000\000\000\000\000\015y\015y\015y\000\000\015y\015y\015y\015\t\000\000\000\000\015\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\t\015\t\000\000\000\000\000\000\015\t\000\000\000\000\002\150\015\t\000\000\000\000\000\000\000\000\000\000\015\t\000\000\000\000\015\t\015\t\000\000\015\t\015\t\000\000\000\000\002\158\000\000\015\t\002\178\000\000\000\000\015\t\000\000\000\000\015\t\000\000\015\t\015\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\t\000\000\015\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\t\011\245\011\245\011\245\011\245\000\000\011\245\004\014\011\245\011\245\011\245\011\245\000\000\011\245\011\245\000\000\011\245\000\000\011\245\000\000\011\245\011\245\011\245\011\245\000\000\000\000\000\000\015\t\015\t\000\000\015\t\015\t\004\018\000\000\015\t\000\000\000\000\000\000\011\245\011\245\011\245\000\000\000\000\004\026\000\000\000\000\000\000\000\000\015\t\000\000\011\245\015\t\015\t\015\t\015\t\015\t\011\245\000\000\000\000\015\t\015\t\015\t\000\000\015\t\015\t\015\t\000V\004^\000\146\011\245\000\150\000\000\000\154\000\158\004b\000^\011\245\000\170\000\174\000\000\000v\011\245\000\182\000\000\000\186\001\146\000\000\000z\000\000\000\000\011\245\011\245\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\154\000\000\000\000\000\000\000\000\000\000\001\170\000\000\000\000\000\000\011\245\000\000\000\000\011\245\000\000\000\000\011\245\000~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\245\000\000\000\000\000\000\000\000\011\245\000\000\011\245\000\000\000\000\011\245\000\000\000\000\000\000\000\000\000\000\000\000\011\245\000\000\011\245\000\000\000\000\011\245\001\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\245\011\245\000\000\000\000\000\000\021V\011\245\011\249\011\249\011\249\011\249\000\000\011\249\000\000\011\249\011\249\011\249\011\249\000\000\011\249\011\249\000\000\011\249\000\000\011\249\000\000\011\249\011\249\011\249\011\249\000\000\000\000\005\017\000\n\000\000\005\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\249\011\249\011\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\249\000\000\005\017\005\017\000\000\000\000\011\249\005\017\000\000\021\178\005\017\005\017\000\000\000\000\000\000\000\000\000\000\005\017\000\000\011\249\005\017\005\017\000\000\005\017\005\017\000\000\011\249\005\017\000\000\005\017\005\017\011\249\000\000\005\017\000\000\000\000\005\017\000\000\005\017\005\017\011\249\011\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\249\000\000\005\017\011\249\005\017\000\000\011\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\017\000\000\000\000\000\000\011\249\000\000\000\000\005\017\000\000\011\249\000\000\011\249\000\000\000\000\011\249\000\000\000\000\000\000\000\000\000\000\000\000\011\249\000\000\011\249\000\000\000\000\011\249\005\017\005\017\000\000\005\017\007\153\005\017\000\000\005\017\000\000\000\000\000\000\000\000\000\000\000\000\011\249\011\249\005\017\000\000\000\000\005\r\011\249\005\017\005\r\000\000\005\017\000\000\005\017\000\000\005\017\000\000\000\000\000\000\005\017\005\017\005\017\000\000\005\017\005\017\005\017\000\000\000\000\000\000\000\000\000\000\000\000\005\r\005\r\000\000\000\000\000\000\005\r\000\000\000\000\005\r\005\r\000\000\000\000\000\000\015=\000\000\005\r\000\000\000\000\005\r\005\r\000\000\005\r\005\r\000\000\000\000\005\r\000\000\005\r\005\r\000\000\000\000\005\r\000\000\000\000\005\r\000\000\005\r\005\r\000\000\015=\015=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015=\000\000\000\000\000\000\000\000\000\000\015=\015=\000\000\005\r\000\000\005\r\000\000\000\000\004\198\000\000\015=\000\000\000\000\015=\000\000\015=\005\r\000R\000V\004^\000\146\000\000\000\150\005\r\000\154\000\158\004b\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\015=\005\r\005\r\000\000\005\r\007\145\005\r\000\000\005\r\000\000\000\000\000\000\021\186\001\154\021\214\000\000\000\000\005\r\000\000\000\000\000\000\000\000\005\r\000\000\021\226\005\r\000\000\005\r\000\000\005\r\000~\000\000\000\000\005\r\005\r\005\r\000\000\005\r\005\r\005\r\015=\000\000\000\000\021\250\000\000\000\000\000\000\015=\000\000\000\000\n\166\000\000\000\000\000\000\000\000\022:\000\000\000\000\000\000\000\000\000\000\015=\000\000\000\000\022Z\001\162\000\000\000\000\015=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015=\015=\000\000\000\000\000\000\001\242\000\000\000\190\000\000\000\000\004\170\n\210\000\000\004\174\022f\000\000\000\000\022\190\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\022\214\000\000\004\202\000\000\000\000\023\002\000\000\t\233\006\142\006\154\0232\006\178\006\190\006\214\006\218\000\000\000\000\023>\002&\023j\002*\000\000\024j\000\000\000\000\000\000\000\000\000\000\000\000\006\222\0022\000\000\006\226\006\230\006\234\006\238\002:\024v\024\142\000\000\006\242\006\246\000\000\024\154\006\250\000\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\254\007\002\000\000\011\026\000\000\000\000\007\006\000\000\011\030\000\n\000\000\000\000\000\000\025z\000\000\011\"\000\000\000\000\007\014\000\000\011&\025~\000\000\000\000\000\000\000\000\000\000\006\t\000\000\007\018\000\000\007\"\001\242\000\000\000\190\000\000\000\000\004\170\000\000\000\000\004\174\000\190\007*\000\000\000\000\000\000\000\000\000\000\0072\000\000\000\000\000\000\000\000\000\000\004\025\000\000\002\002\0076\000\000\004\202\000\000\000\000\007>\002~\000\000\006\142\006\154\000\000\006\178\006\190\006\214\006\218\000\198\011\150\000\000\002&\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\222\0022\000\000\006\226\006\230\006\234\006\238\002:\011\194\000\000\000\000\006\242\006\246\000\202\011\198\006\250\000\206\000\000\000\000\000\000\000\000\000\000\000\000\000\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\254\007\002\000\000\000\000\000\000\000\000\007\006\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\007\014\000\000\000\000\004\165\000\000\000\000\000\000\000\000\000\000\006\t\000\000\007\018\000\000\007\"\001\242\000\000\000\190\000\000\000\000\004\170\000\000\000\000\004\174\000\000\007*\000\000\000\000\000\000\000\000\000\000\0072\000\000\000\000\000\000\000\000\000\000\t\r\000\000\002\002\0076\000\000\004\202\000\000\000\000\007>\002~\000\000\006\142\006\154\000\000\006\178\006\190\006\214\006\218\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\222\0022\000\000\006\226\006\230\006\234\006\238\002:\000\000\000\000\000\000\006\242\006\246\000\000\000\000\006\250\000\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\254\007\002\000\000\000\000\000\000\000\000\007\006\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\t\000\000\007\018\000\000\007\"\001\242\000\000\000\190\000\000\000\000\004\170\000\000\000\000\004\174\000\000\007*\000\000\000\000\000\000\000\000\000\000\0072\000\000\000\000\000\000\000\000\000\000\002\145\000\000\002\002\0076\000\000\004\202\000\000\000\000\007>\002~\000\000\006\142\006\154\000\000\006\178\006\190\006\214\bV\000\000\003\146\000\000\002&\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\222\0022\000\000\006\226\006\230\006\234\006\238\002:\000\000\000\000\000\000\006\242\006\246\002\242\003\026\006\250\000\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\000\000\006\254\007\002\000\213\003\154\000\000\000\000\007\006\000\000\000\000\000\n\000\000\000\000\003\"\000\000\000\000\003\002\000\000\003\018\007\014\000\000\015\145\000\000\000\000\015\145\000\000\000\000\000\000\006\t\000\000\000\000\000\000\007\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007*\000\000\003*\000\000\015\145\015\145\0072\000\000\000\000\015\145\000\000\000\000\t\029\015\145\000\000\0076\000\000\000\000\000\000\015\145\007>\002~\015\145\015\145\000\000\015\145\015\145\000\000\000\000\000\000\000\000\015\145\000\000\004\198\000\000\015\145\000\000\000\000\015\145\000\000\015\145\015\145\0032\000\000\000\000\000\000\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000\000\015\145\000\000\015\145\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\162\003:\015\145\000R\000V\000Z\000\146\n\162\000\150\011\026\000\154\000\158\000\162\000^\011\030\000\170\000\174\000\000\000v\025f\000\182\011\"\000\186\001\146\001\150\000z\011&\025j\000\000\015\145\015\145\000\000\015\145\015\145\000\000\000\000\015\145\000\000\000\000\000\000\000\000\001\154\015!\000\000\000\000\015!\000\000\001\170\000\000\000\000\015\145\000\000\000\000\015\145\015\145\015\145\015\145\015\145\000~\000\000\000\000\015\145\015\145\015\145\000\000\015\145\015\145\015\145\015!\015!\000\000\000\000\000\000\015!\000\000\000\000\000\000\015!\001\158\000\000\000\000\000\000\000\000\015!\000\000\000\000\015!\015!\000\000\015!\015!\000\000\000\000\001\162\000\000\015!\000\000\004\198\000\000\015!\000\000\000\000\015!\000\000\015!\015!\000\000\000\000\000\000\000\000\000\000\000\000\011V\011Z\000\000\n\170\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015!\000\000\015!\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\000\000\015!\004\145\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\001\011^\015!\015!\000\000\015!\015!\000\000\000\000\015!\000\000\006\001\000\000\000\000\000\000\015]\006\001\000\000\015]\000\000\000\000\000\000\000\000\015!\000\000\000\000\015!\015!\015!\015!\015!\000\000\000\000\000\000\015!\015!\015!\000\000\015!\015!\015!\015]\015]\000\000\000\000\000\000\015]\000\000\000\000\r\n\015]\000\000\000\000\000\000\000\000\000\000\015]\000\000\000\000\015]\015]\000\000\015]\015]\000\000\000\000\r\018\000\000\015]\r\030\000\000\000\000\015]\000\000\000\000\015]\000\000\015]\015]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\225\000\000\000\000\001\225\000\000\000\000\000\000\000\000\000\000\015]\000\000\015]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015]\000\000\000\000\000\000\001\225\001\225\000\000\r*\000\000\001\225\000\000\000\000\000\000\001\225\000\000\000\000\000\000\000\000\000\000\001\225\000\000\000\000\001\225\001\225\000\000\001\225\001\225\015]\015]\000\000\015]\001\225\r.\000\000\015]\001\225\000\000\000\000\001\225\000\000\001\225\001\225\000\000\r6\001\225\000\000\000\000\000\000\000\000\000\000\000\000\015]\000\000\015]\000\000\000\000\000\000\000\000\000\000\015]\015]\015]\000\000\015]\015]\015]\000\000\001\225\001\225\001\225\000\000\000\000\001\225\000\000\000\000\000\000\001\225\000\000\000\000\000\000\001\225\000\000\001\225\000\000\000\000\001\225\001\225\000\000\001\225\001\225\000\000\000\000\000\000\000\000\001\225\000\000\000\000\000\000\001\225\000\000\000\000\001\225\000\000\001\225\001\225\000\000\000\000\001\225\002\186\000\000\001\225\001\225\000\000\000\000\001\225\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\225\000\000\001\225\001\225\001\225\001\225\001\225\000\000\000\000\000\000\000\000\003\254\001\225\001\225\000\000\001\225\001\225\001\225\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\225\002\194\000\000\001\225\001\225\000\000\000\000\001\225\000\000\000\000\000\000\000\000\000\000\001i\000\000\000\000\001i\000\000\000\000\000\000\000\000\001\225\000\000\000\000\001\225\001\225\001\225\001\225\000\000\000\000\000\000\000\000\003\242\001\225\001\225\000\000\001\225\001\225\001\225\001i\001i\000\000\000\000\000\000\001i\000\000\000\000\000\000\001i\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\001i\001i\000\000\001i\001i\000\000\000\000\000\000\000\000\001i\000\000\000\000\000\000\001i\000\000\000\000\003\002\000\000\003\018\001i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001i\000\000\001i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001i\003\249\003\249\003\249\003\249\000\000\003\249\000\000\003\249\003\249\003\249\003\249\000\000\003\249\003\249\000\000\003\249\000\000\003\249\000\000\003\249\003\249\003\249\003\249\000\000\000\000\000\000\001i\000\000\000\000\001i\001i\000\000\001\210\003\n\000\000\000\000\000\000\000\000\003\249\001]\000\000\000\000\001]\000\000\003\249\000\000\000\000\001i\000\000\000\000\001i\001i\001i\001i\001i\003\249\000\000\000\000\000\000\001i\001i\000\000\001i\001i\001i\001]\001]\000\000\000\000\000\000\001]\000\000\000\000\000\000\001]\003\249\000\000\000\000\000\000\000\000\001]\003\249\000\000\001]\001]\000\000\001]\001]\000\000\000\000\003\249\000\000\001]\000\000\000\000\000\000\001]\000\000\000\000\003\002\000\000\001]\001]\000\000\003\249\003\249\000\000\000\000\000\000\000\000\000\000\000\000\003\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001]\000\000\001]\000\000\000\000\000\000\000\000\000\000\000\000\003\249\000\000\000\000\000\000\001]\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\001]\000\000\000\000\001]\001]\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001\154\001a\003\249\000\000\001a\000\000\001\170\000\000\000\000\001]\000\000\000\000\001]\001]\001]\001]\001]\000~\000\000\000\000\000\000\001]\001]\000\000\001]\001]\001]\001a\001a\000\000\000\000\000\000\001a\000\000\000\000\000\000\001a\001\174\000\000\000\000\000\000\000\000\001a\001\202\000\000\001a\001a\000\000\001a\001a\000\000\000\000\001\162\000\000\001a\000\000\000\000\000\000\001a\000\000\000\000\003\002\000\000\001a\001a\000\000\001\178\001\182\000\000\000\000\000\000\000\000\000\000\000\000\001\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001a\000\000\001a\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\000\000\001a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001a\000\000\000\000\001a\001a\000\000\000\000\003\n\000\000\000\000\000\000\000\000\000\000\001e\014I\000\000\001e\000\000\000\000\000\000\000\000\001a\000\000\000\000\001a\001a\001a\001a\001a\000\000\000\000\000\000\000\000\001a\001a\000\000\001a\001a\001a\001e\001e\000\000\000\000\000\000\001e\000\000\000\000\000\000\001e\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\001e\001e\000\000\001e\001e\000\000\000\000\000\000\000\000\001e\000\000\000\000\000\000\001e\000\000\000\000\003\002\000\000\003\018\001e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001e\000\000\001e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001e\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\001e\000\000\000\000\001e\001e\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001\154\001u\000\000\000\000\001u\000\000\001\170\000\000\000\000\001e\000\000\000\000\001e\001e\001e\001e\001e\000~\000\000\000\000\000\000\001e\001e\000\000\001e\001e\001e\002\242\003\026\000\000\000\000\000\000\001u\000\000\000\000\000\000\001u\001\174\000\000\000\000\000\000\000\000\002\250\001\202\000\000\001u\001u\000\000\001u\001u\000\000\000\000\001\162\000\000\001u\000\000\000\000\000\000\001u\000\000\000\000\003\002\000\000\003\018\001u\000\000\001\178\001\182\000\000\000\000\000\000\000\000\000\000\000\000\001\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\000\000\001u\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\000\000\001u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001u\000\000\000\000\001u\001u\000\000\000\000\003\n\000\000\000\000\000\000\000\000\000\000\001m\002\197\000\000\001m\000\000\000\000\000\000\000\000\001u\000\000\000\000\001u\001u\001u\001u\001u\000\000\000\000\000\000\000\000\001u\001u\000\000\001u\001u\001u\002\242\003\026\000\000\000\000\000\000\001m\000\000\000\000\000\000\001m\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\001m\001m\000\000\001m\001m\000\000\000\000\000\000\000\000\001m\000\000\000\000\000\000\001m\000\000\000\000\003\002\000\000\003\018\001m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001m\000\000\001m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001m\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\001m\000\000\000\000\001m\001m\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001\154\001q\000\000\000\000\001q\000\000\001\170\000\000\000\000\001m\000\000\000\000\001m\001m\001m\001m\001m\000~\000\000\000\000\000\000\001m\001m\000\000\001m\001m\001m\002\242\003\026\000\000\000\000\000\000\001q\000\000\000\000\000\000\001q\001\174\000\000\000\000\000\000\000\000\002\250\001\202\000\000\001q\001q\000\000\001q\001q\000\000\000\000\001\162\000\000\001q\000\000\000\000\000\000\001q\000\000\000\000\003\002\000\000\003\018\001q\000\000\001\178\001\182\000\000\000\000\000\000\000\000\000\000\000\000\001\186\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\000\000\001q\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\000\000\001q\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\001q\000\000\000\000\001q\001q\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001\154\001y\002\189\000\000\001y\000\000\000\000\000\000\000\000\001q\000\000\000\000\001q\001q\001q\001q\001q\000~\000\000\000\000\000\000\001q\001q\000\000\001q\001q\001q\002\242\003\026\000\000\000\000\000\000\001y\000\000\000\000\000\000\001y\001\158\000\000\000\000\000\000\000\000\002\250\tf\000\000\001y\001y\000\000\001y\001y\000\000\000\000\001\162\000\000\001y\000\000\tj\tn\003\"\000\000\000\000\003\002\000\000\003\018\001y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\tr\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\000\000\001y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\tv\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\001y\001y\000\000\000\000\003\n\000\000\000\000\000\000\004)\000\000\001\129\000\000\000\000\001\129\000\000\000\000\000\000\000\000\001y\000\000\000\000\001y\001y\001y\001y\001y\000\000\000\000\000\000\000\000\001y\001y\000\000\001y\001y\001y\002\242\003\026\000\000\000\000\000\000\001\129\000\000\000\000\000\000\001\129\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\001\129\001\129\000\000\001\129\001\129\000\000\000\000\000\000\000\000\001\129\000\000\000\000\000\000\003\"\000\000\000\000\003\002\000\000\003\018\001\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\000\000\001\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\129\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\0032\000\000\000\000\001\129\001\129\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001\154\003\146\000\000\000\000\001}\000\000\000\000\000\000\000\000\001\129\000\000\000\000\001\129\001\129\001\129\001\129\001\129\000~\000\000\000\000\000\000\001\129\001\129\000\000\001\129\003:\001\129\002\242\003\026\000\000\000\000\000\000\001}\000\000\000\000\000\000\001}\001\158\000\000\000\000\000\000\000\000\002\250\tf\000\000\001}\001}\000\000\001}\001}\000\000\000\000\001\162\000\000\001}\000\000\tj\tn\003\"\000\000\000\000\003\002\000\000\003\018\001}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\tr\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\000\000\001}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\tv\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\001}\001}\000\000\000\000\003\n\000\000\000\000\000\000\tE\000\000\003\146\000\000\000\000\001\133\000\000\000\000\000\000\000\000\001}\000\000\000\000\001}\001}\001}\001}\001}\000\000\000\000\000\000\000\000\001}\001}\000\000\001}\003:\001}\002\242\003\026\000\000\000\000\000\000\001\133\000\000\000\000\000\000\001\133\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\001\133\001\133\000\000\001\133\003\154\000\237\000\000\000\000\000\237\001\133\000\000\000\000\000\000\003\"\000\000\000\000\003\002\000\000\003\018\001\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\237\000\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\002\250\001\133\000\000\000\000\000\237\000\000\000\237\000\237\000\000\000\000\000\000\000\000\001\133\000\000\000\000\000\000\000\237\000\000\000\000\003\002\002\213\003\018\000\000\000\000\000^\002\213\000\000\000f\000\000\000v\002\213\000\000\002\213\000\000\000\000\000\000\000z\002\213\002\213\0032\000\000\000\000\001\133\001\133\000\000\000\000\003\n\000\000\000\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\213\000\000\001\133\000\000\000\000\001\133\001\133\001\133\001\133\001\133\000\000\000~\002\213\000\000\001\133\001\133\002\213\001\133\003:\001\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\237\002\213\002\213\000\237\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\000\000\000\000\002\213\000\000\000\138\000\000\000\000\000\000\000\000\000\237\000\000\002\213\000\000\000\237\000\237\000\000\002\213\002\213\000\000\000\000\000\000\000\000\000\000\000\000\000\237\000\237\002\213\000\000\002\209\000\000\002\213\000\000\000^\002\209\000\000\000f\000\000\000v\002\209\000\000\002\209\002\213\000\000\000\000\000z\002\209\002\209\000\000\000\000\000\000\000\000\002\213\000\000\000\000\000\000\000\000\002\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000~\002\209\000\000\000\000\000\000\002\209\000\000\000\000\000\000\000\000\000\000\000\000\002\213\000\000\000\000\002\213\002\213\000\000\000\000\002\213\002\209\002\209\000\000\002\230\002\213\002\213\003B\000\000\000\000\002\213\000\000\000\000\000\000\002\209\000\000\000\138\000\000\000\000\000\000\000\000\000\000\000\000\002\209\000\000\000\000\000\000\000\000\002\209\002\209\003r\003z\003\146\000\000\000\000\002=\000\000\000\000\002\209\002=\000\000\000\000\002\209\000\000\000\000\003\130\000\000\000\000\002=\002=\000\193\003\138\003\170\002\209\000\000\000\000\000\000\002=\002\242\003\026\000\000\003\178\000\000\002\209\003\186\000\000\003\194\002=\002\209\000\000\000\000\000\000\000\000\002\250\000\000\000\000\002\242\003\026\000\000\000\201\000\201\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\"\000\000\002\250\003\002\003\202\003\018\002=\000\000\000\193\000\193\000\000\000\000\002\209\000\000\000\000\002\209\002\209\002=\000\193\002\209\000\000\003\002\000\000\003\018\002\209\002\209\000\000\000\000\000\000\002\209\000\000\000\000\003*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\210\000\000\000\000\002=\002=\000\000\003*\003\218\000\000\000\000\000\000\000\000\000\000\000\145\000\000\000\000\000\145\000\000\000\000\000\000\000\000\002=\000\000\000\000\002=\002=\002=\002=\0032\000\000\000\000\000\000\000\000\002=\002=\003\n\003\226\003\234\002=\002\242\003\026\000\000\000\000\000\000\000\145\000\000\000\193\000\000\000\145\000\201\000\000\000\000\000\000\003\n\002\250\000\000\000\201\000\145\000\145\000\000\000\145\000\145\000\000\000\000\000\201\003:\000\145\000\193\000\000\000\000\003\"\000\000\000\000\003\002\000\193\003\018\000\145\000\000\000\000\000\000\000\000\000y\000\193\000\193\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\000\000\000\145\000\000\000\000\000y\000y\000\000\000\000\000\000\000y\000\000\000\000\000\145\000y\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\000y\000y\000\000\000y\000y\000\000\000\000\000\000\000\000\000y\000\000\000\000\000\000\000y\000\000\000\000\003\002\0032\003\018\000y\000\145\000\145\000\000\000\000\003\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\145\000\000\000\000\000\145\000\145\000\145\000\145\000y\000\000\000y\000\000\000\000\000\145\000\145\000\000\000\145\003:\000\145\000\000\000\000\000y\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\000y\000\000\000\000\000y\000y\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001\154\000u\000\000\000\000\000u\000\000\000\000\000\000\000\000\000y\000\000\000\000\000y\000y\000y\000y\000\000\000~\000\000\000\000\000\000\000y\000y\000\000\000y\000y\000y\000u\000u\000\000\000\000\000\000\000u\000\000\000\000\000\000\000u\001\158\000\000\000\000\000\000\000\000\002\250\tf\000\000\000u\000u\000\000\000u\000u\000\000\000\000\001\162\000\000\000u\000\000\tj\tn\000u\000\000\000\000\003\002\000\000\003\018\000u\000\000\000\000\000\000\000\000\000m\000\000\000\000\000m\000\000\tr\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000u\000\000\000u\000\000\000\000\000m\000m\000\000\000\000\000\000\000m\000\000\000\000\000u\000m\000\000\000\000\000\000\000\000\000\000\000m\000\000\000\000\000m\000m\000\000\000m\000m\000\000\tv\000\000\000\000\000m\000\000\000\000\000\000\000m\000\000\000\000\003\002\000u\000m\000m\000u\000u\000\000\000\000\003\n\000\000\000\000\000\000\002\177\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000u\000\000\000\000\000u\000u\000u\000u\000m\000\000\000m\000\000\000\000\000u\000u\000\000\000u\000u\000u\000\000\000\000\000m\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\000m\000\000\000\000\000m\000m\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001\154\003\146\000\000\000\000\000\153\000\000\000\000\000\000\000\000\000m\000\000\000\000\000m\000m\000m\000m\000\000\000~\000\000\000\000\000\000\000m\000m\000\000\000m\000m\000m\002\242\003\026\000\000\000\000\000\000\000\153\000\000\000\000\000\000\000\153\001\158\000\000\000\000\000\000\000\000\002\250\026\"\000\000\000\153\000\153\000\000\000\153\003\154\000\000\000\000\001\162\000\000\000\153\000\000\026&\tn\003\"\000\000\000\000\003\002\000\000\003\018\000\153\000\000\000\000\000\000\000\000\003\146\000\000\000\000\000\141\000\000\tr\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\000\000\000\153\000\000\000\000\002\242\003\026\000\000\000\000\000\000\000\141\000\000\000\000\000\153\000\141\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\000\141\000\141\000\000\000\141\000\141\000\000\026*\000\000\000\000\000\141\000\000\000\000\000\000\003\"\000\000\000\000\003\002\0032\003\018\000\141\000\153\000\153\000\000\000\000\003\n\000\000\000\000\000\000\004!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\153\000\000\000\000\000\153\000\153\000\153\000\153\003*\000\000\000\141\000\000\000\000\000\153\000\153\000\000\003\162\003:\000\153\000\000\000\000\000\141\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\0032\000\000\000\000\000\141\000\141\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001\154\000\133\000\000\000\000\000\133\000\000\000\000\000\000\000\000\000\141\000\000\000\000\000\141\000\141\000\141\000\141\000\000\000~\000\000\000\000\000\000\000\141\000\141\000\000\000\141\003:\000\141\002\242\003\026\000\000\000\000\000\000\000\133\000\000\000\000\000\000\000\133\001\158\000\000\000\000\000\000\000\000\002\250\026\"\000\000\000\133\000\133\000\000\000\133\000\133\000\000\000\000\001\162\000\000\000\133\000\000\026&\tn\000\133\000\000\000\000\003\002\000\000\003\018\000\133\000\000\000\000\000\000\000\000\000q\000\000\000\000\000q\000\000\tr\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\000\000\000\133\000\000\000\000\000q\000q\000\000\000\000\000\000\000q\000\000\000\000\000\133\000q\000\000\000\000\000\000\000\000\000\000\000q\000\000\000\000\000q\000q\000\000\000q\000q\000\000\026*\000\000\000\000\000q\000\000\000\000\000\000\000q\000\000\000\000\003\002\000\133\000q\000q\000\133\000\133\000\000\000\000\003\n\000\000\000\000\000\000\t)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\133\000\000\000\000\000\133\000\133\000\133\000\133\000q\000\000\000q\000\000\000\000\000\133\000\133\000\000\000\133\000\133\000\133\000\000\000\000\000q\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\000q\000\000\000\000\000q\000q\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001\154\000}\000\000\000\000\000}\000\000\000\000\000\000\000\000\000q\000\000\000\000\000q\000q\000q\000q\000\000\000~\000\000\000\000\000\000\000q\000q\000\000\000q\000q\000q\002\242\003\026\000\000\000\000\000\000\000}\000\000\000\000\000\000\000}\001\158\000\000\000\000\000\000\000\000\002\250\026\"\000\000\000}\000}\000\000\000}\000}\000\000\000\000\001\162\000\000\000}\000\000\026&\tn\000}\000\000\000\000\003\002\000\000\003\018\000}\000\000\000\000\000\000\000\000\000\129\000\000\000\000\000\129\000\000\tr\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000}\000\000\000}\000\000\000\000\002\242\003\026\000\000\000\000\000\000\000\129\000\000\000\000\000}\000\129\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\000\129\000\129\000\000\000\129\000\129\000\000\026*\000\000\000\000\000\129\000\000\000\000\000\000\000\129\000\000\000\000\003\002\000}\003\018\000\129\000}\000}\000\000\000\000\003\n\000\000\000\000\000\000\002\161\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000}\000\000\000\000\000}\000}\000}\000}\003*\000\000\000\129\000\000\000\000\000}\000}\000\000\000}\000}\000}\000\000\000\000\000\129\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\000\000\000\170\000\174\000\000\000v\000\000\000\182\000\000\000\186\001\146\001\150\000z\000\000\000\000\000\000\000\129\000\000\000\000\000\129\000\129\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001\154\003\146\000\000\000\000\000\149\000\000\000\000\000\000\000\000\000\129\000\000\000\000\000\129\000\129\000\129\000\129\000\000\000~\000\000\000\000\000\000\000\129\000\129\000\000\000\129\000\129\000\129\002\242\003\026\000\000\000\000\000\000\000\149\000\000\000\000\000\000\000\149\001\158\000\000\000\000\000\000\000\000\002\250\t~\000\000\000\149\000\149\000\000\000\149\003\154\000\000\000\000\001\162\000\000\000\149\000\000\tj\tn\003\"\000\000\000\000\003\002\000\000\003\018\000\149\000\000\000\000\000\000\000\000\000\137\000\000\000\000\000\137\000\000\tr\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003*\000\000\000\149\000\000\000\000\002\242\003\026\000\000\000\000\000\000\000\137\000\000\000\000\000\149\000\137\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\000\137\000\137\000\000\000\137\000\137\000\000\000\000\000\000\000\000\000\137\000\000\000\000\000\000\003\"\000\000\000\000\003\002\0032\003\018\000\137\000\149\000\149\000\000\000\000\003\n\000\000\000\000\000\000\tU\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\000\000\000\000\149\000\149\000\149\000\149\003*\000\000\000\137\000\000\000\000\000\149\000\149\000\000\000\149\003:\000\149\000\000\000\000\000\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\185\0032\000\000\000\000\000\137\000\137\000\000\000\000\003\n\000\000\000\000\r\185\000\000\r\185\012\t\012\t\000\000\r\185\000\000\000\000\012\t\000\000\000\137\r\185\000\173\000\137\000\137\000\137\000\137\r\185\000\000\000\000\r\185\000\000\000\137\000\137\r\185\000\137\000\137\000\137\000\000\000\000\r\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\173\000\173\000\000\r\185\000\000\000\000\012\t\000\000\r\185\r\185\000\000\000\000\000\000\000\000\000\000\000\173\000\000\000\000\000\000\000\000\000\000\000\173\000\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\173\000\000\000\000\003\002\000\000\000\173\012\t\000\000\r\185\000\000\000\000\r\185\000\000\000\000\000\000\001\242\000\000\000\190\000\000\000\000\001\246\000\000\000\000\001\250\r\185\000\000\000\000\000\000\000\000\r\185\r\185\r\185\000\173\r\185\r\185\000\000\r\185\000\000\000\000\002\002\000\000\000\000\002\006\r\185\000\000\000\000\r\185\000\000\002\018\002\022\000\000\002\030\000\000\007\030\000\000\000\000\000\000\000\000\002&\000\000\002*\r\185\000\000\000\000\000\000\000\000\r\185\r\185\012\t\002.\0022\000\000\000\173\br\0026\001\"\002:\000\000\000\000\003\n\002>\002B\000\000\000\000\002F\002J\000\000\000\000\000\000\000\000\000\000\015u\000\000\000\173\015u\000\000\000\000\000\000\000\000\000\000\000\173\000\000\002N\000\000\000\000\000\000\000\000\002R\000\173\000\173\000\n\000\000\000\000\000\000\000\000\000\000\000\000\015u\015u\002Z\000\000\000\000\015u\000\000\000\000\000\000\015u\000\000\000\000\000\000\002^\t\249\015u\000\000\000\000\015u\015u\000\000\015u\015u\000\000\000\000\000\000\002b\015u\000\000\004\198\000\000\015u\002n\000\000\015u\t\249\015u\015u\000\000\000\000\000\000\002\134\000\000\000\000\000\000\000\000\002v\002~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015u\000\000\015u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\190\000\000\000\000\001\246\000\000\000\000\001\250\000\000\000\000\000\000\000\000\000\000\000\000\015u\015u\000\000\015u\000\000\000\000\000\000\015u\000\000\002\002\000\000\000\000\002\006\000\000\000\000\000\000\000\000\000\000\002\018\002\022\000\000\002\030\000\000\004\198\015u\000\000\015u\000\000\002&\000\000\002*\000\000\015u\015u\015u\000\000\015u\015u\015u\002.\0022\000\000\000\000\000\000\0026\001\"\002:\000\000\000\000\000\000\002>\002B\000\000\000\000\002F\002J\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\190\000\000\000\000\001\246\000\000\000\000\001\250\000\000\000\000\002N\000\000\000\000\000\000\000\000\002R\000\000\012b\000\n\000\000\000\000\000\000\000\000\002\002\000\000\000\000\002\006\002Z\000\000\000\000\000\000\000\000\002\018\002\022\000\000\002\030\000\000\000\000\002^\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\002b\000\000\002.\0022\000\000\000\000\002n\0026\001\"\002:\000\000\t\249\000\000\002>\002B\002\134\000\000\002F\002J\000\000\002v\002~\000\000\000\000\001\249\000\000\000\000\001\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002N\000\000\000\000\000\000\000\000\002R\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\001\249\001\249\002Z\000\000\000\000\001\249\000\000\000\000\000\000\001\249\000\000\000\000\000\000\002^\000\000\001\249\000\000\000\000\001\249\001\249\000\000\001\249\001\249\000\000\000\000\000\000\002b\001\249\000\000\000\000\000\000\001\249\002n\000\000\001\249\000\000\001\249\001\249\000\000\000\000\000\000\002\134\000\000\000\000\000\000\000\000\002v\002~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\249\000\000\001\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\190\000\000\000\000\001\246\000\000\000\000\001\250\000\000\000\000\000\000\000\000\000\000\001\249\rJ\000\000\001\249\t\249\000\000\000\000\001\249\000\000\000\000\002\002\000\000\000\000\002\006\000\000\000\000\000\000\000\000\000\000\002\018\002\022\000\000\002\030\000\000\001\249\000\000\001\249\000\000\000\000\002&\000\000\002*\rR\001\249\001\249\000\000\001\249\001\249\001\249\000\000\002.\0022\000\000\000\000\000\000\0026\001\"\002:\000\000\000\000\000\000\002>\002B\000\000\000\000\002F\002J\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\190\000\000\000\000\001\246\000\000\000\000\001\250\000\000\000\000\002N\000\000\000\000\000\000\000\000\002R\000\000\018\202\000\n\000\000\000\000\000\000\000\000\002\002\000\000\000\000\002\006\002Z\000\000\000\000\000\000\000\000\002\018\002\022\000\000\002\030\000\000\000\000\002^\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\002b\000\000\002.\0022\000\000\000\000\002n\0026\001\"\002:\000\000\000\000\000\000\002>\002B\002\134\000\000\002F\002J\000\000\002v\002~\000\000\000\000\001\242\000\000\000\190\000\000\000\000\001\246\000\000\000\000\001\254\000\000\000\000\002N\000\000\000\000\000\000\000\000\002R\000\000\000\000\000\n\000\000\000\000\000\000\000\000\002\002\000\000\000\000\002\006\002Z\000\000\000\000\000\000\000\000\002\018\t\030\000\000\002\030\000\000\000\000\002^\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\002b\000\000\002.\0022\000\000\000\000\002n\0026\001\"\002:\000\000\000\000\000\000\002>\002B\002\134\000\000\002F\002J\000\000\002v\002~\000\000\000\000\001\242\000\000\000\190\000\000\000\000\001\246\000\000\000\000\001\254\000\000\000\000\002N\000\000\000\000\000\000\000\000\002f\000\000\000\000\000\n\000\000\000\000\000\000\000\000\002\002\000\000\000\000\002\006\002Z\000\000\000\000\000\000\000\000\002\018\t\014\000\000\002\030\000\000\000\000\002^\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\002j\000\000\002.\0022\000\000\000\000\002n\0026\001\"\002:\000\000\000\000\000\000\002>\002B\002r\000\000\002F\002J\000\000\002v\002~\000\000\000\000\001\242\000\000\000\190\000\000\000\000\001\246\000\000\000\000\001\254\000\000\000\000\002N\000\000\000\000\000\000\000\000\002f\000\000\000\000\000\n\000\000\000\000\000\000\000\000\002\002\000\000\000\000\002\006\002Z\000\000\000\000\000\000\000\000\002\018\b\246\000\000\002\030\000\000\000\000\002^\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\002j\000\000\002.\0022\000\000\000\000\002n\0026\001\"\002:\000\000\000\000\000\000\002>\002B\002r\000\000\002F\002J\000\000\002v\002~\000\000\000\000\001\242\000\000\000\190\000\000\000\000\001\246\000\000\000\000\001\254\000\000\000\000\002N\000\000\000\000\000\000\000\000\002f\000\000\000\000\000\n\000\000\000\000\000\000\000\000\002\002\000\000\000\000\002\006\002Z\000\000\000\000\000\000\000\000\002\018\002V\000\000\002\030\000\000\000\000\002^\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\002j\000\000\002.\0022\000\000\000\000\002n\0026\001\"\002:\000\000\000\000\000\000\002>\002B\002r\000\000\002F\002J\000\000\002v\002~\000\000\000R\000\000\000\000\000\000\000\000\000\000\007\245\020v\000\000\000\000\000\000\007\245\002N\000\000\000\000\000\000\007\245\002f\007\245\020z\000\n\001\150\000\000\007\245\007\245\000\000\022\006\000\000\000\000\002Z\020~\000\000\020\130\000\000\000\000\000\000\020\134\000\000\000\000\000\000\002^\000\000\020\138\000\000\007\245\000\000\000\000\000\000\020\142\000\000\000\000\020\150\000\000\002j\000\000\020\154\007\245\000\000\000\000\002n\007\245\020\158\000\000\000\000\000\000\000\000\000\000\000\000\002r\000\000\000\000\000\000\022\002\002v\002~\007\245\007\245\020\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\245\000\000\000\000\007\245\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\245\000\000\000\000\000\000\000\000\007\245\007\245\000\000\000\000\0121\000\000\020\166\000\000\000\000\020\170\007\245\000\000\000\000\000\000\007\245\000\000\000\000\000\000\000\000\000\000\022\018\000\000\020\174\000\000\000\000\007\245\000\000\020\178\000\n\020\182\000\000\020\186\020\190\000\000\020\194\007\245\000\000\000\000\000\000\000\000\007\245\020\198\000\000\000\000\020\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\190\000\000\020\206\002\n\000\000\000\000\002\014\020\210\020\214\0121\000\000\000\000\000\000\000\000\000\000\000\000\007\245\000\000\000\000\007\245\007\245\000\000\002\002\007\245\000\000\002\006\000\000\000\000\007\245\007\245\000\000\002\"\004\146\007\245\002\030\000\000\004\166\000\000\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\206\0022\000\000\000\000\000\000\004\210\001\"\002:\000\185\000\000\000\000\004\214\004\218\000\000\000\000\004\222\002J\000\000\001\242\000\000\000\190\000\000\000\000\001\246\000\000\000\000\001\254\000\000\000\000\000\000\000\000\000\000\000\000\004\226\002\242\003\026\000\000\000\000\004\230\000\000\000\000\000\n\002\002\000\000\000\000\002\006\000\000\000\000\000\000\002\250\004\238\002\018\004\178\000\000\002\030\000\185\000\185\000\000\000\000\000\000\000\000\002&\000\000\002*\000\000\000\185\000\000\000\000\003\002\000\000\003\018\000\000\002.\0022\004\242\000\000\000\000\0026\001\"\002:\004\250\000\000\000\000\002>\002B\000\000\000\000\002F\002J\004\254\000\000\000\000\000\000\000\000\005\006\002~\000\000\000\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002N\000\000\000\000\000\000\000\000\002f\000\000\000\000\000\n\000\000\000\000\006j\000\000\000\000\000\000\000\000\000\000\002Z\000\000\000\000\000\000\003\225\000\000\003\225\000\000\000\000\003\225\000\000\002^\003\225\000\000\000\000\000\185\000\000\000\000\000\000\000\000\000\000\000\000\003\n\000\000\002j\000\000\000\000\000\000\003\225\000\000\002n\003\225\000\000\000\000\000\000\000\000\000\185\003\225\003\225\002r\003\225\000\000\000\000\000\185\002v\002~\000\000\003\225\000\000\003\225\000\000\000\185\000\185\000\000\000\000\000\000\000\000\000\000\003\225\003\225\000\000\000\000\000\000\003\225\003\225\003\225\000\000\000\000\000\000\003\225\003\225\000\000\000\000\003\225\003\225\000\000\001\242\000\000\000\190\000\000\000\000\001\246\000\000\000\000\001\254\000\000\000\000\000\000\000\000\000\000\000\000\003\225\000\000\000\000\000\000\000\000\003\225\000\000\000\000\003\225\002\002\000\000\000\000\002\006\000\000\000\000\000\000\000\000\003\225\002\018\012N\000\000\002\030\000\000\000\000\000\000\000\000\000\000\000\000\002&\000\000\002*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002.\0022\003\225\000\000\000\000\0026\001\"\002:\003\225\000\000\000\000\002>\002B\000\000\000\000\002F\002J\003\225\000\000\000\000\000\000\000\000\003\225\003\225\000\000\000\000\000\000\000\000\020v\000\000\000\000\000\000\000\000\002N\000\000\000\000\000\000\000\000\002f\000\000\020z\000\n\000\000\000\000\000\000\000\000\000\000\023\006\000\000\000\000\002Z\020~\000\000\020\130\012]\012]\000\000\020\134\000\000\000\000\000\000\002^\000\000\020\138\000\000\000\000\000\000\000\000\000\000\020\142\000\000\000\000\020\150\000\189\002j\000\000\020\154\000\000\000\000\000\000\002n\000\000\020\158\000\000\000\000\000\000\000\000\000\000\000\000\002r\000\000\000\000\000\000\020v\002v\002~\012]\000\000\020\162\002\242\003\026\000\000\000\000\000\000\000\000\020z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\250\000\000\020~\000\000\020\130\000\000\000\189\000\189\020\134\000\000\000\000\0121\000\000\012]\020\138\020\166\000\189\000\000\020\170\003\002\020\142\003\018\000\000\020\150\000\000\000\000\000\000\020\154\000\000\000\000\000\000\020\174\000\000\020\158\000\000\000\000\020\178\000\n\020\182\000\000\020\186\020\190\000\000\020\194\023\130\022\150\000\000\0121\003*\020\162\020\198\000\000\000\000\020\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\206\000\000\000\000\000\000\000\000\020\210\020\214\012]\000\000\000\000\0121\000\000\020\166\000\000\000\000\020\170\000\000\000\000\000\000\000\000\000\189\000\000\000\000\000\000\000\000\000\000\000\000\003\n\020\174\000\000\000\000\000\000\000\000\020\178\000\n\020\182\000\000\020\186\020\190\000\000\020\194\000\189\r~\000\000\000\000\r\134\000\000\020\198\000\189\000\000\020\202\000\000\000\000\000\000\000\000\000\000\000\189\000\189\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\206\000\000\000\000\r\150\r\158\020\210\020\214\0121\002M\000\000\000\000\000\000\002M\000\000\000\000\000\000\000\000\000\000\r\166\000\000\000\000\002M\002M\000\000\r\174\r\182\000\000\000\000\000\000\001E\002M\000\000\001E\000\000\r\190\000\000\000\000\r\198\000\000\r\206\002M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\003\026\000\000\000\000\000\000\001E\000\000\000\000\000\000\001E\000\000\r\214\000\000\002M\000\000\002\250\000\000\000\000\001E\001E\000\000\001E\001E\000\000\002M\000\000\000\000\001E\000\000\000\000\000\000\003\"\000\000\000\000\003\002\000\000\003\018\001E\000\000\000\000\000R\000V\000Z\000\146\000\000\000\150\000\000\000\154\000\158\000\162\000^\r\222\000\170\000\174\002M\000v\000\000\000\182\r\230\000\186\001\146\001\150\000z\003*\000\000\001E\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002M\001E\002M\001\154\000\000\000\000\000\000\000\000\000\000\002M\002M\000\000\r\238\r\246\002M\000\000\000\000\000\000\000\000\000\000\000~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\001E\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001\158\001-\000\000\000\000\001-\000\000\0262\000\000\000\000\000\000\000\000\000\000\001E\000\000\001E\001\162\000\000\000\000\000\000\026&\tn\001E\001E\000\000\001E\003:\001E\001-\001-\000\000\000\000\000\000\001-\000\000\000\000\000\000\001-\tr\000\000\000\000\000\000\000\000\002\250\000\000\000\000\001-\001-\000\000\001-\001-\000\000\000\000\000\000\001)\001-\000\000\001)\000\000\001-\000\000\000\000\003\002\000\000\003\018\001-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001)\001)\000\000\000\000\000\000\001)\000\000\000\000\000\000\001)\000\000\001-\000\000\001-\000\000\002\250\000\000\000\000\001)\001)\000\000\001)\001)\000\000\001-\t9\000\000\001)\000\000\000\000\000\000\001)\000\000\000\000\003\002\000\000\003\018\001)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001-\000\000\000\000\001-\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\001)\000\000\001)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001-\001)\001-\000\000\000\000\000\000\000\000\000\000\000\000\001-\001-\000\000\001-\001-\001-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001)\000\000\000\000\001)\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\000\000\001!\000\000\000\000\001!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001)\000\000\001)\000\000\000\000\000\000\000\000\000\000\000\000\001)\001)\000\000\001)\001)\001)\001!\001!\000\000\000\000\000\000\001!\000\000\000\000\000\000\001!\000\000\000\000\000\000\000\000\000\000\001!\000\000\000\000\001!\001!\000\000\001!\001!\000\000\000\000\000\000\003\146\001!\000\000\001M\000\000\001!\000\000\000\000\003\002\000\000\001!\001!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\003\026\000\000\000\000\000\000\001M\000\000\000\000\000\000\001M\000\000\001!\000\000\001!\000\000\002\250\000\000\000\000\001M\001M\000\000\001M\003\154\000\000\001!\000\000\000\000\001M\000\000\000\000\000\000\003\"\000\000\000\000\003\002\000\000\003\018\001M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001!\000\000\000\000\001!\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\003*\000\000\001M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001!\001M\001!\000\000\000\000\000\000\000\000\000\000\000\000\001!\001!\000\000\001!\001!\001!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\001M\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\000\000\003\146\000\000\000\000\001A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001M\000\000\001M\000\000\000\000\000\000\000\000\000\000\000\000\001M\001M\000\000\003\162\003:\001M\002\242\003\026\000\000\000\000\000\000\001A\000\000\000\000\000\000\001A\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\001A\001A\000\000\001A\001A\000\000\000\000\000\000\0019\001A\000\000\0019\000\000\003\"\000\000\000\000\003\002\000\000\003\018\001A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\003\026\000\000\000\000\000\000\0019\000\000\000\000\000\000\0019\000\000\003*\000\000\001A\000\000\002\250\000\000\000\000\0019\0019\000\000\0019\0019\000\000\001A\000\000\000\000\0019\000\000\000\000\000\000\0019\000\000\000\000\003\002\000\000\003\018\0019\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\001A\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\003*\000\000\0019\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001A\0019\001A\000\000\000\000\000\000\000\000\000\000\000\000\001A\001A\000\000\001A\003:\001A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0019\000\000\000\000\0019\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\000\000\001%\000\000\000\000\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0019\000\000\0019\000\000\000\000\000\000\000\000\000\000\000\000\0019\0019\000\000\0019\0019\0019\001%\001%\000\000\000\000\000\000\001%\000\000\000\000\000\000\001%\000\000\000\000\000\000\000\000\000\000\001%\000\000\000\000\001%\001%\000\000\001%\001%\000\000\000\000\000\000\0011\001%\000\000\0011\000\000\001%\000\000\000\000\003\002\000\000\001%\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\003\026\000\000\000\000\000\000\0011\000\000\000\000\000\000\0011\000\000\001%\000\000\001%\000\000\002\250\000\000\000\000\0011\0011\000\000\0011\0011\000\000\001%\000\000\000\000\0011\000\000\000\000\000\000\0011\000\000\000\000\003\002\000\000\003\018\0011\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001%\000\000\000\000\001%\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\0011\000\000\0011\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001%\0011\001%\000\000\000\000\000\000\000\000\000\000\000\000\001%\001%\000\000\001%\001%\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0011\000\000\000\000\0011\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\000\000\0015\000\000\000\000\0015\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0011\000\000\0011\000\000\000\000\000\000\000\000\000\000\000\000\0011\0011\000\000\0011\0011\0011\002\242\003\026\000\000\000\000\000\000\0015\000\000\000\000\000\000\0015\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\0015\0015\000\000\0015\0015\000\000\000\000\000\000\003\146\0015\000\000\001I\000\000\0015\000\000\000\000\003\002\000\000\003\018\0015\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\003\026\003\146\000\000\000\000\001I\000\000\000\000\000\000\001I\000\000\003*\000\000\0015\000\000\002\250\000\000\000\000\001I\001I\000\000\001I\003\154\000\000\0015\000\000\000\000\001I\002\242\003\026\000\000\003\"\000\000\000\000\003\002\000\000\003\018\001I\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\000\000\000\000\000\000\000\000\209\003\154\0015\000\000\000\000\0015\000\000\000\000\000\000\003\n\003\"\000\000\000\000\003\002\003*\003\018\001I\000\197\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0015\001I\0015\000\000\000\000\000\000\000\000\000\000\000\000\0015\0015\000\000\0015\0015\0015\000\000\003*\002\242\003\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\001I\002\250\000\000\000\000\003\n\000\000\000\000\000\197\000\197\000\000\001=\000\000\000\000\001=\000\000\000\000\000\000\003\"\000\000\000\000\003\002\001I\003\018\001I\000\000\0032\000\000\000\000\000\000\000\000\001I\001I\003\n\001I\003:\001I\002\242\003\026\000\000\000\000\000\000\001=\000\000\000\000\000\000\001=\000\209\000\000\000\000\003*\000\000\002\250\000\000\000\209\001=\001=\000\000\001=\001=\000\000\000\000\000\209\003:\001=\000\000\000\000\000\000\003\"\000\000\023n\003\002\023v\003\018\001=\000\000\000\000\000\000\000\000\000\000\000\000\023~\000\000\000\000\000\000\000\000\023\158\000\000\000\000\000\000\0032\000\000\000\000\020z\000\000\000\000\000\000\003\n\000\000\000\000\003*\000\000\001=\000\000\020~\000\000\020\130\000\000\000\000\000\000\020\134\000\197\000\000\001=\000\000\000\000\020\138\000\000\000\197\000\000\000\000\000\000\020\142\000\000\000\000\020\150\000\197\000\197\000\000\020\154\000\000\000\000\000\000\000\000\000\000\020\158\000\000\000\000\000\000\000\000\0032\000\000\000\000\001=\000\000\000\000\000\000\003\n\000\000\000\000\000\000\020\162\023\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001=\000\000\001=\000\000\000\000\000\000\000\000\000\000\000\000\001=\001=\000\000\001=\001=\001=\000\000\000\000\000\000\020\166\006A\000\000\020\170\000\000\000\000\006A\000\000\000\000\000\000\000\000\006A\000\000\006A\000\000\000\000\020\174\000\000\006A\006A\000\000\020\178\000\n\020\182\000\000\020\186\020\190\000\000\020\194\000\000\000\000\000\000\000\000\000\000\000\000\020\198\000\000\000\000\020\202\006A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006A\000\000\020\206\000\000\006A\000\000\000\000\020\210\020\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015A\006A\006A\015A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004j\000\000\000\000\006A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006A\000\000\000\000\015A\015A\006A\006A\000\000\000\000\000\000\000\000\005\030\000\000\000\000\000\000\006A\000\000\000\000\015A\006A\000\000\000\000\015A\000\000\015A\015A\000\000\000\000\005&\000\000\006A\006*\000\000\000\000\015A\000\000\000\000\015A\000\000\015A\006A\000\000\000\000\000\000\000\000\006A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\242\000\000\000\190\000\000\000\000\004\170\015A\000\000\004\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006A\000\000\000\000\006A\006A\000\000\002\002\006A\0066\000\000\000\000\000\000\006A\006A\000\000\006\142\006\154\006A\000\000\000\000\006\174\000\000\000\000\000\000\000\000\002&\000\000\002*\015A\015A\000\000\015A\000\000\006:\000\000\015A\006\222\0022\000\000\000\000\000\000\006\234\001\"\002:\006B\000\000\000\000\006\242\006\246\015A\000\000\006\250\000\000\015A\015A\000\000\000\000\000\000\000\000\000\000\015A\000\000\000\000\000\000\015A\015A\000\000\000\000\006\254\007\002\000\000\000\000\000\000\000\000\007\006\000\000\000\000\000\n\000\000\001\242\000\000\000\190\000\000\000\000\012F\000\000\007\014\012J\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\000\000\007*\000\000\012\182\012\162\000\000\000\000\0072\r\254\000\000\000\000\000\000\000\000\002&\000\000\002*\0076\000\000\000\000\000\000\000\000\007>\002~\000\000\012\186\0022\000\000\000\000\000\000\012\190\001\"\002:\000\000\000\000\000\000\012\194\012\198\000\000\020v\012\202\000\000\000\000\000\000\000\000\000\000\000\000\020v\000\000\000\000\000\000\020z\000\000\000\000\000\000\000\000\000\000\006\254\012\206\020z\000\000\000\000\020~\012\210\020\130\000\000\000\n\000\000\020\134\000\000\020~\000\000\020\130\000\000\020\138\012\218\020\134\000\000\000\000\000\000\020\142\000\000\020\138\020\150\000\000\000\000\000\000\020\154\020\142\000\000\000\000\020\150\000\000\020\158\000\000\020\154\000\000\000\000\000\000\012\222\000\000\020\158\000\000\000\000\022\222\012\230\000\000\000\000\000\000\020\162\000\000\000\000\023F\000\000\012\234\000\000\000\000\020\162\000\000\012\242\002~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0121\000\000\020\166\000\000\000\000\020\170\000\000\000\000\0121\000\000\020\166\000\000\000\000\020\170\000\000\000\000\000\000\000\000\020\174\000\000\000\000\000\000\000\000\020\178\000\n\020\182\020\174\020\186\020\190\000\000\020\194\020\178\000\n\020\182\000\000\020\186\020\190\020\198\020\194\000\000\020\202\000\000\t\241\000\000\000\000\020\198\000\000\000\000\020\202\000\000\000\000\000\000\000\000\000\000\t\241\020\206\000\000\000\000\000\000\000\000\020\210\020\214\0121\020\206\000\000\t\241\000\000\t\241\020\210\020\214\0121\t\241\000\000\000\000\000\000\000\000\000\000\t\241\000\000\000\000\000\000\b\173\000\000\t\241\000\000\000\000\t\241\000\000\000\000\000\000\t\241\021^\000\000\b\173\000\000\000\000\t\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\173\000\000\b\173\000\000\000\000\000\000\b\173\000\000\t\241\000\000\000\000\000\000\b\173\000\000\000\000\000\000\000\000\000\000\b\173\000\000\000\000\b\173\000\000\000\000\000\000\b\173\000\000\000\000\000\000\000\000\000\000\b\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\241\000\000\000\000\t\241\000\000\000\000\000\000\000\000\b\173\023\166\000\000\000\000\000\000\000\000\000\000\000\000\t\241\000\000\000\000\000\000\000\000\t\241\t\241\t\241\000\000\t\241\t\241\000\000\t\241\000\000\000\000\000\000\000\000\000\000\000\000\t\241\000\000\000\000\t\241\b\173\000\000\000\000\b\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\241\000\000\b\173\000\000\000\000\t\241\t\241\b\173\b\173\b\173\000\000\b\173\b\173\006\229\b\173\000\000\000\000\000\000\000\000\000\000\000\000\b\173\000\000\000\000\b\173\006\229\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\229\000\000\006\229\b\173\000\000\000\000\006\229\000\000\b\173\b\173\000\000\000\000\006\229\000\000\000\000\000\000\021\230\000\000\006\229\000\000\000\000\006\229\000\000\000\000\000\000\006\229\000\000\000\000\020z\000\000\000\000\006\229\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020~\000\000\020\130\024\174\000\000\000\000\020\134\000\000\006\229\000\000\000\000\000\000\020\138\000\000\000\000\000\000\000\000\000\000\020\142\000\000\000\000\020\150\000\000\000\000\000\000\020\154\000\000\000\000\000\000\000\000\000\000\020\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\229\000\000\000\000\006\229\000\000\000\000\000\000\000\000\020\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\229\000\000\000\000\000\000\000\000\006\229\006\229\006\229\000\000\006\229\006\229\000\000\006\229\000\000\000\000\000\000\000\000\000\000\000\000\006\229\000\000\000\000\006\229\020\166\000\000\000\000\020\170\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\229\000\000\020\174\000\000\000\000\006\229\006\229\020\178\000\n\020\182\000\000\020\186\020\190\021\254\020\194\000\000\000\000\000\000\000\000\000\000\000\000\020\198\000\000\000\000\020\202\020z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020~\000\000\020\130\020\206\000\000\000\000\020\134\000\000\020\210\020\214\000\000\000\000\020\138\000\000\000\000\000\000\020v\000\000\020\142\000\000\000\000\020\150\000\000\000\000\000\000\020\154\000\000\000\000\020z\000\000\000\000\020\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020~\000\000\020\130\000\000\000\000\000\000\020\134\000\000\020\162\000\000\000\000\000\000\020\138\000\000\000\000\000\000\000\000\000\000\020\142\000\000\000\000\020\150\000\000\000\000\000\000\020\154\000\000\000\000\000\000\000\000\000\000\020\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\166\000\000\000\000\020\170\000\000\000\000\000\000\000\000\022\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\174\000\000\000\000\000\000\000\000\020\178\000\n\020\182\000\000\020\186\020\190\000\000\020\194\000\000\000\000\000\000\000\000\000\000\000\000\020\198\000\000\000\000\020\202\020\166\000\000\000\000\020\170\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\206\000\000\020\174\000\000\000\000\020\210\020\214\020\178\000\n\020\182\000\000\020\186\020\190\022\218\020\194\000\000\000\000\000\000\000\000\000\000\000\000\020\198\000\000\000\000\020\202\020z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020~\000\000\020\130\020\206\000\000\000\000\020\134\000\000\020\210\020\214\000\000\000\000\020\138\000\000\000\000\000\000\023B\000\000\020\142\000\000\000\000\020\150\000\000\000\000\000\000\020\154\000\000\000\000\020z\000\000\000\000\020\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020~\000\000\020\130\000\000\000\000\000\000\020\134\000\000\020\162\000\000\000\000\000\000\020\138\000\000\000\000\000\000\000\000\000\000\020\142\000\000\000\000\020\150\000\000\000\000\000\000\020\154\000\000\000\000\000\000\000\000\000\000\020\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\166\000\000\000\000\020\170\000\000\000\000\000\000\000\000\020\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\174\000\000\000\000\000\000\000\000\020\178\000\n\020\182\000\000\020\186\020\190\000\000\020\194\000\000\000\000\000\000\000\000\000\000\000\000\020\198\000\000\000\000\020\202\020\166\000\000\000\000\020\170\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\206\000\000\020\174\000\000\000\000\020\210\020\214\020\178\000\n\020\182\000\000\020\186\020\190\020v\020\194\000\000\000\000\000\000\000\000\000\000\000\000\020\198\000\000\000\000\020\202\020z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020~\000\000\020\130\020\206\000\000\000\000\020\134\000\000\020\210\020\214\000\000\000\000\020\138\000\000\000\000\000\000\020v\000\000\020\142\000\000\000\000\020\150\000\000\000\000\000\000\020\154\000\000\000\000\020z\000\000\000\000\020\158\000\000\000\000\000\000\015Y\000\000\000\000\015Y\020~\000\000\020\130\000\000\000\000\000\000\020\134\000\000\024z\000\000\000\000\000\000\020\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\150\015Y\015Y\000\000\020\154\000\000\000\000\000\000\000\000\000\000\020\158\000\000\000\000\000\000\000\000\000\000\015Y\000\000\020\166\000\000\015Y\020\170\015Y\015Y\000\000\000\000\020\162\000\000\000\000\000\000\004\198\000\000\015Y\000\000\020\174\015Y\000\000\015Y\000\000\020\178\000\n\020\182\000\000\020\186\020\190\000\000\020\194\000\000\000\000\000\000\000\000\000\000\000\000\020\198\000\000\000\000\020\202\020\166\000\000\000\000\020\170\000\000\000\000\000\000\015Y\000\000\000\000\000\000\000\000\000\000\000\000\020\206\000\000\020\174\000\000\000\000\020\210\020\214\020\178\024\166\020\182\000\000\020\186\020\190\000\000\020\194\000\229\000\000\000\000\000\229\000\000\000\000\020\198\000\000\000\000\020\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015Y\015Y\000\000\015Y\000\000\000\000\020\206\015Y\000\229\000\229\000\000\020\210\020\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015Y\000\000\000\229\000\000\015Y\015Y\000\229\003\146\000\229\000\229\001\017\015Y\000\000\000\000\000\000\015Y\015Y\000\000\000\229\000\000\000\000\003\002\000\000\000\229\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\003\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\250\000\000\000\229\000\000\001\017\000\000\001\017\003\154\000\000\003\146\000\000\000\000\001\005\000\000\000\000\000\000\003\"\000\000\000\000\003\002\000\000\003\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\242\003\026\000\000\000\000\000\000\000\000\000\000\000\229\000\000\000\000\000\229\000\000\000\000\003*\003\n\002\250\000\000\000\000\000\000\001\005\000\253\001\005\001\005\000\253\000\000\000\000\000\000\000\000\000\229\000\000\000\000\003\"\000\229\000\229\003\002\000\000\003\018\000\000\000\000\000\000\000\000\000\000\000\000\000\229\000\229\000\000\002\242\003\026\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\001\017\000\000\000\000\000\000\003\n\002\250\000\000\003*\000\000\000\253\000\000\000\253\000\253\000\000\000\233\000\000\000\000\000\233\001\017\000\000\000\000\000\253\001\017\001\017\003\002\000\000\003\018\000\000\000\000\000\000\000\000\000\000\000\000\003\162\003:\000\000\000\000\000\000\000\000\000\000\000\233\000\233\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\001\005\000\000\000\000\003*\003\n\000\233\000\000\000\000\000\000\000\233\000\245\000\233\000\233\000\245\000\000\000\000\000\000\000\000\001\005\000\000\000\000\000\233\001\005\001\005\003\002\000\000\000\233\000\000\000\000\000\000\000\000\000\000\000\000\001\005\003:\000\000\002\242\003\026\000\000\000\000\000\000\000\000\000\000\000\253\000\000\000\000\000\253\000\000\000\000\000\000\003\n\002\250\000\000\000\233\000\000\000\245\000\000\000\245\000\245\000\000\000\249\000\000\000\000\000\249\000\253\000\000\000\000\000\245\000\253\000\253\003\002\000\000\003\018\000\000\000\000\000\000\000\000\000\000\000\000\000\253\000\253\000\000\000\000\000\000\000\000\000\000\002\242\003\026\000\000\000\000\000\000\000\000\000\000\000\233\000\000\000\000\000\233\000\000\000\000\000\245\003\n\002\250\000\000\000\000\000\000\000\249\003\146\000\249\000\249\001\r\000\000\000\000\000\000\000\000\000\233\000\000\000\000\000\249\000\233\000\233\003\002\000\000\003\018\000\000\000\000\000\000\000\000\000\000\000\000\000\233\000\233\000\000\002\242\003\026\000\000\000\000\000\000\000\000\000\000\000\245\000\000\000\000\000\245\000\000\000\000\000\000\003\n\002\250\000\000\003*\000\000\001\r\000\000\001\r\003\154\000\000\001\001\000\000\000\000\001\001\000\245\000\000\000\000\003\"\000\245\000\245\003\002\000\000\003\018\000\000\000\000\000\000\000\000\000\000\000\000\000\245\000\245\000\000\000\000\000\000\000\000\000\000\002\242\003\026\000\000\000\000\000\000\000\000\000\000\000\249\000\000\000\000\000\249\000\000\000\000\003*\003\n\002\250\000\000\000\000\000\000\001\001\000\000\001\001\001\001\000\000\000\000\000\000\000\000\000\000\000\249\000\000\000\000\003\"\000\249\000\249\003\002\000\000\003\018\000\000\000\000\000\000\000\000\000\000\000\000\000\249\000\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\001\r\000\000\000\000\000\000\003\n\000\000\000\000\003*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\r\000\000\000\000\000\000\001\r\001\r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\r\003:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0032\000\000\000\000\001\001\000\000\000\000\000\000\003\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\001\000\000\000\000\000\000\001\001\001\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\001\001\001"))
1635
1636 let lhs =
1637 (16, "\000\012\000\011\000\n\000\t\000\b\000\007\000\006\000\005\000\004\000\003\000\002\000\001\000\000\0018\0018\0018\0017\0017\0017\0017\0016\0016\0016\0016\0015\0015\0015\0015\0015\0015\0015\0015\0015\0015\0015\0015\0015\0015\0015\0014\0014\0014\0014\0014\0014\0014\0014\0014\0014\0014\0014\0014\0014\0014\0013\0013\0013\0013\0013\0013\0013\0013\0013\0013\0013\0013\0013\0013\0013\0012\0012\0012\0012\0012\0012\0012\0012\0012\0012\0012\0012\0012\0012\0012\0011\0011\0011\0011\0011\0011\0011\0011\0011\0011\0011\0011\0011\0011\0010\0010\0010\0010\001/\001.\001.\001.\001-\001-\001-\001,\001,\001,\001+\001+\001+\001*\001)\001(\001'\001'\001&\001&\001%\001%\001$\001$\001#\001#\001\"\001!\001 \001\031\001\030\001\029\001\028\001\027\001\026\001\025\001\024\001\023\001\022\001\021\001\020\001\019\001\019\001\018\001\018\001\017\001\017\001\016\001\016\001\015\001\015\001\015\001\015\001\014\001\014\001\014\001\014\001\r\001\r\001\r\001\r\001\012\001\012\001\012\001\012\001\011\001\011\001\011\001\011\001\n\001\n\001\n\001\n\001\t\001\t\001\t\001\b\001\b\001\b\001\b\001\b\001\007\001\006\001\005\001\005\001\005\001\005\001\005\001\004\001\004\001\003\001\002\001\001\001\001\001\001\001\001\001\000\001\000\001\000\001\000\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\255\000\254\000\253\000\253\000\252\000\252\000\252\000\252\000\252\000\252\000\252\000\252\000\251\000\251\000\250\000\250\000\250\000\249\000\248\000\247\000\247\000\246\000\246\000\245\000\244\000\243\000\243\000\242\000\242\000\241\000\241\000\240\000\240\000\239\000\238\000\237\000\237\000\236\000\236\000\235\000\235\000\234\000\234\000\233\000\233\000\232\000\231\000\231\000\230\000\230\000\230\000\230\000\230\000\230\000\229\000\229\000\229\000\228\000\227\000\226\000\226\000\226\000\226\000\225\000\225\000\224\000\223\000\223\000\223\000\222\000\222\000\222\000\222\000\222\000\221\000\221\000\221\000\221\000\220\000\220\000\220\000\220\000\219\000\219\000\219\000\219\000\218\000\217\000\217\000\216\000\216\000\216\000\215\000\214\000\214\000\214\000\213\000\212\000\212\000\211\000\211\000\211\000\210\000\210\000\210\000\209\000\209\000\209\000\209\000\208\000\208\000\207\000\207\000\207\000\207\000\207\000\207\000\206\000\206\000\206\000\205\000\205\000\205\000\205\000\205\000\205\000\205\000\204\000\203\000\202\000\202\000\201\000\201\000\200\000\200\000\199\000\199\000\198\000\198\000\197\000\197\000\196\000\196\000\196\000\196\000\196\000\196\000\196\000\196\000\195\000\194\000\193\000\193\000\192\000\192\000\191\000\191\000\190\000\190\000\189\000\189\000\188\000\188\000\187\000\187\000\186\000\186\000\185\000\185\000\184\000\184\000\183\000\183\000\182\000\182\000\181\000\181\000\180\000\180\000\179\000\179\000\178\000\178\000\177\000\177\000\176\000\176\000\175\000\175\000\174\000\174\000\173\000\173\000\172\000\172\000\171\000\171\000\170\000\170\000\169\000\169\000\168\000\168\000\168\000\167\000\167\000\166\000\166\000\165\000\165\000\164\000\164\000\163\000\163\000\162\000\162\000\161\000\161\000\160\000\160\000\160\000\159\000\159\000\158\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\157\000\156\000\156\000\156\000\156\000\155\000\154\000\153\000\152\000\151\000\150\000\149\000\148\000\147\000\146\000\145\000\144\000\143\000\143\000\143\000\142\000\142\000\142\000\141\000\141\000\141\000\141\000\140\000\140\000\139\000\138\000\137\000\136\000\135\000\134\000\133\000\132\000\131\000\130\000\130\000\129\000\129\000\129\000\128\000\128\000\127\000\127\000\127\000~\000~\000~\000}\000}\000|\000{\000{\000{\000z\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000x\000x\000w\000w\000w\000w\000w\000w\000w\000v\000v\000v\000v\000v\000v\000v\000u\000u\000u\000u\000u\000u\000u\000t\000t\000t\000t\000t\000t\000t\000s\000s\000s\000s\000s\000s\000s\000r\000r\000r\000r\000r\000r\000r\000q\000q\000p\000p\000o\000o\000n\000n\000m\000m\000l\000l\000k\000k\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000j\000i\000i\000h\000h\000g\000g\000f\000f\000e\000e\000d\000d\000c\000c\000b\000b\000b\000b\000b\000a\000a\000`\000`\000`\000`\000_\000^\000]\000]\000]\000\\\000\\\000\\\000[\000[\000[\000[\000[\000[\000Z\000Z\000Z\000Z\000Z\000Z\000Z\000Z\000Y\000Y\000Y\000Y\000Y\000Y\000Y\000Y\000X\000X\000X\000X\000X\000X\000X\000X\000W\000W\000W\000W\000W\000W\000W\000W\000V\000V\000U\000U\000T\000T\000T\000T\000T\000T\000T\000T\000T\000T\000T\000T\000T\000T\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000S\000R\000R\000R\000R\000R\000R\000R\000R\000R\000R\000R\000R\000R\000R\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000P\000P\000P\000P\000P\000O\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000M\000M\000M\000L\000K\000J\000I\000I\000H\000H\000G\000F\000F\000E\000E\000E\000D\000D\000C\000C\000B\000A\000A\000A\000A\000A\000A\000A\000@\000@\000@\000@\000@\000@\000@\000?\000?\000?\000?\000?\000>\000>\000=\000=\000=\000=\000=\000<\000<\000;\000;\000:\000:\0009\0009\0008\0008\0007\0007\0006\0006\0005\0005\0004\0004\0003\0003\0002\0002\0001\0001\0000\0000\000/\000/\000.\000.\000-\000-\000,\000,\000,\000,\000,\000,\000,\000,\000,\000,\000+\000+\000*\000*\000*\000*\000*\000*\000*\000*\000*\000*\000*\000*\000*\000*\000*\000*\000*\000*\000*\000)\000)\000)\000(\000(\000(\000(\000'\000'\000&\000%\000%\000%\000$\000$\000$\000$\000$\000$\000$\000$\000#\000#\000\"\000\"\000!\000 \000\031\000\031\000\031\000\031\000\030\000\030\000\030\000\029\000\029\000\028\000\028\000\028\000\027\000\027\000\027\000\026\000\026\000\026\000\026\000\026\000\026\000\026\000\025\000\025\000\024\000\024\000\024\000\024\000\023\000\023\000\023\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\021\000\021\000\021\000\021\000\021\000\021\000\021\000\020\000\020\000\020\000\020\000\020\000\020\000\020\000\019\000\019\000\019\000\019\000\019\000\019\000\019\000\018\000\018\000\018\000\018\000\018\000\018\000\018\000\017\000\017\000\017\000\017\000\017\000\016\000\016\000\015\000\014\000\014\000\014\000\014\000\014\000\r")
1638
1639 let goto =
1640 ((16, "\002\128\0020\000\000\000\000\000\000\000M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001q\000\000\001G\006H\000\000\000\000\000\r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\003v\000\000\005\172\003\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\015\000l\000\000\000\255\000\000\000\000\003\\\000\000\000\000\005*\000\000\000\000\000\000\000R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003x\000\000\000\000\001\246\019X\000\000\000\000\020\178\000\000\000\000\000\000\000\000\000\000\000\000\014\212\000\000\000\000\000\000\000\000\000\000\005\202\000\000\000\018\000\000\000\142\000\000\000\000\000\000\005\206\000\000\b\228\000\000\000\000\000\000\b\172\000\000\000\000\000\000\016\212\001O,\152\000\000\000\000\027\246\028\"\000\000\000N\000\000\030t1H6J1H\016\"1\160\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\1607 \000\000\000\000!\030)\0180\134\000\0002R\003~\000\000\000\000*\0185\228\000\000\000\000\000\000\001\022\000\000\000\1302\004+\b\000\000\000\000Ml\000\000\004>\000\000\006:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\170\000\000\000\000\006\160\000\000\018*\000\000\023\160\000\000\024\172\000\000!\028\000\000\"\164\000\000#\154\000\000%\"\000\000&\012\000\000&\170\000\0004z\000\000\017\196\000\000\000\000\000\000\000\000\t\130\000\000\000\000\000\000\000\000'\160\000\000(\138\000\000.\186\000\0004\168\000\0007x\000\0008:\000\000;F\000\000DJ\000\000H\224\000\000J\152\000\000L\234\000\000S\022\000\000U\168\000\000V&\000\000VV\000\000V\144\000\000\0070\000\000\000\000\b&\000\000\000\000\000\000\000\000\002\146\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000gM\210\000\000\000+\000\000\000\000\000d\t\176\000\000\000b\000\r\000 \000\166\001{\000\000\001$\000\000\000\000\001\146\000\000\001\156\000\000\000\00074\000\000\000\000\000\000\000,\nz\000\000;&7\236\000\000\000\000\000\000\000\000\011p\018\014\000\000\000\000\000\000\000\000\000\000\000\000;\128\000\000\000\000<\n\000\000\000\000=\178\000\000\004\026\000\000\b(\000\000\000\000\000\000\003@\000\0002\2428&\000\000\000\0008j9\018\000\000\t\028\000\000\n\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000V\168\000\0004\188\000\000Uz\000\000V\188\000\000V\234\000\000W\156\000\000W\198\000\000W\254\000\000X\002\000\000X\030\000\000X\146\000\000X\192\000\000X\226\000\000Y\018\000\000Y0\000\000Y>\000\000\000\000:\006\000\000\000\000\000\000:J\000\000\000\000\000\000\000\000\000\000\000\000N$\000\000\000\000\000\000\b\236\000\000\000\000\000\000\000\000#\232\000\000\000\000\000\000\000\000\001G\000\000\000\000N>\000\000\000\000\000\000\020,\000\197\000\000\000\000A\238\000\000\000\000:\234\000\000\000\000\000\000\000\026\012f+\022\000\000\000\000On\000\000O\152\000\000\000\000\000\000\r\\B<\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=\216\000\000\000\000\000\000\000\000BZ\014R\016\182\000\000?\244\000\000\000\000I\018\000\000\006V\000\000\000\000\024|\000\000\000\000\000\000\018\248\000\0003x\000\000\000\000O\154\000\000\000\000\000\000\021\028\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\028 \000\000\030\158\000\000\000}\000\000\000\000\000\000Yz\000\000Y\174\000\000Y\242\000\000ZZ\000\000Z|\000\000Z\148\000\000Z\198\000\000[ \000\000[0\000\000[j\000\000[\136\000\000[\210\000\000[\234\000\000\\v\000\000\000\000\000\000\000\000\000\000C2\000\000\000\000\003\146D\012\000\000\000\000D4\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\\\000\000;\156\000\000\000\000\000\000\000\000\000\000<2\000\000\000\000\000\000<\200\000\000\000\000\000\000\000\000\000\000\000\000\001\015\000\000\000\000\000\000\000\000\014H\000\000\021@\000\000\000\000\0022\005\238\000\000\000\000\000\000\000\000\020N\014\252\000\000\016\232\000\000\000\000\000\000\021\174\000\000\023\"\000\000&B\000\000\000\000\000\000\000\000\000\000\000\000(\192\000\000\000\000\000\183\000\000\000\000\000\000\0226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000b\022&\000\000\000\000\000\000\000\000\000\000\000\000\000\254\000\000\016\018\r\140\000\000\000\000\000\000\017:\000\000\000\000\000\000\002v\rT\000\000\002\184\000\000\000\000\000\000\000\000\014H\000\000\000\000\000D\nr\000\000\n\166\000\000\000\000\000\000\000\246\000\000\017\228\000\158\0007\000\000\000\000\000\000\002\208\000\222\000\000\000\000\003`\000\000\000\000\000\000\005H\000\000\000\000\000\000\000\252\000\000\000\000\000\000\000\000\000\000\003 \000\203\000w\000\000\000\000\000k\000\000\000\000\000\000\000\000\000\000\000\000O\186\000\000>\158\000\000\000\000\000\000P.\000\000\000\000\003b\000\000\000\000\000\000\003j\020*\000\000\000\000Db\000\000\000\000\004L\000\000\000\000\000\000\000\000\016p\000\000\023\204\000\000\000\000->\000\000\000\000\000\000D\180\000\000\000\000\000\000\000\000\000\0009\248\000\000\000\000\000\000\001O\000\000E\014\000\000\000\000\000\000\000\000\002\178\020\218\000\000E(\000\000\000\000\000\000\000\000\022\214\000\000E\218\000\000\000\000\000\000\000\000\003\168\000\000\n4\000\000\000\000J\190<\242\000\000\000\000\000\000PR\000\000\000\000\000\000\000\012\000\000P\226\000\000\000\000\000\000Q\004\000\000\000\000\000\230\000\000!\206\000\027=\136\000\000\000\000\000\000\021(\021~\000\000\000\000\000\000\000\000\000\000\000\000Kv\000\000\000\000O$\000\000\000\000O\220\000\000\006\130\000\000\0224\000\000\000\000\000\000\024\164\000\0003\146\000\000\000\000Q\154\000\000\000\000\000\000\025D\000\000\000\000\000\000\000\000\000\000\000\000\011\b\000\000\025\162\000\000\000\000\000\000\004\128\000\000\000\000\000\000\000\000\000\000\000\000\\\146\000\000E\242\000\000U\142\000\000]\000\000\000]\030\000\000]>\000\000]\192\000\000]\230\000\000]\234\000\000^(\000\000^T\000\000^~\000\000^\212\000\000^\246\000\000_\018\000\000_\022\000\000,\196\000\000\000\000\000\000\001F\000\000\004\252\000\000\018\218\003N\011*\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R*\000\000>\228\0044\027N\000\000\000\000\000\00000\000\000\003\128\024\134\000\000\000\000F\198\000\000\000\000\000h\000\000\025T\000\000\000\000EF\000\000\000\000\000\000G\002\000\000\000\000\000\000\000\000Gh\000\000\000\000\012\b\026\174\000\000\000\000G\204\000\000\000\000\027@\000\000\000\000G\224\000\000\000\000\000\000\000\000H.\000\000IB\000\000?f?\214\001N\0062\000\000\006\158\007\210\000\000\000\000\000\000\014\202\000\000\000\000\0200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0004\024\000\000@\020\000\000\000\000\000\000\019l\000\000\000\000\007\020\000\000\000\000\000\000\"`\002\152\000\000#V\000\000\000\000\000\000\000\000\004h\000\000\000\000\020b\000\000$L\000\000\000\0004\158\000\000\000\000\000\000Iv\000\000\000\000\0180\000\000\000\000\029\230\000\000\000\000Z\238\000\000\000\000\000\000I\196\000\000\000\000\000\000]N\000\000\000\000\000\000\000\000J*\000\000\000\000\000\000\000\000\r\178\022\222\000\000JT\000\000\000\000\000\000\000\000\000\000\000\000\021X\000\000\000\000\004\150\000\000\021\234\000\000\0180\000\000\000\000J|\000\000K\016\000\000@\250\000\000\000\000\000\0005\146\000\000\000\000\000\000KZ\000\000\000\000\012\222\000\000\000\000\030\030\000\000\000\000]\228\000\000\000\000\000\000K\240\000\000\000\000\000\000\000\000LV\000\000\000\000\015\234\030@\000\000\000\000M\018\000\000\000\000\004\166A\208\000\000\004\186\000\000\000\000\000\000\000\000\004\128\000\000A8\000\000$\222\000I%\212\000\000\001L\000\000\022\224\000\000\023\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\020&\202\002\006'\\\000\000\000\000\000\000\003.\000\000\024h\000\000\005&\000\000\000\000\018\208\001$(R\000\000\002\226\000\000\025^)H\000\000\000\000\026T\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\140\012 \000\000\005\164\000\000\000\000\000\000\000\000\005\238\000\000\026\230\000\000\000\000\000\000/\166RZ\000\000\000\000\000\000/:\000\000\000\000\000\000\000\000\005\1881\014\000\000\000\000\000\000\000\000\005\192\000\000\000\000\000\000\000\000\016R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\000\000\027\220\000\000\000\000\000\000R\240\000\000\r\022\000\000\000\000\000\000\0050\000\000\005\178\000\000\000\000\002\212\028\210\000\000\029d\000\000\000\000\000\000\003\156\000\000Sr\004\250S\134\000\000S\162\000\000\000\000\000\000\005h\000\000T2\005\190\000\000\000\000,X=z\000\000\005\204-\232\000\000\000\000.z\000\000\000\000\000\000\006\006\000\000TF\006\018\000\000\000\000\b\208\006\030\014p\000\000\0272\000\000\000\000\000\000\0068\000\000T\200\006\156\000\000\000\000\000\000\002H\000\000\002\192\000\000\000\000\000\000\000\000\000\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\022\000\000\000\000\007\186\000\000\000\160\000\000\000\000\000\000\000\180\000\000\000\000\000\000\000\000\000\000\007\188\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\026\000\000\000\000\001\150\000\000\t\196\000\000\000\000\000D\000\000\002\188\001R\002x\000\000\000\000\000\160\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0034\004\254\000\000\000\000\b\166\000\000\000\000\000\000\012\002\000\000\000\000\012\248\rR\000\000\000\000\000\000\000\000\r\238\015>\002\186\000\000\002\162\000\000\000\000\000\000\000\000\018\156\000\000\000\000\000\000\000\000\000\000\000\000\000E\000\000\000\000\007\202\000\000\000\000\001\208\000\000\019\002\000\000\000\000\000\000\b\020\000\000\000\000\019\200\000\000\000c\000\000\000\000\000\000\000\000\000\129\019`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\200\021V\000\000\000\000\000\000\000\000\024\162\024\250\b\206\000\000\026\022\000\000\000\000\000\000\000\000\000\000\000\000\018\178\000\000\003B\000\000\000\000\000\000\n\012\000\000\000<\000\000\000\000\000\000\023\212\000\000\000\000\0266\027\002\n\186\000\000\027x\000\000\000\000\000\000\000\000\000\000\000\000\002\170\002\128\000\000\002\202\000\000\028r\011\002\000\000\028\202\000\000\000\000\000\000\000\000\003\028\000\000\003\174\000\000\000\000\000\000\001f\000\000\001f\003\154\003\246\000\000\000\000\000\000\001l\014\176\000\000\000\000\000\000\000\000\000\000\002\236\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\016\000\000\000\000\000\005\000\000\014\248\004\180\004\164\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\142\000\000\000\000\024\244\029$\000\000\000\000\000\000\000\000\029\128\000\000\000\0006\132\000\000\005\130\000\000\000\000\000\000\000\000\014\250\000\000\000\000\000\000\000\000\000\000\001|\024\204\000\000\000\000\026~\000\000\000\000\000\000\000\000\r\012\000\000\000\000\003\144\000\000\000\000\000\000\000\191\000\000\000\000\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000M.\000\000\000\000\000\000\001\011\000\000\000\000\000\000\000\000\000\000\001\026\012\152\017\b\017\132\000\000\006\184\007\014\007\022\007d\000\000\000\000\000\000\000\000\000\000\000\000\007$\030Z\000\000)\218\007~\000\000\000\000\007\224\000\000\031P\000\000B\022\000\000\000\000\007(\031\226\000\000*\208\000\000\007f+\198\000\000\000\000\000\000\002\148\025\130\000\000\000\000\000\000\000\000\016\222\000\000\021\206!$\000\000\000\000\027\200\"\026\000\000\"L\000\000\000\000\021\174\000\000\023\"\000\000\000\000$\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\012\000\000\000\000\000\000\b\002\000\000 \216\000\000\026t\004\160\000\000\000\000\000\000\000\000\000\000\0044\000\000\000\000\000\000\000\000\000\000M\134\000\000\004\014\000\000\000\000\000\000\000\000\000\000\002*\000\000\015\002\0022\015\248\000\000\004p\016\238\000\000\004\178\000\000\005f\000\000\006\\\000\000\007R\000\000\026t\000\000\000\000\000\000\000\000\000\000\bH\000\000\004\186\000\000\t>\000\000\026t\005,\000\000\001\194\000\000\005@\006\236\000\000\004\020\000\000\004L\000\000\000\000\000\000\000\000\000\000\000\000\004h\000\000\004\132\000\000\004\226\000\000\000\000\000\000\000\000\000\000\005\030\000\000\000\000\000\000\000\000\000\000\006\134\0050\000\000\000\000\005\160\000\000\000\000\005\188\005\128\007H\000\000\007N\000\000\000\000\003\136\006R\000\000\006\002\000\000\000\000\006T\000\000\000\000\000\000\000\000\000\000\000\000\007\156\006~\000\000\000\000\000\000\006\190\006\140\005\158\006@\006\186\007\002\000\000\000\000\006\168\006P\006\162\006\220\007\022\000\000\000\000\007\176\b$\000\000\b@\000\000\bd\000\000\000\000\bF\000\000\000\000\bP\000\000\000\000\000\000\000\000\bb\000\000\b\144\000\000\000\000\000\000\b\150\000\000\000\000\000\000\b\156\000\000\000\000\000\000"), (16, "\001\210\000p\000\018\000=\003?\004t\003R\001\159\000p\006T\000y\000=\006U\005\169\005L\005M\000\007\000y\005\170\005\171\003\133\003\134\000p\002N\005\144\000\017\000N\002\217\004r\0042\001\211\000y\006Y\005\021\001\212\000N\006J\006K\000$\001D\0059\000\005\001E\000?\000p\002\133\002\134\002\157\002\137\006\011\005\172\000>\000N\000y\000N\002P\001D\003\007\006O\001P\000*\005\173\006E\006F\005:\0005\004\001\0005\003A\005=\005L\005M\001\162\006\t\003B\006\012\005L\005M\000N\000z\001\160\005]\001D\001\028\000p\001P\001\017\001\t\002S\003\233\002\196\006R\000O\000y\001\t\005N\001\213\005\170\005\171\002u\000p\000O\001\214\002\182\001F\005[\000p\002\148\001\t\000y\001G\005^\005L\005M\000p\000y\001\017\006R\000O\002\130\000O\001F\002\172\000y\001\147\001\239\001\019\001G\002S\005\202\001\t\0006\002\195\0006\002\174\005d\002O\004\161\002\198\003W\005\173\000z\001\012\003\235\000O\001\160\000p\001F\001V\002\185\002S\005N\0005\001G\001\210\000y\001\018\005N\003?\005A\003R\001\150\000p\002\133\002\138\001V\002\137\006~\002O\005E\001\t\000y\002\187\006\127\004\202\004\208\000p\003\133\003\134\003\237\0005\006\128\004|\004\000\001\135\000y\001\t\004\147\001\238\001\"\003O\001V\001\t\005N\003\242\005\249\002\188\000z\000\179\004\002\001\t\003P\004\163\004\128\004\207\002S\002S\004t\0009\005T\0009\003\007\002O\006\002\006+\004n\001\227\002\154\0006\002\164\004\001\005n\003A\001\029\000\179\000p\001\012\001\228\003B\001$\005\145\005\239\001\t\000\179\000y\002\166\001W\002\177\001\023\005b\003\244\006\b\0043\003\233\004z\001\023\0006\004\n\001\t\002\139\000\179\004\145\000P\001W\005\148\005\237\005\240\005L\005M\004*\003[\005\251\001\t\001\031\0005\006\t\002B\006\012\005L\005M\005O\000Q\002\176\002T\004\157\002\243\000\179\001 \003\\\001W\006\003\002\129\006\130\003]\001 \003\217\001\029\003^\001\153\007\025\001\210\006\004\006\005\003_\003?\0009\003R\003\235\001 \002\248\004\134\000<\001\136\002-\007\026\006\131\002&\005Y\002\167\006\189\0065\001\t\000p\001Z\002,\003\176\000p\006\128\006\190\004\000\001 \000y\006\192\003\208\002\166\000y\001\030\001X\005g\001Y\0006\001[\003\136\003\237\000\004\002\156\001\163\001\023\005N\001Z\001]\001\029\0005\002\129\003O\001\"\001^\003\007\003\242\005N\0068\002\192\000\179\004\002\006\132\003P\004\001\001[\003A\000\005\001\026\003\253\001\\\006\133\003B\000p\001]\002\139\006\209\006\163\006\\\005a\001^\003\254\000y\002\177\001 \001\127\006\207\003\233\000p\001!\001 \001\023\004w\001#\000\167\005\249\002a\000y\002\197\002T\006\001\005\236\003\244\002k\004\005\006\165\001\t\002\129\002\218\004\n\001\t\003\218\004\203\006\167\000\004\0009\0006\002S\004\147\002d\003\209\004*\003[\003\000\005\132\005\237\005\240\005L\005M\003\219\001 \005\150\002S\004\205\005\134\005L\005M\0005\005\254\000\005\003\\\003\235\006+\000p\001\210\003]\001 \006\210\003?\003^\003R\0005\000y\000p\002\151\003_\004\134\005R\007\"\001\t\001 \005\251\000y\004\205\000N\0005\000p\005h\000N\006\006\002\192\002\217\004r\0042\001\t\000y\000p\003\237\001\210\006;\000p\002\217\001\211\005b\004\136\000y\001\212\002\151\003O\000y\000Z\000p\003\242\0009\002\153\005S\000\179\004\002\006\211\003P\000y\003\007\002\178\0006\005\196\004\150\000F\006\133\005N\002\197\004\001\003\007\003A\006\213\000\r\002\218\005N\0006\003B\005\221\002S\005i\002l\0063\002S\005\135\003\158\002\152\000]\001\t\000O\0006\0005\003\233\000O\002S\000\016\000\017\003\244\001\t\004\005\006\215\002\180\006A\001\230\004\n\000N\002|\001\213\006\217\002e\004\228\001\t\002f\001\214\000R\005\223\004*\003[\001\210\006]\001\023\001\t\003?\000N\003R\001\t\004\230\000\170\000U\005a\0005\000\b\000\176\002\178\006\007\003\\\001\t\006=\006\b\0009\003]\004\129\003W\001\006\003^\001\012\003\235\004f\001\210\001\232\003_\005\252\003?\0009\003R\001 \005\233\0006\005\235\001 \004\004\006\129\006\t\005T\006\012\005L\005M\0009\005e\002\255\000p\000O\003\254\002\179\002\225\006\128\006\195\0042\006\183\000y\001\233\006\184\003\237\0048\001\230\007\011\003A\005\245\003\014\000O\006\025\004\139\003B\003O\000\164\003\254\0006\003\242\006\175\006\176\000\172\000\179\004\002\005\025\003P\003\007\004\131\003\233\001 \006\192\004\231\001\235\004\002\006\192\004\001\000\004\003A\006C\004n\003\133\003\134\000a\003B\001\026\004\216\000\159\004\230\001\227\000S\002\024\001I\006\206\0007\005b\0009\000\179\000\178\003\233\001\228\000V\000\005\0005\000S\003\244\000F\0043\005N\004z\006\017\002\192\004\n\006\188\004l\000V\004\145\004\220\001\t\003W\000F\005p\004\n\003\235\004*\003[\004\018\006\198\002\185\007\018\002\229\006\214\006\180\001\210\004*\0009\001\238\003?\002\255\003R\002\193\003\164\001\017\003\\\006\173\005q\005L\005M\003]\003\181\002\197\002\189\003^\003\235\002\027\000p\004i\006\219\003_\003\237\006\128\006\195\0042\001 \000y\001C\004i\000N\0005\0006\003O\000\170\006R\001 \003\242\002\188\000\171\001 \000\179\001\240\006\223\003P\003Z\000\179\002S\0005\000\180\000:\001 \003\237\003\007\006R\004\218\000p\001\241\004n\004k\002\143\002\217\004\001\003O\003A\000y\006\243\003\242\000p\004j\003B\000\179\004\002\006\201\003P\0057\0058\000y\004\142\006\200\004\172\000\181\006\133\003\244\005\243\003\233\000p\004\142\003\243\000{\005N\003\007\003\254\006\023\006\241\000y\000O\0006\0005\003\135\002S\000\164\000N\003[\001\t\002\226\000\170\000\172\006\235\0009\000\182\000\176\004\238\003\244\0006\0043\000N\006\203\004\144\001\210\004\n\003\\\006\237\003?\006\205\003R\003]\004\143\004\240\000\183\003^\000p\004*\003[\000\255\000^\003_\004\166\000N\003\235\000y\000p\001\t\000\178\000\185\004\219\006\128\006\195\0042\004\166\000y\003\\\0005\000N\001\t\007\n\003]\000\170\002a\004\193\003^\004\193\000\171\007\b\0006\002{\003_\004\241\000O\006\239\006\015\001 \001\t\000\164\0009\003\237\003\007\004\168\007\029\000\172\000\005\002d\000O\004\240\000D\004\001\003O\003A\001\012\004\167\003\242\0009\006a\003B\000\179\004\002\006\201\003P\006\245\004\195\000F\004\194\006\202\003\216\000O\006\133\006\251\006\252\003\233\004\221\004\244\003\243\003\133\003\134\005t\000\178\004\255\001\t\0006\000O\003\133\003\134\003\133\003\134\000\164\000N\004\240\001\t\000\179\000\170\000\172\000\180\005\001\004\002\000\176\006a\003\244\007\001\0043\006a\006\203\003\208\001\210\004\n\002\190\005\002\003?\006\205\003R\000S\000_\004\218\005\005\003\133\003\134\004*\003[\006\244\007\030\005\r\000V\005\001\003\235\000\181\000p\000F\000\178\007$\004\240\006\128\006\195\0042\005\016\000y\003\\\005\015\004\220\007\002\006a\003]\006m\004\n\002\147\003^\007\007\004\018\007\019\007\006\005\015\003_\007\014\000O\003\254\004*\001 \003\208\000\164\001\020\003\237\003\007\000\179\007\019\000\172\000\180\007\016\001\023\0005\007%\004\001\003O\003A\000\187\002e\003\242\001\209\002f\003B\000\179\004\002\006\201\003P\005\019\000\188\001\023\000p\006\204\005H\005K\006\133\006p\003\209\003\233\001 \000y\003\243\000\181\003>\004\240\000\178\007B\007\018\003\254\005I\005I\001 \007\022\006\164\005\147\000N\000N\001\t\000\179\000\170\001D\000\180\007C\001E\000\176\003\254\003\244\002\159\0043\001 \006\203\000\182\001\210\004\n\003\248\001\023\003?\006\205\003R\0006\006e\007\023\006i\005\156\006w\004*\003[\007\027\007\028\007\031\000\183\003\212\003\235\000\181\000p\000\184\007\018\007\019\007 \006\128\006\195\0042\007#\000y\003\\\000\185\007&\005\157\007'\003]\005\160\005L\005M\003^\001 \006|\003\215\001\t\003\207\003_\0078\000O\000O\006d\001 \001F\000\164\006c\003\237\003\007\000\179\001G\000\172\000\180\007-\0076\006\247\0072\004\001\003O\003A\000\187\0075\003\242\000p\000w\003B\000\179\004\002\006\201\003P\007>\000\190\000y\0005\006\212\003\208\007<\006\133\005s\007@\003\233\000p\007E\003\243\000\181\006b\002\217\000\178\001V\000\000\000y\000p\002\133\002\134\002\135\002\137\000\000\000N\000z\001\t\000y\000\170\005q\005L\005M\000\000\000\176\002S\003\244\000\000\0043\005N\006\203\000\182\001\210\004\n\003\007\000\000\003?\006\205\003R\000\000\005\134\005L\005M\002S\000z\004*\003[\005<\000\000\000\000\000\183\000\000\003\235\002S\000p\000\254\000\000\0006\000\000\006\128\006\195\0042\000\000\000y\003\\\000\185\000N\001\t\000\000\003]\000\170\005:\000\000\003^\000\000\000\174\005=\005L\005M\003_\000\000\000O\003\209\000\000\001 \001\t\000\164\000\000\003\237\003\007\000\179\000\179\000\172\000\180\001W\001\t\000\000\005\145\004\001\003O\003A\000\000\005N\003\242\000\000\001\023\003B\000\179\004\002\006\201\003P\000p\000\000\000\000\000\000\006\216\000\000\000\000\006\133\000\000\000y\003\233\005N\000\000\003\243\000\181\000\000\000\000\000\178\000\000\000\000\005\185\000O\005Z\0009\000\000\000\000\000\164\000N\000\000\001\t\000\000\000\170\000\172\001 \000\000\000\000\000\176\000\000\003\244\005\174\0043\000\000\006\203\000\182\001\210\004\n\005[\005N\003?\006\205\003R\000\000\005^\005L\005M\000\000\000\000\004*\003[\000\000\005\200\001\146\000\183\000\000\003\235\004\002\000p\001\001\000\178\000\000\000\000\002\217\004r\0042\000\000\000y\003\\\000\185\000\000\001\210\000\000\003]\000\000\001\211\005\198\003^\001\t\001\212\005\201\005L\005M\003_\000\000\000O\000\000\000\000\001 \000p\000\164\002T\003\237\003\007\000\179\002\139\000\172\000\180\000y\002\129\005\b\000\000\004\001\003O\003A\004\n\001\144\003\242\000\000\004\018\003B\000\179\004\002\006\201\003P\000p\000\000\004*\000\000\002T\000\000\000\000\006\133\000\000\000y\003\233\005N\002\129\003\243\000\181\000\000\000\000\000\178\000\000\000\000\000\000\000\000\001\230\001 \000\000\000\000\001\213\000N\000\000\001\t\000\179\000\170\001\214\000\180\000\000\000\000\000\176\000\000\003\244\000\000\0043\001 \006\203\000\182\001\210\004\n\000\000\005N\003?\006\205\003R\001 \005\134\005L\005M\000\000\000\000\004*\003[\001\231\001\t\000\000\000\183\000\217\003\235\000\181\000p\001R\001\232\000\000\000\000\002\217\004r\0042\000\000\000y\003\\\000\185\000\000\001\210\000\000\003]\000\000\001\211\000\000\003^\001\t\001\212\005\134\005L\005M\003_\000\000\000O\000\212\000\000\001 \000\000\000\164\001\233\003\237\003\007\000\179\000\000\000\172\000\180\001\022\000\000\000\000\000\000\004\001\003O\003A\000\183\001\023\003\242\000\000\000\218\003B\000\179\004\002\000\214\003P\004\211\004\128\000\000\000\000\000\000\000\185\005j\001\235\000\000\006\b\003\233\005N\000\000\003\243\000\181\000\000\000\000\000\178\000\000\000\000\005\211\000\000\001\230\001\227\002*\002\017\001\213\000\000\000\000\001\t\001 \000\179\001\214\006\t\001\228\006\012\005L\005M\003\244\000\000\0043\000\000\004z\000\182\001\210\004\n\000\000\005N\003?\004\018\003R\000\000\000\000\000\000\000p\002\028\005\226\004*\003[\001\231\000\000\002\020\000\183\000y\003\235\000\000\000p\001T\001\232\005p\001\238\002\217\004r\0042\000\000\000y\003\\\000\185\000\000\001\210\002\161\003]\000\000\001\211\000\000\003^\000\000\001\212\001\023\003\182\000\000\003_\000\000\005q\005L\005M\001 \000\000\002S\001\233\003\237\003\007\000\179\000\000\000\000\000\180\002\163\000\000\000\000\000\000\004\001\003O\003A\001\240\001\023\003\242\000\000\005N\003B\000\179\004\002\000\000\003P\004~\004\128\000\000\000p\001 \001\241\000\000\001\235\006\\\000\000\003\233\000\000\000y\003\243\000\181\000\000\0005\001\t\000\000\000\000\000\000\000\000\001\230\001\227\002'\002\017\001\213\000\000\000\000\001\t\001 \000\179\001\214\000\000\001\228\000\000\000\000\000\000\003\244\000\000\0043\000\000\004z\000\182\001\210\004\n\000\000\000\000\003?\004\018\003R\000\000\005N\000\000\000\000\002\028\000\000\004*\003[\001\231\000\000\002\020\000\183\000\000\003\235\000\000\000p\003T\001\232\005p\001\238\002\217\004r\0042\000\000\000y\003\\\000\185\005\236\001\210\000\000\003]\0006\001\211\000\000\003^\000\000\001\212\000\000\001\t\000\000\003_\000\000\005q\005L\005M\001 \000p\002\150\001\233\003\237\003\007\005\237\005\240\005L\005M\000y\000\000\000\000\000\000\004\001\003O\003A\001\240\005p\003\242\006\028\000\000\003B\000\179\004\002\000\000\003P\004\165\004\128\000p\002\133\002\141\001\241\002\137\001\235\000\000\000z\003\233\000y\000\000\003\243\000\000\005q\005L\005M\002S\000\000\000\000\000p\001\230\001\227\002$\002\017\001\213\000\000\000\000\001\t\000y\000\179\001\214\000\000\001\228\000\000\0009\000z\003\244\000\000\0043\000\000\004z\000\000\001\210\004\n\002S\000\000\003?\004\018\003R\000\000\005N\005w\000\000\002\028\004+\004*\003[\001\231\001\t\002\020\005N\000\000\003\235\002S\000p\006g\001\232\005p\001\238\002\217\004r\0042\0005\000y\003\\\000\000\000\000\001\210\000\000\003]\000\000\001\211\001\026\003^\000\000\001\212\001\t\000\000\000\000\003_\000\000\005q\005L\005M\001 \005N\000\000\001\233\003\237\003\007\000\000\004\031\000\000\000\000\000\000\001\t\000\000\006^\004\001\003O\003A\001\240\000\000\003\242\000p\001\023\003B\000\179\004\002\002\217\003P\004\215\004\128\000y\005\249\002\248\001\241\000\000\001\235\000\000\000\000\003\233\000\000\000\000\003\243\000\000\000\000\0005\0006\000\000\000\000\004Z\0005\001\230\001\227\002\"\002\017\001\213\000\000\003\007\001\t\000\000\000\179\001\214\001 \001\228\000\000\000\000\002S\003\244\000\000\0043\000\000\004z\000\000\001\210\004\n\005\250\000\000\003?\004\018\003R\000\000\005N\005}\000\000\002\028\000\000\004*\003[\001\231\006\018\002\020\006>\000p\003\235\000\000\000p\000\000\001\232\005\251\001\238\006\128\000y\004\000\000\000\000y\003\\\001\"\006\b\001\t\002T\003]\0006\000\000\002\139\003^\000\000\0006\002\129\000\000\000\000\003_\000\000\006\019\0009\006\020\001 \000\000\005{\001\233\003\237\003\007\006\t\000\000\006\012\005L\005M\000\000\002T\000\000\004\001\003O\003A\001\240\005p\003\242\002\129\001$\003B\000\179\004\002\003\211\003P\006\160\004\128\000^\006\021\001 \001\241\006\208\001\235\000\000\000\000\003\233\000\000\002a\003\243\006\022\005q\005L\005M\000\000\002v\000\000\000\000\000\000\001\227\002\015\002\017\001\t\000\000\000\000\001\t\000\000\000\179\001 \000\000\001\228\002d\003\208\000\000\003\244\000\000\0043\0009\004z\000\000\001\210\004\n\000\000\004\002\003?\004\018\003R\001\026\000\000\005\141\000\000\002\028\000\000\004*\003[\000p\000\000\002\020\000{\005N\003\235\000N\000p\000\000\000y\001D\001\238\006\128\001P\004\000\000\000\000y\003\\\005\252\002\127\000p\002\133\003]\000\000\002\140\000\000\003^\000\000\000\000\000y\0005\005\n\003_\000\000\000\000\004`\004\n\001 \005N\000\000\004\018\003\237\003\007\000\000\002S\0005\000\000\000\000\004*\000\000\000\000\004\001\003O\003A\001\240\000z\003\242\000S\000c\003B\000\179\004\002\006\194\003P\002S\000\000\003\209\000\000\000V\001\241\006\193\006\133\000O\000F\003\233\001F\000\000\006\197\001\147\000\000\0005\001G\000\000\000\000\000\000\000\000\001\t\001 \000\000\002\219\000\000\000\000\000\000\001\t\005\255\0005\0006\000\000\000\000\000\000\0005\000\000\003\244\000\000\004\005\006\199\001\t\002e\001\210\004\n\002f\0006\003?\006\205\003R\001\150\000\000\000\000\001\023\001V\000\000\004*\003[\000\000\000\000\000\000\006/\000p\003\235\000\000\000p\000\000\000\000\000\000\000\000\006\128\000y\004\000\000\000\000y\003\\\000\000\000\000\000p\000\000\003]\0006\000\000\006\\\003^\000\000\000\000\000y\000\000\000\000\003_\001\"\001 \000\000\000\000\001 \0006\005\139\000\000\003\237\003\007\0006\000\000\000p\002\133\002\134\002\145\002\137\0009\004\001\003O\003A\000y\000\000\003\242\000\000\000\000\003B\000\179\004\002\006\194\003P\000\000\0009\000\000\000\000\000\000\000\000\006\196\006\133\000\000\001$\003\233\000\000\002a\006\197\000\000\000\000\000z\000\179\000p\002c\001W\000\000\000\000\006\\\000\000\002S\001\t\000y\000N\001\t\000\000\000\000\000\170\0027\000\000\002d\0009\000\174\003\244\000\000\004\005\006\199\001\t\000\000\001\210\004\n\000\000\000\000\003?\006\205\003R\0009\000\000\004\031\000\000\001\153\0009\004*\003[\000\000\000\000\000\000\002T\002\142\003\235\000N\000p\001\t\002\243\001D\002\129\002\217\001P\004\000\000\000\000y\003\\\002\248\000\000\000N\001Z\003]\0005\000\170\000\000\003^\000\000\000\000\000\171\001\026\000\000\003_\002\248\004Z\000O\000\000\001 \000\000\001[\000\164\003\237\003\007\000\000\001\163\001\t\000\172\000\000\001]\002\249\001 \004\001\003O\003A\001^\000\000\003\242\000\000\000\000\003B\000\179\004\002\006\194\003P\006\135\000\000\000\000\002\219\001\202\000\000\000\000\006\133\000O\002\253\003\233\001F\000\000\006\197\001\147\000\000\000\000\001G\000\178\000{\006f\000\000\000O\000\000\006\162\0006\000\000\000\164\000\000\001\t\000\000\000\000\004\223\000\172\000\000\002Q\000\000\004\160\003\244\0005\004\005\006\199\000\000\002e\001\210\004\n\002f\000\000\003?\006\205\003R\001\150\000\000\005p\001\023\001V\000\000\004*\003[\0005\005\197\000\000\006^\002\139\003\235\000\000\000p\000\000\000\000\000\178\001\023\002\217\000\000\004\000\000\000\000y\003\\\005q\005L\005M\000\000\003]\006]\002\219\005\198\003^\000\000\002T\005\201\005L\005M\003_\000\000\001 \000\000\002\129\001 \000\000\000\000\000\000\003\237\003\007\0009\000\179\005p\0006\000\180\0005\000\000\001 \004\001\003O\003A\000\000\000\000\003\242\000\000\001\210\003B\000\179\004\002\003?\003P\003R\006^\0006\000\000\000\000\005q\005L\005M\003\249\001\023\003\233\001 \000\000\004\149\000\000\000\181\000p\000\179\000\000\000\000\001W\002\217\003\251\004\000\000\000\000y\000\000\000\000\005p\001\t\000\000\000\179\004\158\001\151\000\180\000\000\005N\004\160\003\244\000\000\004\005\004\151\001\"\000\000\000\212\004\n\004\031\005N\001 \004\018\0006\003\007\005q\005L\005M\001\153\000\000\004*\003[\0009\004\001\000\000\003A\000\183\003\235\000\000\000\181\000\213\003B\000\000\002\248\000\214\000\000\000\000\000\000\000\000\003\\\005\159\000\185\0009\001Z\003]\001$\003\233\000\000\003^\004$\005N\000Y\0005\000N\003_\0005\000\000\001D\000\000\001 \001P\001[\000\000\003\237\005\157\001\t\001\163\005\160\005L\005M\001]\000\000\000\000\004(\003O\000\000\001^\000\187\003\242\000\000\001\210\000\000\000\179\004\002\003?\003P\003R\000\000\000\192\004\031\0009\000\000\000p\000\000\000\000\004\007\002\219\005N\000\000\004\149\003\235\000y\000p\000\000\000\000\000\000\000\000\002\217\004\b\0042\000\000\000y\000\000\002\248\000\000\000\000\000\000\000\000\0006\000O\0005\0006\001F\005\137\003\244\001\147\004\005\004\151\001G\004$\005\203\004\n\000\000\001\216\000\000\004\018\003\237\003\007\000\000\000\000\0005\000\000\000\000\004*\003[\000\000\004\001\003O\003A\005N\000\000\003\242\000\000\004(\003B\000\179\004\002\000\000\003P\000\000\003\214\000\000\003\\\000\000\002w\000S\001V\003]\000\000\003\233\000\000\003^\0047\0005\005\152\000\000\000V\003_\001\t\000N\000\000\000F\001 \003?\002\219\003@\0006\002d\001\t\000\000\000\000\0005\000\000\000\000\000\000\0009\000\000\003\244\003\208\004\005\0049\000\000\000\000\001\210\004\n\000\000\0006\003?\004;\003R\000\000\000\000\000\000\000\000\000\000\000\000\004*\003[\0045\000\000\000\000\005\167\000N\003\235\000\\\000p\003?\000\000\003R\000\000\002\217\004\b\0042\000\000\000y\003\\\000\000\000\000\000\000\0006\003]\000\000\005p\000\000\003^\000O\0005\003A\000\000\000\000\003_\000\179\000\000\003B\001W\001 \000\000\0006\000\000\003\237\003\007\000\000\000\000\0009\000\000\000\000\005q\005L\005M\004\001\003O\003A\000\000\000\000\003\242\000\000\001\210\003B\000\179\004\002\003?\003P\003R\0009\000p\000\000\000{\003\209\000O\001\161\003A\004:\003\233\000y\000\000\003\243\003B\000\000\000p\000\000\000\000\000\000\002\220\002\217\004\b\0042\0005\000y\000\000\000\000\000\000\001\t\0006\000N\001Z\000\000\0009\003?\002e\003@\003\244\002f\0043\002z\0044\000\000\002\227\004\n\000\000\001\023\000\000\004\018\001[\003\007\0009\000\000\000p\001\163\000S\004*\003[\001]\004\001\000\000\003A\000y\003\235\001^\005N\000V\003B\000\000\000\000\000\000\000F\000\000\000\000\006\142\003\\\000\000\000\000\003W\000\000\003]\006\155\003\233\000\000\003^\001 \003O\001\t\000\000\0006\003_\000{\000\000\000\000\000\179\001 \000O\003P\003A\003\237\000\000\001\t\000\000\000\000\003B\000\000\0009\003\001\000\000\000\000\003O\0005\000\000\000\000\003\242\0005\001\210\000\000\000\179\004\002\003?\003P\003R\000\000\001\225\002a\000\000\000\000\000\000\003O\000\000\003\005\002y\000\000\000\000\003\243\003\235\000\179\000p\001\t\003P\005\156\000{\002\217\004r\0042\000\000\000y\002d\0005\000\000\000\000\000\000\000\000\003Y\002\219\000\000\000\000\002W\002\219\003\244\000\000\0043\000\000\0044\005\157\0009\004\n\005\160\005L\005M\004\018\003\237\003\007\003\131\000\000\000\000\0006\000\000\004*\003[\0006\004\001\003O\003A\000\000\000\000\003\242\000\000\005\178\003B\000\179\004\002\000\000\003P\000\000\000\000\002t\003\\\003[\006\156\000\000\000\000\003]\000\000\003\233\000\000\003^\003\243\000\000\000\000\000\000\000N\003_\000\000\0006\000\170\003\\\001 \000\000\003O\000\171\003]\000\000\001\t\006\157\003^\006\145\000\179\000\000\006\146\003P\003_\003\244\0005\0043\000\000\0044\001\023\001\210\004\n\000\000\000\000\003?\004\018\003R\000\000\000\000\000\000\000\000\005N\000\000\004*\003[\0009\000\000\000\000\000{\0009\003\235\000\000\000p\000\000\000\000\000\000\000\000\002\217\004r\0042\000\000\000y\003\\\000\000\002\131\000\000\005\156\003]\001 \000O\002e\003^\000\000\002f\000\164\000\000\000\000\003_\000\000\000\000\000\172\001\023\001 \0009\000\000\000\000\003\237\003\007\000\000\000\000\005\157\0006\000\000\005\160\005L\005M\004\001\003O\003A\003Q\000\000\003\242\000\000\001\210\003B\000\179\004\002\003?\003P\003R\004y\000\000\000\000\000N\000\000\000\000\000\178\001\211\0005\003\233\001 \001\212\003\243\000\000\000\000\000p\000\000\000\000\000\000\000\000\002\217\004r\0042\0005\000y\000\000\000{\000N\001\t\000\000\000{\000\170\000\000\000\000\000\000\000\000\000\171\003\244\000\000\0043\000\000\004z\003\b\000\000\004\n\000\000\004,\000\000\004\018\000\000\003\007\000\000\005\180\000\000\000\000\000\000\004*\003[\0009\004\001\000\000\003A\005p\003\235\002o\005N\003\012\003B\000\000\000O\0040\000\000\000\000\001\213\0006\003\\\000\000\000\000\000\000\001\214\003]\006\b\003\233\000\000\003^\000\000\005q\005L\005M\0006\003_\000\179\000\000\000O\000\180\001 \000\000\000\000\000\164\003\237\005\156\001\t\000\000\0005\000\172\006\t\005p\006\012\005L\005M\003O\0005\000\000\000\000\003\242\000\000\001\210\000\000\000\179\004\002\003?\003P\003R\004{\005\157\000\000\000\181\005\160\005L\005M\005q\005L\005M\000\000\0005\003\243\003\235\000\000\000p\000\000\000\178\000\000\000\000\002\217\004\152\0042\000\000\000y\000\000\000{\000N\0009\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\176\003\244\006a\0043\000\000\004z\002\232\0009\004\n\005N\0006\000\000\004\018\003\237\003\007\000\187\000\000\000\000\0006\002\219\004*\003[\000\000\004\001\003O\003A\000\194\005\206\003\242\000\000\005N\003B\000\179\004\002\001\227\003P\000\000\004\141\000\000\003\\\000\000\0006\000\179\000\000\003]\001\228\003\233\000\000\003^\003\243\005N\000\000\000\000\005N\003_\000\000\000\000\000O\000\000\001 \000\000\000\000\000\164\000\000\000\000\001\t\000\179\000\000\000\172\000\180\000\000\004\154\000\000\000\000\003\244\000\000\0043\000\000\004z\000\000\001\210\004\n\000\000\000{\003?\004\018\003R\0009\000\000\005p\000\000\000\000\000\000\004*\003[\0009\0005\000\000\003D\003\159\003\235\000\181\000p\000\000\000\178\005p\000\000\002\217\004\152\0042\000\000\000y\003\\\005q\005L\005M\000\000\003]\0009\000\000\000\000\003^\000\000\006a\001\229\0005\000\000\003_\000\000\005q\005L\005M\001 \005\191\000\000\000\000\003\237\003\007\000\000\006\b\002\219\000\000\000\000\000\000\000\000\000\000\004\001\003O\003A\000\187\000\000\003\242\0066\001\210\003B\000\179\004\002\003?\003P\003R\000\196\000\000\0006\006\t\000\000\006\012\005L\005M\004\174\003\233\000\000\006\"\003\243\000\000\000\000\000p\000\000\005\189\003M\000\000\002\217\004\b\0042\006e\000y\002\243\000{\000\000\001\t\000\179\000\000\0006\000\180\000\000\004\156\005N\000\000\003\244\0005\0043\000\000\004\155\003\167\000\000\004\n\0005\000\000\005p\004\018\002\248\003\007\005N\000\000\000p\000\000\000\000\004*\003[\002\217\004\001\000\000\003A\000y\003\235\000\181\002\249\000\000\003B\000\000\000\000\000\000\005q\005L\005M\000\000\003\\\000\000\000\000\000\000\0009\003]\000\000\003\233\000\000\003^\000\000\000\000\005N\003\007\002\253\003_\000\000\000\000\000\182\000\000\001 \000\000\002S\000\000\003\237\000\000\001\t\000\000\000\000\0006\000\000\005p\000\000\0009\000\000\003O\0006\000\183\000\000\003\242\000\000\001\210\003V\000\179\004\002\003?\003P\003R\000\000\000\000\000\000\000\000\000\185\000p\000N\005q\005L\005M\000\161\002K\003\243\003\235\000y\000p\001\t\000\000\000\000\000\000\002\217\006e\004\000\004\031\000y\000\000\000\000\001\210\000N\000\000\005N\001\211\000\161\002G\000\000\001\212\005\187\003\244\000\000\0043\000\000\004\155\000\000\000\000\004\n\000\000\000\000\002\248\004\018\003\237\003\007\000\000\005\217\000\000\000\000\000\000\004*\003[\0009\004\001\003O\003A\000\000\004$\003\242\0009\000\000\003B\000\179\004\002\000\000\003P\000O\000\000\000\000\003\\\000{\000\164\006\150\000\000\003]\000\000\003\233\000\165\003^\003\243\0069\004(\000\000\005N\003_\001\t\003\183\001\230\000O\001 \000\000\001\213\000\000\000\164\000\000\001\t\000\000\001\214\004\209\000\165\000\000\004\002\005p\004\160\003\244\000\000\0043\000\000\0044\000\000\001\210\004\n\000\000\000\178\003?\004\018\003R\000\000\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\005q\005L\005M\000\000\003\235\000\000\000p\001\232\000\000\000\178\000\000\002\217\000\000\004\000\000\000\000y\003\\\000{\005\012\000\000\005p\003]\005\215\004\n\003\152\003^\000\000\004\018\000\000\000\000\000\000\003_\000\000\003\189\000\000\004*\001 \000\000\001\233\000\000\003\237\003\007\000\000\000\000\005q\005L\005M\000\000\000\000\000\000\004\001\003O\003A\000\000\000\000\003\242\000\000\001\210\003B\000\179\004\002\003?\003P\003R\000\000\005p\000\000\000\000\000\000\001\235\000\000\000\000\000\179\003\233\001 \000\180\004\149\000\000\000\000\000p\000\000\005\213\005N\000\000\002\217\001\227\004\000\002\014\000y\005q\005L\005M\001\t\000\179\000\179\004\225\001\228\000\180\000\000\006\145\004\160\003\244\006\146\004\005\004\151\006\153\000\000\000\181\004\n\000\000\001\023\005p\004\018\000\000\003\007\000\000\000\000\000\000\000\000\000\000\004*\003[\0005\004\001\000\000\003A\005N\003\235\000\000\000\181\000\000\003B\001\238\000\000\000\000\005q\005L\005M\000\000\003\\\000\000\000\000\000\000\000\000\003]\000\000\003\233\000\000\003^\001 \0005\000\000\000\000\000\000\003_\000\000\000\000\000\000\000\000\001 \000\000\000\000\000\000\003\237\000\000\001\t\000\000\0005\004\227\000\000\000\000\005N\000\000\004\160\003O\001\240\000\000\000\000\003\242\000\000\001\210\000\000\000\179\004\002\003?\003P\003R\000\000\0006\000\000\001\241\000\000\000\000\000N\000\000\000\000\000\000\000\161\002A\004\149\003\235\000\000\000p\000\000\000\000\000\000\005\230\002\217\000\000\004\000\000\000\000y\000\000\000\000\001\210\000N\0006\005N\001\211\000\161\0026\000\000\001\212\000\000\003\244\000\000\004\005\004\151\000\000\000\000\000\000\004\n\000\000\0006\000\000\004\018\003\237\003\007\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\004\001\003O\003A\000\000\005\228\003\242\000\000\000\000\003B\000\179\004\002\000\000\003P\000O\000\000\000\000\003\\\000\000\000\164\0009\000\000\003]\000\000\003\233\000\165\003^\004\149\000\000\000\000\000\000\000\000\003_\000\000\000\000\001\230\000O\001 \000\000\001\213\000\000\000\164\000\000\001\t\000\000\001\214\006j\000\165\0009\000\000\006 \004\160\003\244\000\000\004\005\004\151\000\000\000\000\001\210\004\n\000\000\000\178\003?\004\018\003R\0009\000\000\000\000\000\000\000\000\000\000\004*\003[\006r\000\000\000\000\000\000\000\000\003\235\000\000\000p\001\232\000\000\000\178\000\000\002\217\004\b\0042\000\000\000y\003\\\000\000\000\000\000\000\000\000\003]\006%\000\000\000\000\003^\000\000\000\000\000\000\000\000\000\000\003_\000\000\000\000\000\000\000\000\001 \000{\001\233\000\000\003\237\003\007\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\001\003O\003A\004\022\000\000\003\242\000\000\001\210\003B\000\179\004\002\003?\003P\003R\000\000\000{\000\000\000\000\000\000\001\235\000\000\000\000\000\179\003\233\000\000\000\180\004\149\000\000\000\000\000p\000\000\004Q\000{\000\000\002\217\001\227\004\000\001\237\000y\000\000\000\000\000\000\001\t\000\179\000\179\000\000\001\228\000\180\004a\000\000\000\000\003\244\000\000\004\005\004\151\000\000\000\000\000\181\004\n\000\000\000\000\000\000\004\018\000\000\003\007\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\004\001\000\000\003A\000\000\003\235\000\000\000\181\000\000\003B\001\238\000\000\000\000\000\000\000\000\000\000\000\000\003\\\000\000\000\000\000\000\000\000\003]\000\000\003\233\000\000\003^\000\000\000\000\000\000\000\000\000\000\003_\000\000\000\000\000\000\000\000\001 \000\000\000\000\000\000\003\237\000\000\001\t\000\000\000\000\006x\000\000\000\000\000\000\000\000\004\160\003O\001\240\000\000\000\000\003\242\000\000\001\210\000\000\000\179\004\002\003?\003P\003R\000\000\000\000\000\000\001\241\000\000\000\000\000\000\000\000\006\166\000\000\000\000\000\000\003\243\003\235\000\000\000p\000\000\000\000\000\000\000\000\002\217\004\b\0042\000\000\000y\000\000\000\000\000N\000N\000\000\000\000\000\170\000\161\0023\000\000\000\000\000\171\003\244\000\000\0043\000\000\0044\000\000\000\000\004\n\000\000\000\000\000\000\004\018\003\237\003\007\000\000\000\000\000p\000\000\000\000\004*\003[\000\000\004\001\003O\003A\000y\000\000\003\242\000\000\000\000\003B\000\179\004\002\000\000\003P\000\000\000\000\000\000\003\\\000\000\000\000\000\000\000\000\003]\000\000\003\233\000\000\003^\004\149\000\000\000\000\000\000\000\000\003_\000\000\000\000\000O\000O\001 \000\000\000\000\000\164\000\164\000\000\001\t\000\000\000\000\000\172\000\165\000\000\000\000\000\000\000\000\003\244\000\000\004\005\004\151\000\000\000\000\001\210\004\n\000\000\004\169\003?\004\018\003R\000\000\000\000\000\000\006\142\000\000\000\000\004*\003[\000\000\000\000\006\154\000\000\000\000\003\235\000\000\000p\001\t\000\178\000\178\000\000\002\217\000\000\0042\000\000\000y\003\\\000\000\000\000\000\000\000\000\003]\000\000\000\000\000\000\003^\000\000\000\000\000\000\000\000\000\000\003_\000\000\000\000\000\000\000\000\001 \000\000\000\000\000\000\003\237\003\007\000\000\000\000\000p\000\000\000\000\000\000\000\000\000\000\004\001\003O\003A\000y\000\000\003\242\000\000\001\210\003B\000\179\004\002\003?\003P\003R\000\000\000\000\000\000\000\000\000\000\000p\000\000\000\000\000\000\003\233\000\000\0046\003\243\000\000\000y\000p\000\000\000\000\000\000\000\000\002\217\000\000\004\000\000\000\000y\000\000\000\000\000N\001\t\000\179\000\179\000\170\000\180\000\180\000\000\000\000\000\171\003\244\000\000\0043\000\000\0044\000\000\000\000\004\n\000\000\000\000\000\000\004\018\000\000\003\007\000\000\000\000\006\142\000\000\000\000\004*\003[\000\000\004\001\006\149\003A\000\000\003\235\000\181\000\181\001\t\003B\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\\\000\000\000\000\006\142\000\000\003]\000\000\003\233\006\145\003^\006\144\006\146\000\000\000\000\000\000\003_\001\t\000\000\000O\001\023\001 \000\000\000\000\000\164\003\237\000\000\001\t\000\000\000\000\000\172\000\000\000\000\000\000\000\000\000\000\003O\000\000\000\187\000\000\003\242\000\000\001\210\000\000\000\179\004\002\003?\003P\003R\000\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \003\255\004\171\003\235\000\000\000p\000\000\000\178\000\000\000\000\002\217\000\000\004\000\000\000\000y\000\000\000\000\000N\000\000\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\171\003\244\000\000\0043\000\000\004\173\000\000\000\000\004\n\000\000\000\000\000\000\004\018\003\237\003\007\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\004\001\003O\003A\000\000\000\000\003\242\000\000\000N\003B\000\179\004\002\001D\003P\000\000\001P\000\000\003\\\000\000\000\000\000\000\000\000\003]\000\000\003\233\006\145\003^\004\003\006\146\000\000\000\000\000\000\003_\000\000\000\000\000O\001\023\001 \000\000\000\000\000\164\000\000\000\000\001\t\000\179\000\000\000\172\000\180\000\000\000\000\006\145\000\000\003\244\006\146\004\005\004\006\000\000\000\000\001\210\004\n\000\000\001\023\003?\004\018\003R\000\000\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\000O\001 \004\t\001F\003\235\000\181\000p\000\000\000\178\001G\000\000\002\217\000\000\004\000\000\000\000y\003\\\000\000\000\000\000\000\000\000\003]\000\000\000\000\000\000\003^\001 \000\000\000\000\000\000\000\000\003_\000\000\000\000\000\000\000\000\001 \000\000\000\000\000\000\003\237\003\007\000\000\000\000\000\000\000\000\000\000\001V\000\000\000\000\004\001\003O\003A\000\187\000\000\003\242\000\000\001\210\003B\000\179\004\002\003?\003P\003R\000\200\000\000\000\000\000\000\000\000\000p\000\000\000\000\000\000\003\233\000\000\000\000\004\003\000\000\000y\000p\000\000\000\000\000\000\000\000\002\217\000\000\004\000\000\000\000y\000\000\000\000\000N\001\t\000\179\000\000\000\170\000\180\000\000\000\000\000\000\000\171\003\244\000\000\004\005\004\006\000\000\000\000\000\000\004\n\000\000\000\000\000\000\004\018\000\000\003\007\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\004\001\000\000\003A\000\000\003\235\000\181\000\000\000\000\003B\000\179\000\000\000\000\001W\000\000\000\000\000\000\003\\\000\000\000\000\006\142\000\000\003]\000\000\003\233\000\000\003^\006\152\000\000\000\000\000\000\000\000\003_\001\t\000\000\000O\000\000\001 \000\000\000\000\000\164\003\237\000\000\001\t\000\000\000\000\000\172\000\000\000\000\000\000\000\000\000\000\003O\000\000\000\187\000\000\003\242\000\000\001\210\000\000\000\179\004\002\003?\003P\003R\000\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001Z\000\000\000\000\000\000\004\003\003\235\000\000\000p\000\000\000\178\000\000\000\000\002\217\000N\004\000\000\000\000y\000\170\001[\000\000\000\000\000\000\000\171\001\149\000\000\000\000\000\000\001]\000\000\003\244\000\000\004\005\004\006\001^\000\000\000\000\004\n\000\000\000\000\000\000\004\018\003\237\003\007\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\004\001\003O\003A\000\000\000\000\003\242\000\000\000\000\003B\000\179\004\002\000p\003P\000\000\000\000\000\000\003\\\000\000\004}\000\000\000y\003]\000\000\003\233\000\000\003^\004v\000\000\000O\000\000\000\000\003_\000\000\000\164\000\000\000\000\001 \000\000\000\000\000\172\000\000\000N\001\t\000\179\000\000\000\170\000\180\000\000\000\000\006\145\000\171\003\244\006\146\004\005\004x\000\000\000\000\001\210\004\n\000\000\001\023\003?\004\018\003R\000\000\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\000\000\000\000\000\178\000\000\003\235\000\181\000p\000\000\000\000\000\000\002a\002\217\000\000\004\000\000\000\000y\003\\\002k\000\000\000\000\000\000\003]\000\000\000\000\001\t\003^\001 \000\000\000\000\000\000\000\000\003_\000\000\002d\000O\000\000\001 \000\000\000\000\000\164\003\237\003\007\000\000\000\000\000\000\000\172\000\000\000\000\000\000\000\000\004\001\003O\003A\000\187\000\000\003\242\000\000\001\210\003B\000\179\004\002\003?\003P\003R\000\204\000\000\000\000\000\000\004u\000\000\000\000\000\000\000\000\003\233\000\000\000\000\004v\000\000\000\000\000p\000\000\000\178\000\000\000\000\002\217\000\000\004\000\000\179\000y\000\000\000\180\000N\001\t\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\171\003\244\000\000\004\005\004x\000\000\000\000\000\000\004\n\000\000\000\000\000\000\004\018\000\000\003\007\000\000\000\000\000\000\000\000\000\000\004*\003[\000\181\004\001\000\000\003A\000\000\003\235\000\000\000\000\000\000\003B\000\000\000\000\000\000\000\000\002l\000\000\000\000\003\\\000\000\000\000\000\000\000\000\003]\000\000\003\233\000\000\003^\000\000\000\000\000\000\000\000\000\000\003_\000\000\000\000\000O\000\000\001 \000\000\002m\000\164\003\237\002e\001\t\000\179\002f\000\172\000\180\000\187\000\000\000\000\000\000\003O\001\023\000\000\000\000\003\242\000\000\001\210\000\206\000\179\004\002\003?\003P\003R\000\000\000\000\000\000\004\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\138\003\235\000\181\000p\000\000\000\178\000\000\000\000\002\217\000N\004\000\000\000\000y\000\170\000\000\001 \000\000\000\000\000\171\000\000\000\000\000\000\000\000\000\000\000\000\003\244\000\000\004\005\004\140\000\000\000\000\000\000\004\n\000\000\000\000\000\000\004\018\003\237\003\007\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\004\001\003O\003A\000\187\000\000\003\242\000\000\000\000\003B\000\179\004\002\000p\003P\000\000\000\208\000\000\003\\\000\000\004\135\000\000\000y\003]\000\000\003\233\000\000\003^\004v\000\000\000O\000\000\000N\003_\000\000\000\164\000\161\0022\001 \000\000\000\000\000\172\000\000\000\000\001\t\000\179\000\000\000\000\000\180\000\000\000\000\000\000\004\148\003\244\000\000\004\005\004x\000\000\000\000\001\210\004\n\000\000\000\000\003?\004\018\003R\000\000\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\000\000\000\000\000\178\000\000\003\235\000\181\000p\000\000\000\000\000\000\002a\002\217\000\000\004\000\000\000\000y\003\\\002k\000\000\000\000\000\000\003]\000\000\000O\001\t\003^\000\000\000\000\000\164\000\000\000\000\003_\000\000\002d\000\165\000\000\001 \000\000\000\000\000\000\003\237\003\007\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\001\003O\003A\000\187\000\000\003\242\000\000\001\210\003B\000\179\004\002\003?\003P\003R\000\222\000\000\000\000\000\000\000\000\000\000\000\178\000\000\000\000\003\233\006n\000\000\004\149\000\000\000\000\000p\000\000\000\000\000\000\000\000\002\217\000N\004\000\000\179\000y\000\170\000\180\000\000\001\t\000\000\000\171\000\000\000\000\000\000\000\000\000\000\004\153\003\244\000\000\004\005\004\151\000\000\000\000\000\000\004\n\000\000\000\000\000\000\004\018\000\000\003\007\000\000\000\000\000\000\000\000\000\000\004*\003[\000\181\004\001\000\000\003A\000\000\003\235\000\000\000\000\000\000\003B\000\000\000\000\000\000\000\000\002l\000\000\000\000\003\\\000\000\000\000\000\000\000\000\003]\000\000\003\233\000\000\003^\000\000\000\000\000O\000\000\000\000\003_\000\179\000\164\000\000\000\180\001 \000\000\002r\000\172\003\237\002e\001\t\000\000\002f\000\000\000\000\000\187\000\000\000\000\000\000\003O\001\023\000\000\000\000\003\242\000\000\001\210\000\224\000\179\004\002\003?\003P\003R\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000\000\000\000\000\000\006z\000\178\004\149\003\235\000\000\000p\000\000\000\000\000\000\000\000\002\217\000N\004\000\000\000\000y\000\170\000\000\001 \000N\000\000\000\171\000\000\001D\000\000\000\000\001P\000\000\003\244\000\000\004\005\004\151\000\000\000\000\000\000\004\n\000\000\000\000\000\000\004\018\003\237\003\007\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\004\001\003O\003A\000\000\000\000\003\242\000\000\000\000\003B\000\179\004\002\000\000\003P\000\000\000\000\000\000\003\\\000\000\000\000\000\000\000\000\003]\000\000\003\233\000\000\003^\006o\000\000\000O\000\000\000\000\003_\000\000\000\164\000\000\000O\001 \000\179\001F\000\172\000\180\001\147\001\t\000\000\001G\000\000\000\000\000\000\000\000\000\000\000\000\003\244\000\000\004\005\006q\000\000\000\000\001\210\004\n\000\000\000\000\003?\004\018\003R\000\000\000\000\000\000\000\000\000\000\000\000\004*\003[\000\181\000\000\006}\000\178\000\000\003\235\001\150\000p\000\000\000\000\001V\000\000\002\217\000\000\004\000\000\000\000y\003\\\000\000\000\000\000\000\000\000\003]\000\000\000\000\000\000\003^\000\000\000\000\000\000\000\000\000\000\003_\000\000\000\000\000\000\000\000\001 \000\000\000\000\000\000\003\237\003\007\000\000\000\000\000\000\000\000\000\000\002/\000\000\000\000\004\001\003O\003A\000\000\000\000\003\242\000\000\001\210\003B\000\179\004\002\003?\003P\003R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\233\000\000\000\000\006o\000\000\000\000\000p\000\000\000\000\000\000\000\000\002\217\000\000\004\248\000\179\000y\000N\000\180\000\000\001\t\000\170\000\179\000\000\000\000\001W\000\174\000\000\000\000\003\244\000\000\004\005\006q\000\000\000\000\000\000\004\n\000\000\001\174\001\210\004\018\000\000\003\007\001\211\000\000\000\000\000\000\001\212\004*\003[\000\181\004\001\000\000\003A\000\000\003\235\000\000\000\000\000\000\003B\001\153\000\000\000\000\000\000\000\000\000\000\000\000\003\\\000\000\000\000\000\000\000\000\003]\000\000\003\233\000\000\003^\000\000\000\000\000\000\000\000\000\000\003_\000O\000\000\001Z\000\000\001 \000\164\000\000\000\210\003\237\000\000\001\t\000\172\000\000\000\000\000\000\001\b\000\000\000\000\000\000\003O\001[\000\000\001\230\003\242\002L\001\163\001\213\000\179\004\002\001]\003P\000\000\001\214\000\000\000\000\001^\000\000\000\000\000\000\000p\000\000\000\000\000\000\000\000\006o\003\235\000\000\000\178\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\231\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\232\003\244\000\000\004\005\006q\000\000\000\000\000\000\004\n\000\000\000\000\000\000\004\018\003\237\004\249\000\000\000\000\000\000\000\000\000\000\004*\003[\000\000\000\000\003O\000\000\000\000\000\000\003\242\000\000\000\000\001\233\000\179\004\002\001\210\003P\000\000\000\000\003?\003\\\003R\000\000\000\000\002a\003]\000\000\000\000\000\000\003^\003\243\002k\000\000\000\000\000\000\003_\000\000\000p\001\t\000\000\001 \000\000\002\217\001\235\004\248\000\179\000y\002d\000\180\000\000\000\000\000\000\000\000\000\000\000\000\003\244\000\000\004\252\000\000\001\227\003\129\002\017\004\n\000\000\000\000\000\000\004\018\000\179\000\000\000\000\001\228\000\000\003\007\000\219\004*\003[\000\000\000\000\000\000\000\000\000\181\004\001\000\000\003A\000\000\000\000\000\000\000\000\001\210\003B\000\000\002\028\003?\003\\\003R\000\000\000\000\002\020\003]\000\000\000\000\000\000\003^\000\000\003\233\000\000\001\238\000\000\003_\000\212\000p\000\000\000\000\001 \000\000\002\217\000\000\004\248\000\000\000y\000N\000\000\000\000\001\t\000\170\000\000\000\000\000\000\000\183\000\171\000\000\000\000\000\220\000\000\000\000\000\000\000\214\000\000\000\000\000\000\000\000\000\000\000\000\000\185\000\000\003\007\000\000\000\000\000\000\001\240\002l\000\000\000\000\000\000\004\001\000\000\003A\000\000\003\235\000\000\000\000\000\000\003B\000\000\001\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\235\000\000\003\233\002e\000\000\000\000\002f\000\000\000\000\000N\000\000\000O\000\000\003?\001\023\003R\000\164\000\000\000\000\003\237\004\251\001\t\000\172\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003O\000p\000\000\000\000\003\242\000\000\003\157\000\000\000\179\004\002\000y\003P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001 \000\000\003\243\003\235\000\000\000\178\000\000\000\000\004\187\000\000\000N\000\000\000\000\003\188\003?\000\000\003R\000\000\000\000\000\000\000\000\000\000\003\194\000\000\003A\000\000\000\000\003\244\000\000\004\252\003B\000\000\000p\000\000\004\n\000\000\000\000\003\157\004\018\003\237\004\254\000y\000\000\000\000\000\000\004\190\004*\003[\000\000\004\192\003O\000\000\000\000\000\000\003\242\000\000\000\000\000\000\000\179\004\002\000\000\003P\004\199\000\000\001\t\003\\\000\000\003\188\000\000\000\000\003]\000\000\000\000\000\000\003^\003\243\003\194\000\000\003A\000N\003_\000\000\000\000\000\170\003B\001 \000\000\000\000\000\174\000\000\000\179\004\196\000\000\000\180\000\000\003W\000\000\000\000\001\012\004\190\003\244\000p\004\252\004\192\000\000\000\000\003\157\004\n\000\000\000\000\000y\004\018\000\000\000\000\000\000\000\000\000\000\000\000\001\t\004*\003[\000\000\000N\000\000\000\000\000\181\000\161\0021\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\188\000\000\003\\\000\000\000\000\000\000\000\000\003]\000\000\003\194\003O\003^\000\000\000\000\000\164\000\000\000\210\003_\000\179\004D\000\172\003P\001 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\195\000\000\004n\004>\000\187\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\226\000\000\000\000\001\t\000O\000\000\000N\000\000\000\178\000\164\003?\000\000\003R\000\000\000\000\000\165\003O\000\000\000\000\004E\000\000\000\000\000\000\004\198\000\179\004D\000\000\003P\000p\000\000\000\000\004_\003[\003\157\000\000\000N\000\000\000y\000\000\000\170\000\000\003\243\000\000\000\000\000\174\000N\000\000\000\000\000\000\000\170\003\\\000\178\000\000\000\000\000\171\003]\000\000\000p\004\189\003^\000\000\000\000\000\000\003\188\000\000\003_\000y\000\000\000\000\000\000\001 \000\000\003\194\004E\003A\000\000\000\000\004M\000\000\000N\003B\000\000\000\000\000\170\000\000\004_\003[\000\000\000\174\000\000\000\000\000\000\000\000\000\179\004D\004\190\000\180\000\000\000\000\004\192\000\000\000O\000\000\000\000\003\\\000\000\000\164\000\000\000\210\003]\000\000\000O\000\172\003^\001\t\000\000\000\164\000\000\000\000\003_\000\000\000\219\000\172\000\000\001 \000\000\000\000\000\000\000\181\000N\000\000\000\000\000\000\000\170\000\000\000\000\000\179\000\000\000\174\000\180\000\000\000\000\004E\001\t\000\000\000O\004M\000\000\000\178\000\000\000\164\000p\000\210\000\000\004_\000\000\000\172\000\212\000\178\000\000\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000N\000\000\000\000\000\181\000\161\0020\000\000\0029\000\183\001\012\000\000\000\000\000\220\000\000\000\000\000\000\000\214\000\000\000\000\000\000\000\000\000\000\000\000\000\185\000\178\001 \000\000\000O\003O\000\000\000\000\000\000\000\164\000\000\000\210\000\000\000\179\004D\000\172\003P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\n\000\000\003\243\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\179\000O\000\000\000\180\001\t\000\000\000\164\000\000\000\000\000\178\000\179\000\000\000\165\000\180\000\000\000N\000\000\000\000\000\000\001D\004E\000\000\001P\000\000\004M\000\000\000\000\000\000\001\014\000\000\000\000\000\000\004_\003[\000\000\000\181\001\n\000p\001\012\000\000\000\000\000\000\000\000\000\000\000\179\000\181\000y\000\180\000\178\000\000\000\000\003\\\000\000\001\020\000\000\000\000\003]\000\000\000\000\000\000\003^\001\023\000\000\000\000\000\212\000\000\003_\000\000\000\000\000\000\000\000\001 \001\014\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000O\000N\000\183\001F\000\000\001D\000\220\000\000\001P\001G\000\214\000\000\002=\000\179\000N\000\000\000\180\000\185\001D\001 \000\000\001P\000\000\000p\000\000\000\000\000\000\000\212\000\000\000\000\000\000\000\000\000y\000\000\000\000\000\000\000p\000\000\000\000\000\000\001\135\001\014\001\t\000\000\000\000\000y\000\183\001V\000\181\000\000\000\220\000\000\000\179\000\000\000\214\000\180\000\000\000\000\000\000\000\000\000\000\000\185\000\000\000\000\000\000\000\000\001\020\000O\000\000\000\000\001F\000\000\000\000\000\000\001\023\000\000\001G\000\212\000\000\000\000\000O\000N\000\000\001F\000\000\001D\000\000\000\181\001P\001G\000\000\000\000\000\000\000\000\000\000\000\000\000\183\000\000\000\000\000\000\000\220\000\000\000\000\000p\000\214\000\000\000\000\001\135\000\000\001\t\000\000\000\185\000y\001 \001V\000\000\000\000\000\000\000\000\000\000\001\135\000\000\001\t\000\000\000\000\000\000\000\000\001V\000\000\000\000\000N\000\000\000\179\000\000\000\170\001W\000\000\000\000\000\000\000\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000O\000N\000\000\001F\000\000\001D\000N\000\000\001P\001G\000\170\001\136\001\137\000\000\000\000\000\171\000N\000\000\000\000\000\000\000\170\000\000\000\000\000p\000\000\000\174\000\000\000\000\000\000\000\000\000\000\000\000\000y\000\000\000\000\000\000\001X\000\000\001Y\000\000\001\135\000\000\001\t\000\000\000\000\000\000\001\023\001V\001Z\000O\000\000\000\000\000\179\000\000\000\164\001W\000\210\000\000\000\000\000\000\000\172\000\000\000\000\000\000\000\000\000\179\001[\000O\001W\000\000\001F\001\\\000O\000\215\000\000\001]\001G\000\164\001\136\001\218\000\000\001^\000O\000\172\000\000\001 \001\127\000\164\000\000\000\210\000\000\001\136\003F\000\172\000\000\000\000\000\178\000\000\000\000\000\000\000\000\000\000\000\000\001X\000\000\001Y\001b\001\135\000\000\001\t\000\000\000\000\000\000\001\023\001V\001Z\001X\000\000\001Y\000\178\000\000\000\000\000\000\000N\000\000\000\000\001\023\001D\001Z\000\178\001P\000\000\000\179\001[\000\000\001W\000\000\000\000\001\\\000\000\000\000\000\000\001]\000\000\000\000\000p\001[\000\000\001^\000\000\000\000\001\\\001 \001\127\000y\001]\000\000\000\000\001\136\003\239\000\000\001^\000\000\000\000\000N\001 \001\127\000\000\000\161\000\163\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\179\000\000\001X\000\180\001Y\000\000\000\000\000\000\000O\000\000\000\000\001F\001\023\000\000\001Z\000\000\000\000\001G\000\179\000\000\000\000\001W\000\000\000\179\000\000\000\000\000\180\000\000\000\219\000\000\000\000\000\000\001[\000\179\000N\000\181\000\180\001\\\000\170\000\000\000\000\001]\000\000\000\174\001\136\004\012\000\000\001^\001\135\000O\001\t\001 \001\127\000\000\000\164\001V\000p\000\000\000\181\000\000\000\165\000\219\000\000\000\000\000\212\000y\000\000\000\000\000\181\001X\000\000\001Y\000\000\000\000\006+\000\000\000\000\000\000\000\000\001\023\000\000\001Z\000\000\000\183\000\000\000p\000\000\000\220\000\000\000\000\000\000\000\214\000\000\000\000\000y\000\000\000\178\000\212\000\185\001[\000O\006\b\000\000\000\000\001\\\000\164\000\187\000\210\001]\000\000\000\000\000\172\000\000\000\000\001^\000\000\000\183\000\228\001 \001\127\000\220\000\000\000\000\000\000\000\214\006\t\000\000\006\012\005L\005M\000\000\000\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\179\000N\001\t\001W\000\000\000\170\000\000\000\178\000\000\000\000\000\174\000N\000\000\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000\000\000\000\000p\000\000\000\000\001\136\004G\000\000\000\000\000\000\001\t\000y\000p\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\179\000y\000\000\000\180\000N\000\000\000\000\000\000\000\170\000\000\001X\000\000\001Y\000\171\000\000\000\000\000\000\000\000\000\000\000\000\001\023\000\000\001Z\000\000\000\000\000\000\000O\000\000\005N\006.\000\000\000\164\000\000\000\210\000\000\000\181\000O\000\172\000\000\000\000\001[\000\164\000\000\000\210\000\000\001\\\000\000\000\172\000\000\001]\000\000\000\179\000\000\000\000\000\180\001^\000\000\000\000\000\000\001 \001\127\000\000\000N\000\000\000\000\000\000\000\170\000\000\001\t\000\000\000O\000\174\000\000\000\178\000\000\000\164\000\000\000\000\001\t\001.\000\000\000\172\000\000\000\178\000p\000\000\000\181\000\000\000\000\000\000\000\000\000N\000\000\000y\000\000\001D\000\000\000\000\001P\000\000\000\000\000N\000\000\000\000\002;\000\170\000\000\000\000\000\000\000\000\000\171\000\000\001\023\000p\000\000\000\212\000\000\000\178\000\000\000\000\000\000\000\000\000y\000\000\000\000\000N\000\000\000\000\000O\001D\000\000\000\000\001P\000\164\000\183\000\210\000\000\000\000\000\220\000\172\000\000\002\192\000\214\000\000\000\000\000\000\000\000\000p\000\000\000\185\0061\001 \000\000\000\000\000\000\000\000\000y\000O\000\179\000\000\001F\000\180\000\000\000\000\000\000\000\000\001G\000O\000\179\000\000\001\t\000\180\000\164\000\000\000\000\000\178\000\000\000\000\000\172\000\000\002\197\000\000\000\000\000\000\000\000\000\000\001.\000\000\000\000\000\000\000\000\000O\000\000\000\181\001F\000\000\001&\001\134\000\000\001\t\001G\000\000\000\179\000\181\001V\000\180\000\000\000\000\000\000\000N\000\000\0024\000\000\001D\000\178\000\000\001P\000\000\000\000\001\023\000\000\001(\000\212\000\000\000\000\000\000\000\000\000\000\000\000\001\023\000\000\000p\000\212\001\t\000\000\000\000\000\000\000\181\001V\000\000\000y\000\183\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\214\000\000\000\183\000\000\000\000\000\000\000\220\000\185\000\000\001 \000\214\000\179\000\000\000\000\000\180\000\000\000\000\000\185\000\000\001 \000\000\000\000\000\000\000\000\000\000\000\000\000O\000\000\000\000\001F\000\000\000\000\000\000\000\000\000\000\001G\000\187\000\000\000\000\001.\000\179\000\000\000\000\001W\000\000\000\000\000\181\000\230\000\000\000\000\000\179\000\000\000\000\000\180\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0010\000\000\001U\000\000\001\t\000\000\000\000\000\000\001\023\001V\000\179\000\212\000\000\001W\000\000\000\000\000\000\000\000\000N\000\000\000\000\000\181\001D\000\000\000\000\001P\000\000\001X\000\000\001Y\000\183\000\000\000\000\000p\000\220\000\000\000\000\001\023\000\214\001Z\000p\000\000\000y\000\000\000\000\000\185\000\000\001 \000\000\000y\000\000\000\000\000N\000\000\000\000\000\000\001D\001[\000\000\001P\000\000\001X\001\\\001Y\000\000\000\000\001]\000\000\000\000\000\187\001\130\001\023\001^\001Z\000p\000\000\001 \001\127\000\000\000\000\000\232\000\000\000\000\000y\000O\000\000\000\000\001F\000\000\000\000\000\000\001[\000\000\001G\000\179\000\000\001\\\001W\000\000\000\000\001]\000\000\000\000\000\000\000\000\002a\001^\000\000\000\000\000\000\001 \001\131\002k\000\000\000\000\000\000\000\000\000\000\000O\001\t\000\000\001F\000\000\000\000\001\129\000\000\001\t\001G\002d\000\000\000\000\001V\000N\000\000\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000\000\000\000\000\000\001X\000\000\001Y\000\000\000\000\000\000\000\000\000\000\000\000\000p\001\023\000\000\001Z\001\133\000\000\001\t\000\000\000N\000y\000\000\001V\000\161\002)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001[\000\000\000\000\000N\000\000\001\\\000\000\000\170\000\000\001]\000\000\000\000\000\171\000\000\000\000\001^\000\000\000\000\000\000\001 \001\127\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\164\000\000\000\210\000\000\000N\000\000\000\172\000\000\000\161\001;\000\000\000\000\000\000\000\179\000\000\000\000\001W\000\000\000N\000\000\000\000\000\000\000\170\000\000\000\000\000O\000\000\000\174\002l\000\000\000\164\000\000\000\000\000\000\000\000\000\000\000\165\001\t\000\000\000\000\000p\000O\000\178\000\000\000\000\000\000\000\164\000\179\000\000\000y\001W\000\000\000\172\002\245\000\000\000\000\002e\000\000\000\000\002f\000\000\000\000\000\000\000\000\001X\000\000\001Y\001\023\000\000\000\000\000O\000\000\000\178\000N\001\023\000\164\001Z\000\161\001>\000\000\000\000\000\165\000\000\000\000\000O\000\000\000\000\000\000\000\178\000\164\000\000\000\210\000\000\000N\001[\000\172\000\000\000\170\001X\001\\\001Y\000\000\000\174\001]\000\000\000\000\001 \000\000\001\023\001^\001Z\000\000\000\000\001 \001\127\000p\000\000\000\178\000\000\000\000\000\000\000\000\000\000\000\000\000y\000\000\001\t\000\179\001[\000\000\000\180\000\178\000\000\001\\\000\000\000\000\000\000\001]\000\000\000O\000\000\000\000\000\000\001^\000\164\000\000\000\000\001 \001\127\000\000\000\165\000\000\000\000\000\000\000\000\001\168\000\000\000\179\000\000\000O\000\180\000\000\000\181\000\000\000\164\000\000\000\210\000\000\000N\000\000\000\172\000\000\000\170\000\179\000\000\000\000\000\180\000\174\000\000\000\000\001\170\000\000\000\000\000\000\000\000\000\000\000\178\000\000\001\023\000N\000p\000\212\000\181\000\170\000\000\000\000\000\000\000\000\000\174\000y\000\000\001\t\000\179\000\000\000\000\000\180\000\178\000\000\000\181\000\000\000\183\000p\000\000\000\000\000\220\000\000\000\179\000\000\000\214\000\180\000y\000\000\000\000\000\000\000\000\000\185\000\000\001 \000\000\000\000\000\000\000\000\000\000\000\000\000O\000\000\000\000\000\181\000\000\000\164\000\000\000\210\000\000\000\000\001.\000\172\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000O\000\187\000N\000\000\000\000\000\164\003?\000\210\003R\000N\000\000\000\172\000\234\000\170\002?\000\000\000\179\000\000\000\174\000\180\000\000\001\t\001\023\000\000\000p\000\212\000\178\000\000\000\000\000\000\000N\000p\000\000\000y\000\161\001A\000\179\000\000\000\000\000\180\000y\000\000\001\t\000\000\000\183\000\000\000\000\000\178\000\220\000N\000\000\000\181\000\214\000\161\001\195\000\000\000\000\000\000\000\000\000\185\000\000\001 \000\000\000\000\001.\000\000\000\000\000\000\000O\000\000\003A\000\181\000\000\000\000\000\000\000O\003B\000\000\000\000\000\000\000\164\000\000\000\210\000\000\000\000\000\000\000\172\000\000\000\000\002E\000\000\000\000\000\000\000\000\000\000\000\000\000O\001\023\000\000\000\000\000\212\000\164\000\000\000\000\000\000\000\000\000\000\000\165\000\000\000\000\001\t\000\179\000\000\000\000\000\180\000O\000\000\001\t\000\000\000\183\000\164\000\000\000\178\000\220\000\000\000\000\000\165\000\214\000\000\000\000\000\000\000\000\000\179\000\000\000\185\000\180\001 \000\000\000\000\001.\000\000\003W\000\000\000\178\001\012\000\000\000\181\000\000\001\210\000\000\000\000\000\000\003?\000\000\003R\000\000\000\000\000\000\000\000\000\000\001.\000\000\000\178\000\000\002I\000\000\000\000\000\181\000\000\000\000\000\000\000\000\001\023\000\000\000\000\000\212\000\000\003\226\004\222\000\000\000\000\000\000\000\000\001\210\000\000\003\021\000\000\003?\000\000\003R\000\000\000\000\003O\001\023\000\183\000\000\000\212\000\000\000\220\000\000\000\179\000\000\000\214\003P\000\000\000\000\000\000\000\179\000\000\000\185\000\180\001 \003\226\004o\001\230\000\183\003A\003Y\000\000\000\220\000\000\000\000\003B\000\214\000\000\000\000\000\000\000\000\000\179\000\000\000\185\000\180\001 \000\000\000\000\003*\000\000\003\233\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000\000\000\179\001\210\001\230\000\180\003A\003?\001\020\003R\000\000\000\000\003B\000\000\000\000\003,\001\023\003[\000\181\000\000\000\000\000\000\000\000\001\023\000\000\000\000\000\212\003\233\000\000\000\000\000\000\000\000\003\226\004=\000\000\003\\\000\000\000\181\000\000\000\000\003]\000\000\000\000\000\000\003^\000\183\003\235\000\000\000\000\000\220\003_\000\000\000\000\000\214\000\000\001 \000\000\000\000\000\000\001\210\000\185\000\000\001 \003?\000\000\003R\000\000\000\000\000\000\001\230\000\000\003A\000\000\000\000\000N\000\000\000\000\003B\000\161\001\204\000\000\003\235\003\237\000\000\000\000\000\000\000\000\000\000\003\226\003\227\001\210\000\000\003\233\003O\003?\000\000\003R\003\242\000\000\000\000\000\000\000\179\000\000\000\000\003P\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\237\003\243\003\226\003\241\000\000\000\000\000\000\000\000\001\230\000\000\003A\003O\000\000\000\000\000\000\003\242\003B\000\000\000\000\000\179\000\000\000\000\003P\000O\000\000\000\000\003\244\000\000\000\164\003\235\000\000\003\233\000\000\000\000\000\165\000\000\003\243\000\000\000\000\001\230\000\000\003A\000\000\000\000\000\000\000\000\003[\003B\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\244\003\233\000\000\003\\\003\237\000\000\000\000\000\000\003]\000\178\000\000\000\000\003^\000\000\000\000\003O\000\000\000\000\003_\003\242\003[\000\000\000\000\000\179\003\235\000\000\003P\001\210\000\000\000\000\000\000\003?\000\000\003R\000\000\000\000\000\000\000\000\003\\\000\000\003\243\000\000\000\000\003]\000\000\000\000\000\000\003^\000\000\000\000\000\000\000\000\000\000\003_\000\000\003\235\003\226\004C\001\210\000\000\003\237\000\000\003?\000\000\003R\003\244\000\000\000\000\000\000\000\000\000\000\003O\000\000\000\000\000\000\003\242\000\000\000\000\000\000\000\179\000\000\000\000\003P\000\000\000\000\003[\000\000\003\226\004q\000\000\000\000\003\237\000\000\001\230\000\179\003A\003\243\000\180\000\000\000\000\000\000\003B\003O\003\\\000\000\000\000\003\242\000\000\003]\000\000\000\179\000\000\003^\003P\000\000\000\000\003\233\000\000\003_\000\000\000\000\003\244\000\000\000\000\001\230\000\000\003A\003\243\000\000\000\181\000\000\000\000\003B\000\000\001\210\000\000\000\000\000\000\003?\000\000\003R\003[\000\000\000\000\000\000\000\000\000\000\003\233\000\000\000N\000\000\000\000\003\244\000\170\000\000\000\000\000\000\000\000\000\174\003\\\000\000\000\000\000\000\004h\003]\000\000\000\000\000\000\003^\001\210\003\235\000\000\003[\001\211\003_\000\000\000\000\001\212\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\210\000\000\003\\\000\000\001\211\000\000\000\000\003]\001\212\000\000\000\000\003^\001\230\003\235\003A\000N\000\000\003_\003\237\000\170\003B\000\000\000\000\000\000\000\174\000\000\000\000\000O\000\000\003O\000\000\000\000\000\164\003\242\000\210\003\233\000\000\000\179\000\172\000\000\003P\000\000\000\000\000\000\000\000\000\000\000\000\001\230\000\000\003\237\000\000\001\213\000\000\000\000\003\243\000\000\000\000\001\214\000\000\000\000\003O\000\000\000\000\000\000\003\242\000\000\001\230\000\000\000\179\000\000\001\213\003P\000\000\000\000\000\178\000\000\001\214\000\000\000\000\003\244\000\000\000O\000\000\000\000\001\231\003\243\000\164\000\000\000\210\003\235\000\000\000\000\000\172\001\232\000\000\000\000\000\000\000\000\000\000\003[\000\000\001\165\000\000\002!\000\000\000\000\000\000\000\000\000\000\000\000\003\244\000\000\001\232\000\000\000\000\000\000\000\000\003\\\000\000\000\000\000\000\000\000\003]\001\210\001\233\003\237\003^\001\211\000\178\000\000\003[\001\212\003_\000\000\000\000\000\000\003O\000\000\000\000\000\000\003\242\000\000\000\000\001\233\000\179\000\000\000\000\003P\003\\\000\000\000\000\000\000\000\000\003]\000\000\001\235\000\000\003^\000\000\000\179\000\000\003\243\000\180\003_\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\227\006t\002\017\001\235\000\000\000\000\000\000\000\000\000\179\000\000\000\000\001\228\000\000\000\000\000\000\003\244\001\014\000\000\001\230\001\227\000\000\002\017\001\213\000\181\000\000\000\000\000\000\000\179\001\214\000\000\001\228\000\000\002\028\000\000\000\000\003[\000\000\002\030\002\020\000\000\000\000\000\000\000\179\000\000\000\000\000\180\000\000\001\238\000\000\000\000\000\000\000\000\000\212\003\\\000\000\002\019\000\000\002\020\003]\000\000\000\000\001\210\003^\000\000\001\232\001\211\001\238\000\000\003_\001\212\002 \000\183\000\000\000\000\000\000\000\220\000\000\000\181\000\000\000\214\000\000\001\210\000\000\000\000\000\000\001\211\000\185\000\000\000\000\001\212\001\240\000\000\000N\000\000\000\000\001\233\000\170\000\000\000\000\000\000\000\000\000\171\000\000\000\000\000N\001\241\000\212\000\000\000\170\001\240\000\000\000\000\000\000\000\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\241\000\183\001\235\001\230\000\000\000\220\000\000\001\213\000\000\000\214\000\000\000\000\000\000\001\214\000\000\000\000\000\185\000\000\001\227\000\000\002\017\000N\000\000\001\230\000\000\000\170\000\179\001\213\000\000\001\228\000\174\000\000\000\000\001\214\000O\000\000\000\000\000\000\000\000\000\164\002\023\000\000\000\000\000\000\000\000\000\172\000O\000\000\000\000\001\232\000\000\000\164\000\000\000\210\000\000\000\000\002\020\000\172\000\000\000\000\002\026\000\000\000\000\000\000\000\000\001\238\000N\000\000\000\000\001\232\000\170\000\000\000\000\000\000\000\000\000\174\000\000\000\000\000\000\000N\001\233\000\178\000\000\000\170\000\000\000\000\000\000\000O\000\174\000\000\000\000\000\000\000\164\000\178\000\210\000\000\000\000\000\000\000\172\000\000\001\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\240\000\000\000\000\001\235\000\000\000\000\000\000\000\000\000p\000\000\000\000\000\000\000\000\000\000\000\000\001\241\000\000\000y\000\000\001\227\000\000\002\017\000\000\001\235\000O\000\000\000\178\000\179\000\000\000\164\001\228\000\210\000\000\000\000\000\000\000\172\000\000\000O\000\000\001\227\000\000\002\017\000\164\000\000\000\210\000\000\000\000\000\179\000\172\000\000\001\228\000\000\000\000\000\000\000\000\000\000\000\000\002\020\000\179\000\000\000N\000\180\000\000\000\000\000\170\002\222\001\238\000\000\000\000\000\174\000\179\000\178\000N\000\180\000\000\000\000\000\170\002\020\000\000\000\000\002a\000\174\000\000\000\000\000\178\000\000\001\238\002k\000\000\000\000\000\000\000\000\000\000\000\181\001\t\000\000\000\000\000\000\002 \000\000\000\000\000\000\000\000\002d\000\000\000\181\002\239\000\000\000\000\001\240\000\000\000\179\000\000\000\000\000\180\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\241\000\000\000O\000\000\000\000\001\240\000\000\000\164\000\000\000\210\000\212\000\000\000\000\000\172\000O\002 \000\000\000\187\000\000\000\164\001\241\000\210\000\181\000\000\000\000\000\172\000\000\002\251\000\236\000\183\000\000\000\000\000\179\000\220\000\000\000\180\000\000\000\214\003c\000\000\003\003\000\000\000\000\000\000\000\185\000\179\000\000\000\000\000\180\000\178\000\000\000\212\000\000\000\000\000N\000\000\000\000\000\000\000\170\000\000\002 \000\178\000\000\000\174\000\000\000\000\000\000\000\181\000\000\000\000\000\183\000\000\000\000\002 \000\220\000\000\000\000\000\000\000\214\000\000\000\181\000\000\002l\000\000\000N\000\185\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000\000\000\000\000\212\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\170\000\000\000\212\002e\000\000\000\000\002f\000\000\000\183\000\000\000\000\000\000\000\220\000O\001\023\000\000\000\214\000\000\000\164\000\000\000\210\000\183\003\n\000\185\000\172\000\220\000\000\000\179\000N\000\214\000\180\000\000\000\170\000\000\000\000\000\000\000\185\000\174\000\000\000\179\000\000\000\000\000\180\000O\000\000\000\000\000\000\000\000\000\164\000\000\000\210\000\000\000\000\001 \000\172\002 \000\000\000\000\000\000\000\000\000\178\000\000\000\181\000\000\000\000\000\000\000\000\000\219\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000N\000\000\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000N\000\000\000\178\000\212\000\170\000\000\000O\000\000\000\000\000\174\000\000\000\164\000\000\000\210\000\000\000\212\000\000\000\172\000\000\000\000\000\000\000\000\000\183\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\214\000\000\000\000\000\000\000\183\000\000\000\000\000\185\000\220\000N\000\000\000\000\000\214\000\170\000\000\000\000\000\000\000\000\000\174\000\185\000\000\000\000\003\162\000\178\000\000\000\000\000O\000\179\000\000\000\000\000\180\000\164\000\000\000\210\000\000\000\000\000O\000\172\000\000\000\000\000\000\000\164\000\000\000\210\000\000\000\000\000\000\000\172\000\000\000\000\000\000\000\000\003\174\000\000\000\000\002 \000\000\000\179\000\000\000\000\000\180\000\000\000\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\178\000\000\000O\000\000\000\000\000\000\000\000\000\164\000\000\000\210\000\178\000\000\002 \000\172\000\000\000\000\000\000\000\000\000\212\000\181\000\000\000\000\000\000\000\000\000\000\000N\003\197\000\000\000\000\000\170\003\179\000\000\000\000\000\000\000\171\000\179\000\000\000\183\000\180\000\000\000\000\000\220\000\000\000\000\000\000\000\214\000\000\000\000\000\212\000\178\000N\000\000\000\185\000\000\000\161\001\207\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002 \000\000\000\000\000\000\000\183\000\000\000\000\000\181\000\220\000\000\000\000\000N\000\214\000\000\000\000\000\170\000\000\003\186\000\000\000\185\000\174\000\000\000\179\000\000\000\000\000\180\000\000\003\192\000O\000\000\000\000\000\000\000\179\000\164\000\000\000\180\000\212\000N\000\000\000\172\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000\000\000\000\000\000\002 \000\000\000\000\000O\000\000\000\183\000\000\000\181\000\164\000\220\002 \000\000\000\000\000\214\000\165\000\000\000\000\000\181\000\000\000\000\000\185\000\179\000\000\000\000\000\180\000\178\000N\000O\000\000\000\000\000\170\000\000\000\164\000\000\000\210\000\174\000\212\000\000\000\172\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\212\000\000\000\000\000\219\000\178\003\199\000\000\000O\000\000\000\183\000\181\000\000\000\164\000\220\000\210\000\000\000\000\000\214\000\172\000\183\000\000\000\000\000\000\000\220\000\185\000\000\000\000\000\214\000\178\000\000\000\000\000N\000\000\000\000\000\185\000\170\000\000\000\000\000\000\000\212\000\174\000\000\000\000\000\000\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\164\000N\000\210\000\178\000\000\000\170\000\172\000\183\000\000\000\000\000\174\000\220\000\000\000\179\000\000\000\214\000\180\000\000\000\000\000\000\000\000\000N\000\185\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000\000\000\000\000\000\000\000\000N\000\000\000\000\000\179\000\170\000\000\000\180\000\178\000\000\000\171\000\000\000O\000\000\000\181\000\000\000\000\000\164\000\000\000\210\000N\000\000\000\000\000\172\000\161\003\023\000\000\000\000\000\179\000\000\000\000\000\180\000\000\000O\000\000\000\000\000\000\000\000\000\164\000\181\000\210\000\000\000\000\000\000\000\172\000\000\000\000\000\000\000\000\004\016\000\000\000\000\000\000\000O\000\179\000\000\000\219\000\180\000\164\000\178\000\210\000N\000\187\000\181\000\172\000\170\000\000\000O\000\000\000\000\000\174\000\000\000\164\000\238\000\000\000\000\000\000\004?\000\172\000\000\000\178\000\000\002 \000\000\000\000\000\000\000O\000\000\004\029\000\181\000\000\000\164\000\212\000\179\000\000\000\000\000\180\000\165\000N\000\000\000\178\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000\000\000\000\000\000\000\183\000N\000\000\000\178\000\220\000\161\0036\000\212\000\214\000\000\002 \000\000\000\000\000\000\000\000\000\185\000O\000\181\000\000\000\000\000\000\000\164\000\178\000\210\000\000\000\000\000\183\000\172\004&\000\000\000\220\000\000\000\000\000\179\000\214\000\000\000\180\000\000\000\000\000\000\004A\000\185\000\000\000\000\000\000\000\000\000\212\000\000\000\000\004.\000\000\000\000\000\000\000O\000\179\000\000\000\000\000\180\000\164\000\000\000\210\002 \000N\000\178\000\172\000\183\000\170\000O\000\181\000\220\000\000\000\174\000\164\000\214\000\179\000\000\000\000\000\180\000\165\000\000\000\185\000\000\002 \000\000\000\000\000\000\000\000\000\000\000\179\000\181\000\000\000\180\000\000\000\000\000\000\000\000\000\000\000\212\000\000\000\000\000\178\000\000\000\219\000\000\000\000\000\000\000\000\000\179\000\000\000\181\000\180\000\000\000\000\000N\000\178\000\000\000\183\000\170\000\212\000\000\000\220\000\000\000\174\000\181\000\214\000\000\000\000\000\000\000O\000\000\000\000\000\185\000\000\000\164\000\000\000\210\000\000\000\183\000\212\000\172\000\000\000\220\000\181\000\000\000\000\000\214\000\000\000\000\000\179\000\000\000\000\000\180\000\185\000\000\000\000\000\000\000\000\000\183\000\000\000\000\000\000\000\220\000\000\000\000\000\000\000\214\000\000\000\000\000\000\000\000\000\000\000\187\000\185\000\000\000\000\000\178\000\219\000\000\000\000\000O\004K\000\000\000\240\000\181\000\164\000\179\000\210\000N\000\180\000\000\000\172\000\170\000\000\000\000\000\000\000\000\000\171\000\000\000\000\000\179\000\000\000\000\000\180\000\000\000\000\000\000\000\000\000N\000\000\000\000\000\000\000\170\000\212\002 \000\000\000\000\000\174\000\000\000\000\000\000\000\181\000N\000\000\000\000\000\000\000\170\000\178\000\000\000\000\000\000\000\174\000\183\000\000\000\000\000\181\000\220\000\000\000\000\000\000\000\214\000\000\006P\000\000\000\000\000\000\000\000\000\185\000\000\000\000\000\212\000\000\000\000\000N\000O\000\000\004X\000\170\000\000\000\164\000\000\000\179\000\174\000\000\000\180\000\172\000N\000\000\000\000\000\183\000\170\000\000\000\000\000\220\000O\000\174\000\000\000\214\000\000\000\164\000\000\000\210\000\000\000\000\000\185\000\172\006\181\000\000\000O\002 \000\000\000\000\000\000\000\164\000\000\000\210\000\181\000\000\000\000\000\172\000\000\000\178\000\000\000\000\000N\000\000\000\000\004]\000\170\000\000\000\000\000\000\000\179\000\174\000\000\000\180\000\000\000\000\000\000\000O\000\000\000\178\000\000\000\000\000\164\000\212\000\210\000\000\000\000\000\000\000\172\000\000\000O\000\000\000\000\000\178\000\000\000\164\000\000\000\210\002 \000\000\000\000\000\172\000\183\000N\000\000\000\181\000\220\000\170\000\000\000\000\000\214\000\000\000\174\000\000\000\000\000\000\000N\000\185\000\000\000\000\000\170\000\000\000\000\000\000\000\178\000\174\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\164\000\212\000\210\000\000\000\178\000\000\000\172\000\000\000\000\000\000\000\000\000\179\000\000\000\000\000\180\000\000\000\000\000\000\000\000\000\000\000\183\000\000\000\000\000\000\000\220\000\000\004d\000\000\000\214\000\000\000\000\000\179\000\000\000\000\000\180\000\185\000O\000\000\000\000\000\000\000\000\000\164\000\178\000\210\000\000\000\179\000\181\000\172\000\180\000O\000\000\000\000\000\000\000\000\000\164\000\000\000\210\000\000\000\000\002 \000\172\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000\000\000\000\000\000\006Q\000\000\000\000\000\179\000\000\000\000\000\180\000\181\000\000\000\000\000\178\000\000\000\000\000\000\000\000\000\000\000\179\000\000\000\000\000\180\000\000\000\187\000\212\000\178\000\000\000N\000\000\000\000\000\000\000\161\0039\001\002\000\242\000\000\000\000\000\000\000\212\000\000\000\181\000\000\000\000\000\183\000\000\000\000\006Q\000\220\000\000\000\000\000\000\000\214\000\000\000\181\000\000\000\000\000\179\000\183\000\185\000\180\000\000\000\220\000\000\000\000\000N\000\214\000\000\000\000\000\170\000\212\000\000\000\000\000\185\000\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\212\000\000\001\016\000N\000N\000\000\000\183\000\170\000\170\000\181\000\220\000O\000\174\000\174\000\214\000\179\000\164\000\000\000\180\000\183\000N\000\185\000\165\000\220\000\170\000\000\000\000\000\214\000\179\000\174\000\000\000\180\000\000\000\000\000\185\000\000\000\000\000N\000\212\000\000\000\000\000\161\003<\001\140\000\000\000\000\000\000\000\000\000O\000\000\000\181\000\000\000\000\000\164\000\000\000\210\001\157\000\183\000\178\000\172\000\000\000\220\000\000\000\181\000\000\000\214\000\000\000\000\000\000\000O\000O\000\000\000\185\000\000\000\164\000\164\000\210\000\210\000N\000\212\000\172\000\172\000\170\000\000\000\000\000\000\000O\000\174\000\000\000\000\000\000\000\164\000\212\000\210\000\000\000\178\000N\000\172\000\183\000\000\000\170\000\000\000\220\000O\000\000\000\174\000\214\000\000\000\164\000\000\000\000\000\183\000\000\000\185\000\165\000\220\000\178\000\178\000\000\000\214\000\000\000\000\000\000\000\000\000\000\000\000\000\185\000\000\000\000\000\000\000\000\000\000\000\000\000\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\179\000O\000\000\000\180\000\000\000\000\000\164\000\178\000\210\000\000\000\000\000\000\000\172\000\000\000\000\000\000\000\000\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\164\000N\000\210\000\000\000\000\000\170\000\172\000\000\000\000\000\000\000\174\000\181\000\000\000\179\000\000\000\000\000\180\000\000\000N\000\000\000\000\000\000\000\170\000\000\000\178\000\000\000\000\000\174\000\000\000\000\000\000\000\000\000\000\000\000\000\179\000\179\000\000\000\180\000\180\000\000\000\000\001\177\000\178\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\179\000\000\000\000\000\180\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\179\001\221\000\000\000\000\000\000\000O\000\179\000\181\000\181\000\180\000\164\000\000\000\210\000\000\000\000\000\212\000\172\002\205\000\000\000\000\000\000\000\000\000O\000\000\000\181\000\000\000\000\000\164\000\000\000\210\000\000\000N\000\000\000\172\000\183\000\170\000\212\000\212\000\220\000\000\000\174\000\181\000\214\000\000\000\000\000\000\000\000\000\179\000\000\000\185\000\180\000\000\000\178\000\212\000\000\000\183\000\183\000\000\000\000\000\220\000\220\000\000\000\000\000\214\000\214\000\179\000\000\000\000\000\180\000\178\000\185\000\185\000\183\000\000\000\000\002\211\000\220\000\000\000\000\000\000\000\214\000\000\000\181\000\000\000\000\000\000\000\000\000\185\000\000\000\000\000\000\000\000\000\000\003\026\000\000\000\000\000\000\000O\000\000\000\000\000\181\000\000\000\164\000N\000\210\000\000\000\000\000\170\000\172\000\000\000\000\000\212\000\174\000N\000\000\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000\000\000\000\000\000\000\000\000N\000\000\000\212\000\183\000\170\000\000\000\000\000\220\000\000\000\174\000\179\000\214\000\000\000\180\000\000\000\000\000\000\000\178\000\185\000\000\000\000\000\183\000\000\000\000\000\000\000\220\000\000\000\179\000\000\000\214\000\180\000\000\000\000\000\000\000\000\000\000\000\185\000\000\003\031\000\000\000\000\000\000\000O\000\000\000\000\000\181\000\000\000\164\000\000\000\210\000\000\000\000\000O\000\172\000\000\003#\000\000\000\164\000\000\000\210\000\000\000\000\000\181\000\172\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\164\000\000\000\210\000\212\000N\000\000\000\172\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000\000\000\000\000\000\000\000\000\178\000\000\000\212\000\000\000\183\000N\000\000\000\000\000\220\000\170\000\178\000\000\000\214\000\179\000\171\000\000\000\180\000\000\000\000\000\185\000\000\000\183\000\000\000\000\000\178\000\220\000\000\000\000\000\000\000\214\000\000\000\000\000\000\000\000\000\000\000\000\000\185\000\000\000\000\000\000\000\000\003I\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000N\000O\000\000\000\000\000\170\000\000\000\164\000\000\000\210\000\174\000N\000\000\000\172\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000O\000\000\000\000\000\000\000N\000\164\000\212\000\000\000\170\000\000\000\000\000\172\000\000\000\174\000\179\000\000\000\000\000\180\000\000\000\000\000\000\000\000\000\000\000\000\000\179\000\183\000\000\000\180\000\178\000\220\000\000\000\000\000\000\000\214\000\000\000\000\000\000\000\000\000\179\000\000\000\185\000\180\003\148\000\000\000\000\000\000\000O\000\178\000\000\000\181\000\000\000\164\003\230\000\210\000\000\000\000\000O\000\172\000\000\000\181\000\000\000\164\000\000\000\210\000\000\000\000\004\180\000\172\000\000\000\000\000O\000\000\000\000\000\181\000\000\000\164\000N\000\210\000\212\000\000\000\170\000\172\000\000\000\000\000\000\000\174\000N\000\000\000\212\000\000\000\170\000\000\000\000\000\178\000\000\000\174\000\000\000\183\000\000\000\000\000\000\000\220\000\212\000\178\000\000\000\214\000\000\000\183\000\000\000\000\000\000\000\220\000\185\000\179\000\000\000\214\000\180\000\178\000\000\000\000\000\000\000\183\000\185\000\000\000\000\000\220\000\000\000\000\000\000\000\214\000\000\000\000\000\179\000\000\000\000\000\180\000\185\000\000\000\000\000\000\000\000\004\213\000O\000\000\000\000\000\000\000\000\000\164\000\181\000\210\000\000\000N\000O\000\172\000\000\000\170\000\000\000\164\000\000\000\210\000\174\000\000\000\000\000\172\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\212\000\179\000\000\000\000\000\180\000\000\000\000\000\000\000\000\000\000\000\000\000\179\000\178\000\000\000\180\000\000\000\000\000\000\000\000\000\183\000\000\000\000\000\178\000\220\000\000\000\179\000\000\000\214\000\180\004\233\000\000\000\000\000\000\000\000\000\185\000\000\000\181\000\000\000\187\004\235\000O\000\000\000\000\000\000\000\000\000\164\000\181\000\210\000\000\000\244\000\000\000\172\000\000\004\237\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000N\000\000\000\212\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000N\000\000\000\212\000\000\000\170\000\000\000\000\000\000\000\000\000\174\000\000\000\183\000\000\000N\000\178\000\220\000\212\000\170\000\000\000\214\000\000\000\183\000\171\000\000\000\179\000\220\000\185\000\180\000\000\000\214\000\000\000\000\000\000\000\000\000\179\000\183\000\185\000\180\000\000\000\220\000\000\000\000\000\000\000\214\000\000\000\000\000\000\000\000\000\000\000\000\000\185\000\000\004\243\000\000\000\000\000\000\000O\000\000\000\000\000\181\000\000\000\164\005\004\000\000\000\000\000\000\000O\000\172\000\000\000\181\000\000\000\164\000\000\000\000\000\000\000\000\000N\000\172\000\000\000O\000\170\000\000\000\000\000\000\000\164\000\171\000\000\000\000\000\212\000\000\000\172\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\212\000\179\000N\000\000\000\180\000\178\000\170\000\000\000\000\000\183\000\000\000\171\000\000\000\220\000\000\000\178\000\000\000\214\000\000\000\183\000\000\000\000\000\000\000\220\000\185\000\000\000\000\000\214\000\178\005\018\000\000\000N\000\000\000\000\000\185\000\170\000\181\000\000\000\000\000\000\000\171\000\000\000\000\000N\000O\000\000\000\000\000\170\000\000\000\164\000\000\000\000\000\171\000N\000\000\000\172\000\000\000\170\000\000\000\000\000\000\000\000\000\171\000\000\000\000\000\212\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\164\000\000\000\000\000N\000\000\000\000\000\172\000\170\000\000\000\000\000\000\000\183\000\171\000\000\000\000\000\220\000\000\000\179\000\178\000\214\000\180\000\000\000\000\000\000\000O\000\000\000\185\000\179\000\000\000\164\000\180\000\000\000\000\000\000\000\000\000\172\000O\000\000\000\000\000\000\000\179\000\164\000\178\000\180\000\000\000\000\000O\000\172\000\000\000\000\001d\000\164\000\181\000\000\000\000\000\000\000\000\000\172\000\000\000\000\003e\000\000\000\181\000\000\000\000\000\000\000\000\000\000\000\000\000O\000\000\000\178\000\000\000\000\000\164\000\181\000\000\000\000\000\000\000\000\000\172\000\212\000\000\000\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\212\000N\000\178\000\000\000\000\000\170\000\000\000\000\000\000\000\183\000\171\000\000\000\179\000\218\000\000\000\180\000\000\000\214\000\000\000\183\000\000\000\000\000N\000\218\000\185\000\178\000\170\000\214\000\000\000\000\000\000\000\171\000\187\000\000\000\185\000\000\000\179\000\000\000\000\000\180\000\000\000\000\000\000\000\246\000\000\000\000\000\000\000\181\000\000\000\000\000N\000\000\000N\000\000\000\170\000\000\000\170\000\000\000\000\000\171\000\000\000\171\000\000\000\000\000\000\000\179\000N\000O\000\180\000\000\000\170\000\181\000\164\000\000\000\000\000\171\000\000\000\179\000\172\000\000\000\180\000\000\000\000\000\000\000\000\000\000\000\000\000\179\000O\000\000\000\180\000\000\000\000\000\164\000\000\000\187\000\000\000\000\000\000\000\172\000\181\000\000\000\000\000\000\000\000\000\000\000\248\000\000\000\000\000\000\000\179\000\000\000\181\000\180\000\178\000\000\000O\000\000\000O\000\187\000\000\000\164\000\181\000\164\000N\000\000\000\000\000\172\000\170\000\172\000\250\000\000\000O\000\171\000\000\000\178\000\000\000\164\000\000\000\000\000\000\000\000\000\000\000\172\000\000\000\181\000\000\000N\000\187\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\171\000\000\000\000\000\252\000\187\000\000\000\000\000\178\000N\000\178\000\000\000\000\000\170\000\000\000\187\001`\000\000\000\171\000\000\000\000\000\000\000\000\000\000\000\178\000\000\001f\000\000\000\000\000\000\000\000\000\000\000\000\000N\000\000\000O\000\000\000\170\000\187\000\000\000\164\000\000\000\171\000\000\000\179\000\000\000\172\000\180\000N\001h\000\000\000\000\000\170\000\000\000\000\000N\000\000\000\171\000O\000\170\000\000\000\000\000\000\000\164\000\171\000\179\000\000\000\000\000\180\000\172\000\000\000\000\000\000\000\000\000\000\000O\000\000\000\000\000\000\000\181\000\164\000\000\000\178\000\000\000\000\000N\000\172\000\000\000\000\000\170\000\000\000\000\000\000\000\179\000\171\000\179\000\180\000\000\000\180\000O\000\181\000\000\000\000\000\000\000\164\000\178\000\000\000\000\000\000\000\179\000\172\000N\000\180\000\000\000O\000\170\000\000\000\000\000\000\000\164\000\171\000O\000\178\000\000\000\000\000\172\000\164\000\187\000\181\000\000\000\181\000\000\000\172\000\000\000\000\000\000\000\000\000\000\001j\000\000\000\000\000\000\000\000\000\000\000\181\000N\000\178\000\000\000\187\000\170\000\000\000O\000\000\000\000\000\171\000\000\000\164\000\000\000\000\001l\000\000\000\178\000\172\000\000\000\000\000\000\000\000\000\179\000\178\000\000\000\180\000\000\000\000\000\000\000\000\000\000\000\187\000O\000\187\000\000\000\000\000\000\000\164\000\000\000\000\000\000\000\000\001n\000\172\001p\000\179\000\000\000\187\000\180\000\000\000\000\000\000\000N\000\178\000\000\000\000\000\170\000\181\001r\000\000\000\000\000\171\000\179\000\000\000\000\000\180\000O\000\000\000\000\000N\000\000\000\164\000\000\000\170\000\000\000\000\000\000\000\172\000\171\000\178\000\181\000N\000\000\000\000\000\000\000\170\000\179\000\000\000\000\000\180\000\171\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000\179\000\000\000\000\000\180\000\187\000N\000\000\000\179\000\000\000\170\000\180\000\000\000\178\000\000\000\171\001t\000\000\000O\000\000\000\000\000\181\000\000\000\164\000\000\000\000\000\000\000\000\000\187\000\172\000\000\000\000\000\000\000\000\000\000\000O\000\181\000\000\000\179\001v\000\164\000\180\000\000\000\181\000\000\000\187\000\172\000O\000p\000\000\000\000\000N\000\164\000\000\000\000\000\170\001x\000y\000\172\000N\000\171\000\000\000\000\000\170\000\179\000\178\000\000\000\180\000\171\000\187\000\000\000\000\000O\000\181\000\000\000\000\000\000\000\164\000\000\000\000\001z\000\000\000\178\000\172\000\187\000\000\000\000\000\000\000N\000\000\000\000\000\187\000\170\000\000\000\178\001|\000\000\000\171\000\179\000\181\000\000\000\180\001~\000N\000\000\000\000\000\000\000\170\000\000\000\000\000\000\000\000\000\171\000\000\000\000\000\000\000\000\000O\000\000\000\178\002a\000\187\000\164\000\000\000\000\000O\000\000\002k\000\172\000\000\000\164\000\000\001\243\000\181\001\t\000\000\000\172\000\000\000\000\000\000\000N\000\000\000\000\002d\000\170\000\000\000\000\000\187\000\000\000\171\000\179\000\000\000N\000\180\000O\000\000\000\170\000\000\001\245\000\164\000\000\000\171\000\000\000\000\000\178\000\172\000\000\000\179\000\000\000O\000\180\000\000\000\178\000\000\000\164\000\000\000\000\000\000\000\000\000\179\000\172\000\187\000\180\000\000\000\000\000\181\000\000\000\000\000\000\000\000\000\000\000\000\001\247\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\178\000\181\000\000\000\179\000\000\000O\000\180\000\000\000\000\000\000\000\164\000\000\000\000\000\181\000\000\000\178\000\172\000O\000\000\000\000\000\000\000N\000\164\000\000\000\000\000\170\000\000\000\000\000\172\000\000\000\171\000\000\000\187\000\000\000\000\000N\000\000\000\000\000\181\000\170\000\000\000\000\000\000\001\249\000\171\002l\000\000\000\000\000\179\000\187\000\000\000\180\000\178\000\000\000\000\000\000\000\179\000\000\000\000\000\180\001\251\000\187\000\000\000\000\000\178\000\000\000\000\000\000\000\000\000\000\004\025\000\000\001\253\002e\000\000\000\000\002f\000\000\000\000\000\000\000\000\000\000\000\000\000\181\001\023\000\179\000\187\000O\000\180\000\000\000N\000\181\000\164\000\000\000\170\000\000\000\000\001\255\000\172\000\171\000\179\000O\000\000\000\180\000\000\000N\000\164\000\000\000\000\000\170\000\000\000\000\000\172\000\000\000\171\000\000\000\000\000\000\000\000\000\000\000\181\000N\000\000\001 \000\000\000\170\000\000\000\000\000\000\000\000\000\171\000\187\000\000\000\000\000\178\000\181\000\000\000\179\000\000\000\187\000\180\000\000\002\001\000\000\000\000\000\000\000\000\000\000\000\178\000\179\002\003\000p\000\180\000\000\000\000\000\000\000O\000\000\000\000\000\000\000y\000\164\000\000\000\000\000\000\000\000\000\000\000\172\000\187\000\000\000\000\000O\000\181\000\000\000\000\000\000\000\164\000\000\000\000\002\005\000\000\000\000\000\172\000\187\000\181\000\000\000N\000O\000\000\000\000\000\170\000\000\000\164\000\000\002\007\000\171\000\000\000\000\000\172\000\000\000\000\000\000\000\000\000\178\000\000\000N\000\000\000N\000\000\000\170\000\000\000\170\000\000\000\000\000\171\000\000\000\171\000\000\000\178\000\179\000\187\000\000\000\180\002a\000\000\000\000\000p\000\000\000\000\000\000\002k\002\t\000\187\000\179\000\178\000y\000\180\001\t\000N\000\000\000\000\000\000\000\170\002\011\000\000\000\000\002d\000\171\000\000\000\000\000\000\000\000\000O\000\000\000\181\000\000\000\000\000\164\000\000\000\000\000N\000\000\000\000\000\172\000\170\000\000\000\000\000\000\000\181\000\171\000\000\000O\000\000\000O\000\000\000\000\000\164\000\000\000\164\000\000\000\000\000N\000\172\000\000\000\172\000\170\000\000\000\000\000\179\000\000\000\171\000\180\000\000\000\000\000\000\000\000\000\000\000\000\002a\000\178\000\000\000\000\000\187\000\179\000O\002k\000\180\000\000\000\000\000\164\000\000\000\000\001\t\002\r\000\000\000\172\000\187\000\000\000\178\000\179\000\178\002d\000\180\000\181\000N\000\000\000O\003a\000\170\000\000\000\000\000\164\000\000\000\171\000\000\000\000\000\000\000\172\000\181\000\000\000\000\000N\000\000\000\000\000\000\000\170\000\000\000O\000\000\002l\000\171\000\178\000\164\000\000\000\181\000N\000\000\000N\000\172\000\170\000\000\000\170\000\000\000\000\000\171\000\000\000\171\000\000\000\000\000\000\000\000\000\187\000\000\000\178\004!\000\000\000\000\002e\000\000\000\000\002f\000\000\003g\000\000\000\179\000\000\000\187\000\180\001\023\000\000\000O\000\000\000\000\000\000\000\178\000\164\000\000\003i\000\000\000\000\000\000\000\172\000\187\000\179\000\000\000\179\000\180\000O\000\180\000\000\000\000\000\000\000\164\003k\000\000\000\000\000\000\000\000\000\172\000\181\000\000\000O\000\000\000O\002l\000\000\000\164\001 \000\164\000\000\000\000\000\000\000\172\000\000\000\172\000\000\000\179\000\178\000\181\000\180\000\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004T\000\000\000\000\002e\000\000\000\178\002f\000\000\000\000\000\179\000\000\000\000\000\180\000\000\001\023\000\000\000\000\000\000\000\187\000\178\000\000\000\178\000\181\000\000\000\000\000\000\000\000\000\000\000\000\003m\000\179\000\000\000\000\000\180\000\000\000\000\000\000\000\187\000\000\000\187\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\000\003o\000\000\003q\000\000\000\000\001 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000\000\000\187\000\000\000\000\000\179\000\000\000\000\000\180\000\000\000\000\000\000\000\000\003s\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\179\000\000\000\187\000\180\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003u\000\179\000\000\000\179\000\180\000\181\000\180\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003w\000\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\181\000\000\000\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003y\000\000\000\000\000\000\000\000\000\000\000\187\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003{\000\000\000\000\000\187\000\000\000\187\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003}\000\000\003\127"))
1641
1642 let semantic_action =
1643 [|
1644 (fun _menhir_env ->
1645 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1646 let {
1647 MenhirLib.EngineTypes.state = _menhir_s;
1648 MenhirLib.EngineTypes.semv = _1;
1649 MenhirLib.EngineTypes.startp = _startpos__1_;
1650 MenhirLib.EngineTypes.endp = _endpos__1_;
1651 MenhirLib.EngineTypes.next = _menhir_stack;
1652 } = _menhir_stack in
1653 raise (MenhirLib.TableInterpreter.Accept _1));
1654 (fun _menhir_env ->
1655 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1656 let {
1657 MenhirLib.EngineTypes.state = _menhir_s;
1658 MenhirLib.EngineTypes.semv = _1;
1659 MenhirLib.EngineTypes.startp = _startpos__1_;
1660 MenhirLib.EngineTypes.endp = _endpos__1_;
1661 MenhirLib.EngineTypes.next = _menhir_stack;
1662 } = _menhir_stack in
1663 raise (MenhirLib.TableInterpreter.Accept _1));
1664 (fun _menhir_env ->
1665 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1666 let {
1667 MenhirLib.EngineTypes.state = _menhir_s;
1668 MenhirLib.EngineTypes.semv = _1;
1669 MenhirLib.EngineTypes.startp = _startpos__1_;
1670 MenhirLib.EngineTypes.endp = _endpos__1_;
1671 MenhirLib.EngineTypes.next = _menhir_stack;
1672 } = _menhir_stack in
1673 raise (MenhirLib.TableInterpreter.Accept _1));
1674 (fun _menhir_env ->
1675 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1676 let {
1677 MenhirLib.EngineTypes.state = _menhir_s;
1678 MenhirLib.EngineTypes.semv = _1;
1679 MenhirLib.EngineTypes.startp = _startpos__1_;
1680 MenhirLib.EngineTypes.endp = _endpos__1_;
1681 MenhirLib.EngineTypes.next = _menhir_stack;
1682 } = _menhir_stack in
1683 raise (MenhirLib.TableInterpreter.Accept _1));
1684 (fun _menhir_env ->
1685 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1686 let {
1687 MenhirLib.EngineTypes.state = _menhir_s;
1688 MenhirLib.EngineTypes.semv = _1;
1689 MenhirLib.EngineTypes.startp = _startpos__1_;
1690 MenhirLib.EngineTypes.endp = _endpos__1_;
1691 MenhirLib.EngineTypes.next = _menhir_stack;
1692 } = _menhir_stack in
1693 raise (MenhirLib.TableInterpreter.Accept _1));
1694 (fun _menhir_env ->
1695 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1696 let {
1697 MenhirLib.EngineTypes.state = _menhir_s;
1698 MenhirLib.EngineTypes.semv = _1;
1699 MenhirLib.EngineTypes.startp = _startpos__1_;
1700 MenhirLib.EngineTypes.endp = _endpos__1_;
1701 MenhirLib.EngineTypes.next = _menhir_stack;
1702 } = _menhir_stack in
1703 raise (MenhirLib.TableInterpreter.Accept _1));
1704 (fun _menhir_env ->
1705 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1706 let {
1707 MenhirLib.EngineTypes.state = _menhir_s;
1708 MenhirLib.EngineTypes.semv = _1;
1709 MenhirLib.EngineTypes.startp = _startpos__1_;
1710 MenhirLib.EngineTypes.endp = _endpos__1_;
1711 MenhirLib.EngineTypes.next = _menhir_stack;
1712 } = _menhir_stack in
1713 raise (MenhirLib.TableInterpreter.Accept _1));
1714 (fun _menhir_env ->
1715 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1716 let {
1717 MenhirLib.EngineTypes.state = _menhir_s;
1718 MenhirLib.EngineTypes.semv = _1;
1719 MenhirLib.EngineTypes.startp = _startpos__1_;
1720 MenhirLib.EngineTypes.endp = _endpos__1_;
1721 MenhirLib.EngineTypes.next = _menhir_stack;
1722 } = _menhir_stack in
1723 raise (MenhirLib.TableInterpreter.Accept _1));
1724 (fun _menhir_env ->
1725 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1726 let {
1727 MenhirLib.EngineTypes.state = _menhir_s;
1728 MenhirLib.EngineTypes.semv = _1;
1729 MenhirLib.EngineTypes.startp = _startpos__1_;
1730 MenhirLib.EngineTypes.endp = _endpos__1_;
1731 MenhirLib.EngineTypes.next = _menhir_stack;
1732 } = _menhir_stack in
1733 raise (MenhirLib.TableInterpreter.Accept _1));
1734 (fun _menhir_env ->
1735 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1736 let {
1737 MenhirLib.EngineTypes.state = _menhir_s;
1738 MenhirLib.EngineTypes.semv = _1;
1739 MenhirLib.EngineTypes.startp = _startpos__1_;
1740 MenhirLib.EngineTypes.endp = _endpos__1_;
1741 MenhirLib.EngineTypes.next = _menhir_stack;
1742 } = _menhir_stack in
1743 raise (MenhirLib.TableInterpreter.Accept _1));
1744 (fun _menhir_env ->
1745 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1746 let {
1747 MenhirLib.EngineTypes.state = _menhir_s;
1748 MenhirLib.EngineTypes.semv = _1;
1749 MenhirLib.EngineTypes.startp = _startpos__1_;
1750 MenhirLib.EngineTypes.endp = _endpos__1_;
1751 MenhirLib.EngineTypes.next = _menhir_stack;
1752 } = _menhir_stack in
1753 raise (MenhirLib.TableInterpreter.Accept _1));
1754 (fun _menhir_env ->
1755 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1756 let {
1757 MenhirLib.EngineTypes.state = _menhir_s;
1758 MenhirLib.EngineTypes.semv = _1;
1759 MenhirLib.EngineTypes.startp = _startpos__1_;
1760 MenhirLib.EngineTypes.endp = _endpos__1_;
1761 MenhirLib.EngineTypes.next = _menhir_stack;
1762 } = _menhir_stack in
1763 raise (MenhirLib.TableInterpreter.Accept _1));
1764 (fun _menhir_env ->
1765 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1766 let {
1767 MenhirLib.EngineTypes.state = _menhir_s;
1768 MenhirLib.EngineTypes.semv = _1;
1769 MenhirLib.EngineTypes.startp = _startpos__1_;
1770 MenhirLib.EngineTypes.endp = _endpos__1_;
1771 MenhirLib.EngineTypes.next = _menhir_stack;
1772 } = _menhir_stack in
1773 raise (MenhirLib.TableInterpreter.Accept _1));
1774 (fun _menhir_env ->
1775 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1776 let {
1777 MenhirLib.EngineTypes.state = _menhir_s;
1778 MenhirLib.EngineTypes.semv = _1;
1779 MenhirLib.EngineTypes.startp = _startpos__1_;
1780 MenhirLib.EngineTypes.endp = _endpos__1_;
1781 MenhirLib.EngineTypes.next = _menhir_stack;
1782 } = _menhir_stack in
1783 let _1 : 'tv_dargexpr = Obj.magic _1 in
1784 let _startpos = _startpos__1_ in
1785 let _endpos = _endpos__1_ in
1786 let _v : 'tv_aexpr =
1787 # 2326 "parser_cocci_menhir.mly"
1788 ( Ast0.set_arg_exp _1 )
1789 # 1763 "parser_cocci_menhir.ml"
1790 in
1791 _menhir_env.MenhirLib.EngineTypes.stack <- {
1792 MenhirLib.EngineTypes.state = _menhir_s;
1793 MenhirLib.EngineTypes.semv = Obj.repr _v;
1794 MenhirLib.EngineTypes.startp = _startpos;
1795 MenhirLib.EngineTypes.endp = _endpos;
1796 MenhirLib.EngineTypes.next = _menhir_stack;
1797 });
1798 (fun _menhir_env ->
1799 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1800 let {
1801 MenhirLib.EngineTypes.state = _menhir_s;
1802 MenhirLib.EngineTypes.semv = _1;
1803 MenhirLib.EngineTypes.startp = _startpos__1_;
1804 MenhirLib.EngineTypes.endp = _endpos__1_;
1805 MenhirLib.EngineTypes.next = _menhir_stack;
1806 } = _menhir_stack in
1807 let _1 : (
1808 # 110 "parser_cocci_menhir.mly"
1809 (Parse_aux.list_info)
1810 # 1784 "parser_cocci_menhir.ml"
1811 ) = Obj.magic _1 in
1812 let _startpos = _startpos__1_ in
1813 let _endpos = _endpos__1_ in
1814 let _v : 'tv_aexpr =
1815 # 2328 "parser_cocci_menhir.mly"
1816 ( let (nm,lenname,pure,clt) = _1 in
1817 let nm = P.clt2mcode nm clt in
1818 let lenname =
1819 match lenname with
1820 Ast.AnyLen -> Ast0.AnyListLen
1821 | Ast.MetaLen nm -> Ast0.MetaListLen(P.clt2mcode nm clt)
1822 | Ast.CstLen n -> Ast0.CstListLen n in
1823 Ast0.wrap(Ast0.MetaExprList(nm,lenname,pure)) )
1824 # 1798 "parser_cocci_menhir.ml"
1825 in
1826 _menhir_env.MenhirLib.EngineTypes.stack <- {
1827 MenhirLib.EngineTypes.state = _menhir_s;
1828 MenhirLib.EngineTypes.semv = Obj.repr _v;
1829 MenhirLib.EngineTypes.startp = _startpos;
1830 MenhirLib.EngineTypes.endp = _endpos;
1831 MenhirLib.EngineTypes.next = _menhir_stack;
1832 });
1833 (fun _menhir_env ->
1834 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1835 let {
1836 MenhirLib.EngineTypes.state = _menhir_s;
1837 MenhirLib.EngineTypes.semv = _1;
1838 MenhirLib.EngineTypes.startp = _startpos__1_;
1839 MenhirLib.EngineTypes.endp = _endpos__1_;
1840 MenhirLib.EngineTypes.next = _menhir_stack;
1841 } = _menhir_stack in
1842 let _1 : 'tv_ctype = Obj.magic _1 in
1843 let _startpos = _startpos__1_ in
1844 let _endpos = _endpos__1_ in
1845 let _v : 'tv_aexpr =
1846 # 2337 "parser_cocci_menhir.mly"
1847 ( Ast0.set_arg_exp(Ast0.wrap(Ast0.TypeExp(_1))) )
1848 # 1822 "parser_cocci_menhir.ml"
1849 in
1850 _menhir_env.MenhirLib.EngineTypes.stack <- {
1851 MenhirLib.EngineTypes.state = _menhir_s;
1852 MenhirLib.EngineTypes.semv = Obj.repr _v;
1853 MenhirLib.EngineTypes.startp = _startpos;
1854 MenhirLib.EngineTypes.endp = _endpos;
1855 MenhirLib.EngineTypes.next = _menhir_stack;
1856 });
1857 (fun _menhir_env ->
1858 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1859 let {
1860 MenhirLib.EngineTypes.semv = ty;
1861 MenhirLib.EngineTypes.startp = _startpos_ty_;
1862 MenhirLib.EngineTypes.endp = _endpos_ty_;
1863 MenhirLib.EngineTypes.next = {
1864 MenhirLib.EngineTypes.state = _menhir_s;
1865 MenhirLib.EngineTypes.semv = r;
1866 MenhirLib.EngineTypes.startp = _startpos_r_;
1867 MenhirLib.EngineTypes.endp = _endpos_r_;
1868 MenhirLib.EngineTypes.next = _menhir_stack;
1869 };
1870 } = _menhir_stack in
1871 let ty : 'tv_signable_types = Obj.magic ty in
1872 let r : (
1873 # 93 "parser_cocci_menhir.mly"
1874 (Data.clt)
1875 # 1849 "parser_cocci_menhir.ml"
1876 ) = Obj.magic r in
1877 let _startpos = _startpos_r_ in
1878 let _endpos = _endpos_ty_ in
1879 let _v : 'tv_all_basic_types =
1880 # 706 "parser_cocci_menhir.mly"
1881 ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
1882 # 1856 "parser_cocci_menhir.ml"
1883 in
1884 _menhir_env.MenhirLib.EngineTypes.stack <- {
1885 MenhirLib.EngineTypes.state = _menhir_s;
1886 MenhirLib.EngineTypes.semv = Obj.repr _v;
1887 MenhirLib.EngineTypes.startp = _startpos;
1888 MenhirLib.EngineTypes.endp = _endpos;
1889 MenhirLib.EngineTypes.next = _menhir_stack;
1890 });
1891 (fun _menhir_env ->
1892 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1893 let {
1894 MenhirLib.EngineTypes.semv = ty;
1895 MenhirLib.EngineTypes.startp = _startpos_ty_;
1896 MenhirLib.EngineTypes.endp = _endpos_ty_;
1897 MenhirLib.EngineTypes.next = {
1898 MenhirLib.EngineTypes.state = _menhir_s;
1899 MenhirLib.EngineTypes.semv = r;
1900 MenhirLib.EngineTypes.startp = _startpos_r_;
1901 MenhirLib.EngineTypes.endp = _endpos_r_;
1902 MenhirLib.EngineTypes.next = _menhir_stack;
1903 };
1904 } = _menhir_stack in
1905 let ty : 'tv_signable_types = Obj.magic ty in
1906 let r : (
1907 # 93 "parser_cocci_menhir.mly"
1908 (Data.clt)
1909 # 1883 "parser_cocci_menhir.ml"
1910 ) = Obj.magic r in
1911 let _startpos = _startpos_r_ in
1912 let _endpos = _endpos_ty_ in
1913 let _v : 'tv_all_basic_types =
1914 # 708 "parser_cocci_menhir.mly"
1915 ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
1916 # 1890 "parser_cocci_menhir.ml"
1917 in
1918 _menhir_env.MenhirLib.EngineTypes.stack <- {
1919 MenhirLib.EngineTypes.state = _menhir_s;
1920 MenhirLib.EngineTypes.semv = Obj.repr _v;
1921 MenhirLib.EngineTypes.startp = _startpos;
1922 MenhirLib.EngineTypes.endp = _endpos;
1923 MenhirLib.EngineTypes.next = _menhir_stack;
1924 });
1925 (fun _menhir_env ->
1926 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1927 let {
1928 MenhirLib.EngineTypes.state = _menhir_s;
1929 MenhirLib.EngineTypes.semv = ty;
1930 MenhirLib.EngineTypes.startp = _startpos_ty_;
1931 MenhirLib.EngineTypes.endp = _endpos_ty_;
1932 MenhirLib.EngineTypes.next = _menhir_stack;
1933 } = _menhir_stack in
1934 let ty : 'tv_signable_types = Obj.magic ty in
1935 let _startpos = _startpos_ty_ in
1936 let _endpos = _endpos_ty_ in
1937 let _v : 'tv_all_basic_types =
1938 # 709 "parser_cocci_menhir.mly"
1939 ( ty )
1940 # 1914 "parser_cocci_menhir.ml"
1941 in
1942 _menhir_env.MenhirLib.EngineTypes.stack <- {
1943 MenhirLib.EngineTypes.state = _menhir_s;
1944 MenhirLib.EngineTypes.semv = Obj.repr _v;
1945 MenhirLib.EngineTypes.startp = _startpos;
1946 MenhirLib.EngineTypes.endp = _endpos;
1947 MenhirLib.EngineTypes.next = _menhir_stack;
1948 });
1949 (fun _menhir_env ->
1950 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1951 let {
1952 MenhirLib.EngineTypes.state = _menhir_s;
1953 MenhirLib.EngineTypes.semv = ty;
1954 MenhirLib.EngineTypes.startp = _startpos_ty_;
1955 MenhirLib.EngineTypes.endp = _endpos_ty_;
1956 MenhirLib.EngineTypes.next = _menhir_stack;
1957 } = _menhir_stack in
1958 let ty : 'tv_non_signable_types = Obj.magic ty in
1959 let _startpos = _startpos_ty_ in
1960 let _endpos = _endpos_ty_ in
1961 let _v : 'tv_all_basic_types =
1962 # 710 "parser_cocci_menhir.mly"
1963 ( ty )
1964 # 1938 "parser_cocci_menhir.ml"
1965 in
1966 _menhir_env.MenhirLib.EngineTypes.stack <- {
1967 MenhirLib.EngineTypes.state = _menhir_s;
1968 MenhirLib.EngineTypes.semv = Obj.repr _v;
1969 MenhirLib.EngineTypes.startp = _startpos;
1970 MenhirLib.EngineTypes.endp = _endpos;
1971 MenhirLib.EngineTypes.next = _menhir_stack;
1972 });
1973 (fun _menhir_env ->
1974 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1975 let {
1976 MenhirLib.EngineTypes.state = _menhir_s;
1977 MenhirLib.EngineTypes.startp = _startpos__1_;
1978 MenhirLib.EngineTypes.endp = _endpos__1_;
1979 MenhirLib.EngineTypes.next = _menhir_stack;
1980 } = _menhir_stack in
1981 let _startpos = _startpos__1_ in
1982 let _endpos = _endpos__1_ in
1983 let _v : 'tv_any_strict =
1984 # 2373 "parser_cocci_menhir.mly"
1985 ( Ast.WhenAny )
1986 # 1960 "parser_cocci_menhir.ml"
1987 in
1988 _menhir_env.MenhirLib.EngineTypes.stack <- {
1989 MenhirLib.EngineTypes.state = _menhir_s;
1990 MenhirLib.EngineTypes.semv = Obj.repr _v;
1991 MenhirLib.EngineTypes.startp = _startpos;
1992 MenhirLib.EngineTypes.endp = _endpos;
1993 MenhirLib.EngineTypes.next = _menhir_stack;
1994 });
1995 (fun _menhir_env ->
1996 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
1997 let {
1998 MenhirLib.EngineTypes.state = _menhir_s;
1999 MenhirLib.EngineTypes.startp = _startpos__1_;
2000 MenhirLib.EngineTypes.endp = _endpos__1_;
2001 MenhirLib.EngineTypes.next = _menhir_stack;
2002 } = _menhir_stack in
2003 let _startpos = _startpos__1_ in
2004 let _endpos = _endpos__1_ in
2005 let _v : 'tv_any_strict =
2006 # 2374 "parser_cocci_menhir.mly"
2007 ( Ast.WhenStrict )
2008 # 1982 "parser_cocci_menhir.ml"
2009 in
2010 _menhir_env.MenhirLib.EngineTypes.stack <- {
2011 MenhirLib.EngineTypes.state = _menhir_s;
2012 MenhirLib.EngineTypes.semv = Obj.repr _v;
2013 MenhirLib.EngineTypes.startp = _startpos;
2014 MenhirLib.EngineTypes.endp = _endpos;
2015 MenhirLib.EngineTypes.next = _menhir_stack;
2016 });
2017 (fun _menhir_env ->
2018 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2019 let {
2020 MenhirLib.EngineTypes.state = _menhir_s;
2021 MenhirLib.EngineTypes.startp = _startpos__1_;
2022 MenhirLib.EngineTypes.endp = _endpos__1_;
2023 MenhirLib.EngineTypes.next = _menhir_stack;
2024 } = _menhir_stack in
2025 let _startpos = _startpos__1_ in
2026 let _endpos = _endpos__1_ in
2027 let _v : 'tv_any_strict =
2028 # 2375 "parser_cocci_menhir.mly"
2029 ( Ast.WhenForall )
2030 # 2004 "parser_cocci_menhir.ml"
2031 in
2032 _menhir_env.MenhirLib.EngineTypes.stack <- {
2033 MenhirLib.EngineTypes.state = _menhir_s;
2034 MenhirLib.EngineTypes.semv = Obj.repr _v;
2035 MenhirLib.EngineTypes.startp = _startpos;
2036 MenhirLib.EngineTypes.endp = _endpos;
2037 MenhirLib.EngineTypes.next = _menhir_stack;
2038 });
2039 (fun _menhir_env ->
2040 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2041 let {
2042 MenhirLib.EngineTypes.state = _menhir_s;
2043 MenhirLib.EngineTypes.startp = _startpos__1_;
2044 MenhirLib.EngineTypes.endp = _endpos__1_;
2045 MenhirLib.EngineTypes.next = _menhir_stack;
2046 } = _menhir_stack in
2047 let _startpos = _startpos__1_ in
2048 let _endpos = _endpos__1_ in
2049 let _v : 'tv_any_strict =
2050 # 2376 "parser_cocci_menhir.mly"
2051 ( Ast.WhenExists )
2052 # 2026 "parser_cocci_menhir.ml"
2053 in
2054 _menhir_env.MenhirLib.EngineTypes.stack <- {
2055 MenhirLib.EngineTypes.state = _menhir_s;
2056 MenhirLib.EngineTypes.semv = Obj.repr _v;
2057 MenhirLib.EngineTypes.startp = _startpos;
2058 MenhirLib.EngineTypes.endp = _endpos;
2059 MenhirLib.EngineTypes.next = _menhir_stack;
2060 });
2061 (fun _menhir_env ->
2062 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2063 let {
2064 MenhirLib.EngineTypes.state = _menhir_s;
2065 MenhirLib.EngineTypes.semv = _1;
2066 MenhirLib.EngineTypes.startp = _startpos__1_;
2067 MenhirLib.EngineTypes.endp = _endpos__1_;
2068 MenhirLib.EngineTypes.next = _menhir_stack;
2069 } = _menhir_stack in
2070 let _1 : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2071 let _startpos = _startpos__1_ in
2072 let _endpos = _endpos__1_ in
2073 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2074 # 1547 "parser_cocci_menhir.mly"
2075 ( _1 )
2076 # 2050 "parser_cocci_menhir.ml"
2077 in
2078 _menhir_env.MenhirLib.EngineTypes.stack <- {
2079 MenhirLib.EngineTypes.state = _menhir_s;
2080 MenhirLib.EngineTypes.semv = Obj.repr _v;
2081 MenhirLib.EngineTypes.startp = _startpos;
2082 MenhirLib.EngineTypes.endp = _endpos;
2083 MenhirLib.EngineTypes.next = _menhir_stack;
2084 });
2085 (fun _menhir_env ->
2086 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2087 let {
2088 MenhirLib.EngineTypes.semv = _3;
2089 MenhirLib.EngineTypes.startp = _startpos__3_;
2090 MenhirLib.EngineTypes.endp = _endpos__3_;
2091 MenhirLib.EngineTypes.next = {
2092 MenhirLib.EngineTypes.semv = _2;
2093 MenhirLib.EngineTypes.startp = _startpos__2_;
2094 MenhirLib.EngineTypes.endp = _endpos__2_;
2095 MenhirLib.EngineTypes.next = {
2096 MenhirLib.EngineTypes.state = _menhir_s;
2097 MenhirLib.EngineTypes.semv = _1;
2098 MenhirLib.EngineTypes.startp = _startpos__1_;
2099 MenhirLib.EngineTypes.endp = _endpos__1_;
2100 MenhirLib.EngineTypes.next = _menhir_stack;
2101 };
2102 };
2103 } = _menhir_stack in
2104 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2105 let _2 : (
2106 # 145 "parser_cocci_menhir.mly"
2107 (Data.clt)
2108 # 2082 "parser_cocci_menhir.ml"
2109 ) = Obj.magic _2 in
2110 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2111 let _startpos = _startpos__1_ in
2112 let _endpos = _endpos__3_ in
2113 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2114 # 1549 "parser_cocci_menhir.mly"
2115 ( P.arith_op Ast.Mul _1 _2 _3 )
2116 # 2090 "parser_cocci_menhir.ml"
2117 in
2118 _menhir_env.MenhirLib.EngineTypes.stack <- {
2119 MenhirLib.EngineTypes.state = _menhir_s;
2120 MenhirLib.EngineTypes.semv = Obj.repr _v;
2121 MenhirLib.EngineTypes.startp = _startpos;
2122 MenhirLib.EngineTypes.endp = _endpos;
2123 MenhirLib.EngineTypes.next = _menhir_stack;
2124 });
2125 (fun _menhir_env ->
2126 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2127 let {
2128 MenhirLib.EngineTypes.semv = _3;
2129 MenhirLib.EngineTypes.startp = _startpos__3_;
2130 MenhirLib.EngineTypes.endp = _endpos__3_;
2131 MenhirLib.EngineTypes.next = {
2132 MenhirLib.EngineTypes.semv = _2;
2133 MenhirLib.EngineTypes.startp = _startpos__2_;
2134 MenhirLib.EngineTypes.endp = _endpos__2_;
2135 MenhirLib.EngineTypes.next = {
2136 MenhirLib.EngineTypes.state = _menhir_s;
2137 MenhirLib.EngineTypes.semv = _1;
2138 MenhirLib.EngineTypes.startp = _startpos__1_;
2139 MenhirLib.EngineTypes.endp = _endpos__1_;
2140 MenhirLib.EngineTypes.next = _menhir_stack;
2141 };
2142 };
2143 } = _menhir_stack in
2144 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2145 let _2 : (
2146 # 143 "parser_cocci_menhir.mly"
2147 (Ast_cocci.arithOp * Data.clt)
2148 # 2122 "parser_cocci_menhir.ml"
2149 ) = Obj.magic _2 in
2150 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2151 let _startpos = _startpos__1_ in
2152 let _endpos = _endpos__3_ in
2153 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2154 # 1551 "parser_cocci_menhir.mly"
2155 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
2156 # 2130 "parser_cocci_menhir.ml"
2157 in
2158 _menhir_env.MenhirLib.EngineTypes.stack <- {
2159 MenhirLib.EngineTypes.state = _menhir_s;
2160 MenhirLib.EngineTypes.semv = Obj.repr _v;
2161 MenhirLib.EngineTypes.startp = _startpos;
2162 MenhirLib.EngineTypes.endp = _endpos;
2163 MenhirLib.EngineTypes.next = _menhir_stack;
2164 });
2165 (fun _menhir_env ->
2166 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2167 let {
2168 MenhirLib.EngineTypes.semv = _3;
2169 MenhirLib.EngineTypes.startp = _startpos__3_;
2170 MenhirLib.EngineTypes.endp = _endpos__3_;
2171 MenhirLib.EngineTypes.next = {
2172 MenhirLib.EngineTypes.semv = _2;
2173 MenhirLib.EngineTypes.startp = _startpos__2_;
2174 MenhirLib.EngineTypes.endp = _endpos__2_;
2175 MenhirLib.EngineTypes.next = {
2176 MenhirLib.EngineTypes.state = _menhir_s;
2177 MenhirLib.EngineTypes.semv = _1;
2178 MenhirLib.EngineTypes.startp = _startpos__1_;
2179 MenhirLib.EngineTypes.endp = _endpos__1_;
2180 MenhirLib.EngineTypes.next = _menhir_stack;
2181 };
2182 };
2183 } = _menhir_stack in
2184 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2185 let _2 : (
2186 # 144 "parser_cocci_menhir.mly"
2187 (Data.clt)
2188 # 2162 "parser_cocci_menhir.ml"
2189 ) = Obj.magic _2 in
2190 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2191 let _startpos = _startpos__1_ in
2192 let _endpos = _endpos__3_ in
2193 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2194 # 1553 "parser_cocci_menhir.mly"
2195 ( P.arith_op Ast.Plus _1 _2 _3 )
2196 # 2170 "parser_cocci_menhir.ml"
2197 in
2198 _menhir_env.MenhirLib.EngineTypes.stack <- {
2199 MenhirLib.EngineTypes.state = _menhir_s;
2200 MenhirLib.EngineTypes.semv = Obj.repr _v;
2201 MenhirLib.EngineTypes.startp = _startpos;
2202 MenhirLib.EngineTypes.endp = _endpos;
2203 MenhirLib.EngineTypes.next = _menhir_stack;
2204 });
2205 (fun _menhir_env ->
2206 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2207 let {
2208 MenhirLib.EngineTypes.semv = _3;
2209 MenhirLib.EngineTypes.startp = _startpos__3_;
2210 MenhirLib.EngineTypes.endp = _endpos__3_;
2211 MenhirLib.EngineTypes.next = {
2212 MenhirLib.EngineTypes.semv = _2;
2213 MenhirLib.EngineTypes.startp = _startpos__2_;
2214 MenhirLib.EngineTypes.endp = _endpos__2_;
2215 MenhirLib.EngineTypes.next = {
2216 MenhirLib.EngineTypes.state = _menhir_s;
2217 MenhirLib.EngineTypes.semv = _1;
2218 MenhirLib.EngineTypes.startp = _startpos__1_;
2219 MenhirLib.EngineTypes.endp = _endpos__1_;
2220 MenhirLib.EngineTypes.next = _menhir_stack;
2221 };
2222 };
2223 } = _menhir_stack in
2224 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2225 let _2 : (
2226 # 144 "parser_cocci_menhir.mly"
2227 (Data.clt)
2228 # 2202 "parser_cocci_menhir.ml"
2229 ) = Obj.magic _2 in
2230 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2231 let _startpos = _startpos__1_ in
2232 let _endpos = _endpos__3_ in
2233 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2234 # 1555 "parser_cocci_menhir.mly"
2235 ( P.arith_op Ast.Minus _1 _2 _3 )
2236 # 2210 "parser_cocci_menhir.ml"
2237 in
2238 _menhir_env.MenhirLib.EngineTypes.stack <- {
2239 MenhirLib.EngineTypes.state = _menhir_s;
2240 MenhirLib.EngineTypes.semv = Obj.repr _v;
2241 MenhirLib.EngineTypes.startp = _startpos;
2242 MenhirLib.EngineTypes.endp = _endpos;
2243 MenhirLib.EngineTypes.next = _menhir_stack;
2244 });
2245 (fun _menhir_env ->
2246 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2247 let {
2248 MenhirLib.EngineTypes.semv = _3;
2249 MenhirLib.EngineTypes.startp = _startpos__3_;
2250 MenhirLib.EngineTypes.endp = _endpos__3_;
2251 MenhirLib.EngineTypes.next = {
2252 MenhirLib.EngineTypes.semv = _2;
2253 MenhirLib.EngineTypes.startp = _startpos__2_;
2254 MenhirLib.EngineTypes.endp = _endpos__2_;
2255 MenhirLib.EngineTypes.next = {
2256 MenhirLib.EngineTypes.state = _menhir_s;
2257 MenhirLib.EngineTypes.semv = _1;
2258 MenhirLib.EngineTypes.startp = _startpos__1_;
2259 MenhirLib.EngineTypes.endp = _endpos__1_;
2260 MenhirLib.EngineTypes.next = _menhir_stack;
2261 };
2262 };
2263 } = _menhir_stack in
2264 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2265 let _2 : (
2266 # 142 "parser_cocci_menhir.mly"
2267 (Ast_cocci.arithOp * Data.clt)
2268 # 2242 "parser_cocci_menhir.ml"
2269 ) = Obj.magic _2 in
2270 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2271 let _startpos = _startpos__1_ in
2272 let _endpos = _endpos__3_ in
2273 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2274 # 1557 "parser_cocci_menhir.mly"
2275 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
2276 # 2250 "parser_cocci_menhir.ml"
2277 in
2278 _menhir_env.MenhirLib.EngineTypes.stack <- {
2279 MenhirLib.EngineTypes.state = _menhir_s;
2280 MenhirLib.EngineTypes.semv = Obj.repr _v;
2281 MenhirLib.EngineTypes.startp = _startpos;
2282 MenhirLib.EngineTypes.endp = _endpos;
2283 MenhirLib.EngineTypes.next = _menhir_stack;
2284 });
2285 (fun _menhir_env ->
2286 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2287 let {
2288 MenhirLib.EngineTypes.semv = _3;
2289 MenhirLib.EngineTypes.startp = _startpos__3_;
2290 MenhirLib.EngineTypes.endp = _endpos__3_;
2291 MenhirLib.EngineTypes.next = {
2292 MenhirLib.EngineTypes.semv = _2;
2293 MenhirLib.EngineTypes.startp = _startpos__2_;
2294 MenhirLib.EngineTypes.endp = _endpos__2_;
2295 MenhirLib.EngineTypes.next = {
2296 MenhirLib.EngineTypes.state = _menhir_s;
2297 MenhirLib.EngineTypes.semv = _1;
2298 MenhirLib.EngineTypes.startp = _startpos__1_;
2299 MenhirLib.EngineTypes.endp = _endpos__1_;
2300 MenhirLib.EngineTypes.next = _menhir_stack;
2301 };
2302 };
2303 } = _menhir_stack in
2304 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2305 let _2 : (
2306 # 142 "parser_cocci_menhir.mly"
2307 (Ast_cocci.arithOp * Data.clt)
2308 # 2282 "parser_cocci_menhir.ml"
2309 ) = Obj.magic _2 in
2310 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2311 let _startpos = _startpos__1_ in
2312 let _endpos = _endpos__3_ in
2313 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2314 # 1559 "parser_cocci_menhir.mly"
2315 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
2316 # 2290 "parser_cocci_menhir.ml"
2317 in
2318 _menhir_env.MenhirLib.EngineTypes.stack <- {
2319 MenhirLib.EngineTypes.state = _menhir_s;
2320 MenhirLib.EngineTypes.semv = Obj.repr _v;
2321 MenhirLib.EngineTypes.startp = _startpos;
2322 MenhirLib.EngineTypes.endp = _endpos;
2323 MenhirLib.EngineTypes.next = _menhir_stack;
2324 });
2325 (fun _menhir_env ->
2326 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2327 let {
2328 MenhirLib.EngineTypes.semv = _3;
2329 MenhirLib.EngineTypes.startp = _startpos__3_;
2330 MenhirLib.EngineTypes.endp = _endpos__3_;
2331 MenhirLib.EngineTypes.next = {
2332 MenhirLib.EngineTypes.semv = _2;
2333 MenhirLib.EngineTypes.startp = _startpos__2_;
2334 MenhirLib.EngineTypes.endp = _endpos__2_;
2335 MenhirLib.EngineTypes.next = {
2336 MenhirLib.EngineTypes.state = _menhir_s;
2337 MenhirLib.EngineTypes.semv = _1;
2338 MenhirLib.EngineTypes.startp = _startpos__1_;
2339 MenhirLib.EngineTypes.endp = _endpos__1_;
2340 MenhirLib.EngineTypes.next = _menhir_stack;
2341 };
2342 };
2343 } = _menhir_stack in
2344 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2345 let _2 : (
2346 # 141 "parser_cocci_menhir.mly"
2347 (Ast_cocci.logicalOp * Data.clt)
2348 # 2322 "parser_cocci_menhir.ml"
2349 ) = Obj.magic _2 in
2350 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2351 let _startpos = _startpos__1_ in
2352 let _endpos = _endpos__3_ in
2353 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2354 # 1561 "parser_cocci_menhir.mly"
2355 ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
2356 # 2330 "parser_cocci_menhir.ml"
2357 in
2358 _menhir_env.MenhirLib.EngineTypes.stack <- {
2359 MenhirLib.EngineTypes.state = _menhir_s;
2360 MenhirLib.EngineTypes.semv = Obj.repr _v;
2361 MenhirLib.EngineTypes.startp = _startpos;
2362 MenhirLib.EngineTypes.endp = _endpos;
2363 MenhirLib.EngineTypes.next = _menhir_stack;
2364 });
2365 (fun _menhir_env ->
2366 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2367 let {
2368 MenhirLib.EngineTypes.semv = _3;
2369 MenhirLib.EngineTypes.startp = _startpos__3_;
2370 MenhirLib.EngineTypes.endp = _endpos__3_;
2371 MenhirLib.EngineTypes.next = {
2372 MenhirLib.EngineTypes.semv = _2;
2373 MenhirLib.EngineTypes.startp = _startpos__2_;
2374 MenhirLib.EngineTypes.endp = _endpos__2_;
2375 MenhirLib.EngineTypes.next = {
2376 MenhirLib.EngineTypes.state = _menhir_s;
2377 MenhirLib.EngineTypes.semv = _1;
2378 MenhirLib.EngineTypes.startp = _startpos__1_;
2379 MenhirLib.EngineTypes.endp = _endpos__1_;
2380 MenhirLib.EngineTypes.next = _menhir_stack;
2381 };
2382 };
2383 } = _menhir_stack in
2384 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2385 let _2 : (
2386 # 140 "parser_cocci_menhir.mly"
2387 (Data.clt)
2388 # 2362 "parser_cocci_menhir.ml"
2389 ) = Obj.magic _2 in
2390 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2391 let _startpos = _startpos__1_ in
2392 let _endpos = _endpos__3_ in
2393 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2394 # 1563 "parser_cocci_menhir.mly"
2395 ( P.logic_op Ast.Eq _1 _2 _3 )
2396 # 2370 "parser_cocci_menhir.ml"
2397 in
2398 _menhir_env.MenhirLib.EngineTypes.stack <- {
2399 MenhirLib.EngineTypes.state = _menhir_s;
2400 MenhirLib.EngineTypes.semv = Obj.repr _v;
2401 MenhirLib.EngineTypes.startp = _startpos;
2402 MenhirLib.EngineTypes.endp = _endpos;
2403 MenhirLib.EngineTypes.next = _menhir_stack;
2404 });
2405 (fun _menhir_env ->
2406 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2407 let {
2408 MenhirLib.EngineTypes.semv = _3;
2409 MenhirLib.EngineTypes.startp = _startpos__3_;
2410 MenhirLib.EngineTypes.endp = _endpos__3_;
2411 MenhirLib.EngineTypes.next = {
2412 MenhirLib.EngineTypes.semv = _2;
2413 MenhirLib.EngineTypes.startp = _startpos__2_;
2414 MenhirLib.EngineTypes.endp = _endpos__2_;
2415 MenhirLib.EngineTypes.next = {
2416 MenhirLib.EngineTypes.state = _menhir_s;
2417 MenhirLib.EngineTypes.semv = _1;
2418 MenhirLib.EngineTypes.startp = _startpos__1_;
2419 MenhirLib.EngineTypes.endp = _endpos__1_;
2420 MenhirLib.EngineTypes.next = _menhir_stack;
2421 };
2422 };
2423 } = _menhir_stack in
2424 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2425 let _2 : (
2426 # 140 "parser_cocci_menhir.mly"
2427 (Data.clt)
2428 # 2402 "parser_cocci_menhir.ml"
2429 ) = Obj.magic _2 in
2430 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2431 let _startpos = _startpos__1_ in
2432 let _endpos = _endpos__3_ in
2433 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2434 # 1565 "parser_cocci_menhir.mly"
2435 ( P.logic_op Ast.NotEq _1 _2 _3 )
2436 # 2410 "parser_cocci_menhir.ml"
2437 in
2438 _menhir_env.MenhirLib.EngineTypes.stack <- {
2439 MenhirLib.EngineTypes.state = _menhir_s;
2440 MenhirLib.EngineTypes.semv = Obj.repr _v;
2441 MenhirLib.EngineTypes.startp = _startpos;
2442 MenhirLib.EngineTypes.endp = _endpos;
2443 MenhirLib.EngineTypes.next = _menhir_stack;
2444 });
2445 (fun _menhir_env ->
2446 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2447 let {
2448 MenhirLib.EngineTypes.semv = _3;
2449 MenhirLib.EngineTypes.startp = _startpos__3_;
2450 MenhirLib.EngineTypes.endp = _endpos__3_;
2451 MenhirLib.EngineTypes.next = {
2452 MenhirLib.EngineTypes.semv = _2;
2453 MenhirLib.EngineTypes.startp = _startpos__2_;
2454 MenhirLib.EngineTypes.endp = _endpos__2_;
2455 MenhirLib.EngineTypes.next = {
2456 MenhirLib.EngineTypes.state = _menhir_s;
2457 MenhirLib.EngineTypes.semv = _1;
2458 MenhirLib.EngineTypes.startp = _startpos__1_;
2459 MenhirLib.EngineTypes.endp = _endpos__1_;
2460 MenhirLib.EngineTypes.next = _menhir_stack;
2461 };
2462 };
2463 } = _menhir_stack in
2464 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2465 let _2 : (
2466 # 139 "parser_cocci_menhir.mly"
2467 (Data.clt)
2468 # 2442 "parser_cocci_menhir.ml"
2469 ) = Obj.magic _2 in
2470 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2471 let _startpos = _startpos__1_ in
2472 let _endpos = _endpos__3_ in
2473 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2474 # 1567 "parser_cocci_menhir.mly"
2475 ( P.arith_op Ast.And _1 _2 _3 )
2476 # 2450 "parser_cocci_menhir.ml"
2477 in
2478 _menhir_env.MenhirLib.EngineTypes.stack <- {
2479 MenhirLib.EngineTypes.state = _menhir_s;
2480 MenhirLib.EngineTypes.semv = Obj.repr _v;
2481 MenhirLib.EngineTypes.startp = _startpos;
2482 MenhirLib.EngineTypes.endp = _endpos;
2483 MenhirLib.EngineTypes.next = _menhir_stack;
2484 });
2485 (fun _menhir_env ->
2486 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2487 let {
2488 MenhirLib.EngineTypes.semv = _3;
2489 MenhirLib.EngineTypes.startp = _startpos__3_;
2490 MenhirLib.EngineTypes.endp = _endpos__3_;
2491 MenhirLib.EngineTypes.next = {
2492 MenhirLib.EngineTypes.semv = _2;
2493 MenhirLib.EngineTypes.startp = _startpos__2_;
2494 MenhirLib.EngineTypes.endp = _endpos__2_;
2495 MenhirLib.EngineTypes.next = {
2496 MenhirLib.EngineTypes.state = _menhir_s;
2497 MenhirLib.EngineTypes.semv = _1;
2498 MenhirLib.EngineTypes.startp = _startpos__1_;
2499 MenhirLib.EngineTypes.endp = _endpos__1_;
2500 MenhirLib.EngineTypes.next = _menhir_stack;
2501 };
2502 };
2503 } = _menhir_stack in
2504 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2505 let _2 : (
2506 # 137 "parser_cocci_menhir.mly"
2507 (Data.clt)
2508 # 2482 "parser_cocci_menhir.ml"
2509 ) = Obj.magic _2 in
2510 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2511 let _startpos = _startpos__1_ in
2512 let _endpos = _endpos__3_ in
2513 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2514 # 1569 "parser_cocci_menhir.mly"
2515 ( P.arith_op Ast.Or _1 _2 _3 )
2516 # 2490 "parser_cocci_menhir.ml"
2517 in
2518 _menhir_env.MenhirLib.EngineTypes.stack <- {
2519 MenhirLib.EngineTypes.state = _menhir_s;
2520 MenhirLib.EngineTypes.semv = Obj.repr _v;
2521 MenhirLib.EngineTypes.startp = _startpos;
2522 MenhirLib.EngineTypes.endp = _endpos;
2523 MenhirLib.EngineTypes.next = _menhir_stack;
2524 });
2525 (fun _menhir_env ->
2526 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2527 let {
2528 MenhirLib.EngineTypes.semv = _3;
2529 MenhirLib.EngineTypes.startp = _startpos__3_;
2530 MenhirLib.EngineTypes.endp = _endpos__3_;
2531 MenhirLib.EngineTypes.next = {
2532 MenhirLib.EngineTypes.semv = _2;
2533 MenhirLib.EngineTypes.startp = _startpos__2_;
2534 MenhirLib.EngineTypes.endp = _endpos__2_;
2535 MenhirLib.EngineTypes.next = {
2536 MenhirLib.EngineTypes.state = _menhir_s;
2537 MenhirLib.EngineTypes.semv = _1;
2538 MenhirLib.EngineTypes.startp = _startpos__1_;
2539 MenhirLib.EngineTypes.endp = _endpos__1_;
2540 MenhirLib.EngineTypes.next = _menhir_stack;
2541 };
2542 };
2543 } = _menhir_stack in
2544 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2545 let _2 : (
2546 # 138 "parser_cocci_menhir.mly"
2547 (Data.clt)
2548 # 2522 "parser_cocci_menhir.ml"
2549 ) = Obj.magic _2 in
2550 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2551 let _startpos = _startpos__1_ in
2552 let _endpos = _endpos__3_ in
2553 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2554 # 1571 "parser_cocci_menhir.mly"
2555 ( P.arith_op Ast.Xor _1 _2 _3 )
2556 # 2530 "parser_cocci_menhir.ml"
2557 in
2558 _menhir_env.MenhirLib.EngineTypes.stack <- {
2559 MenhirLib.EngineTypes.state = _menhir_s;
2560 MenhirLib.EngineTypes.semv = Obj.repr _v;
2561 MenhirLib.EngineTypes.startp = _startpos;
2562 MenhirLib.EngineTypes.endp = _endpos;
2563 MenhirLib.EngineTypes.next = _menhir_stack;
2564 });
2565 (fun _menhir_env ->
2566 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2567 let {
2568 MenhirLib.EngineTypes.semv = _3;
2569 MenhirLib.EngineTypes.startp = _startpos__3_;
2570 MenhirLib.EngineTypes.endp = _endpos__3_;
2571 MenhirLib.EngineTypes.next = {
2572 MenhirLib.EngineTypes.semv = _2;
2573 MenhirLib.EngineTypes.startp = _startpos__2_;
2574 MenhirLib.EngineTypes.endp = _endpos__2_;
2575 MenhirLib.EngineTypes.next = {
2576 MenhirLib.EngineTypes.state = _menhir_s;
2577 MenhirLib.EngineTypes.semv = _1;
2578 MenhirLib.EngineTypes.startp = _startpos__1_;
2579 MenhirLib.EngineTypes.endp = _endpos__1_;
2580 MenhirLib.EngineTypes.next = _menhir_stack;
2581 };
2582 };
2583 } = _menhir_stack in
2584 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2585 let _2 : (
2586 # 136 "parser_cocci_menhir.mly"
2587 (Data.clt)
2588 # 2562 "parser_cocci_menhir.ml"
2589 ) = Obj.magic _2 in
2590 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2591 let _startpos = _startpos__1_ in
2592 let _endpos = _endpos__3_ in
2593 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2594 # 1573 "parser_cocci_menhir.mly"
2595 ( P.logic_op Ast.AndLog _1 _2 _3 )
2596 # 2570 "parser_cocci_menhir.ml"
2597 in
2598 _menhir_env.MenhirLib.EngineTypes.stack <- {
2599 MenhirLib.EngineTypes.state = _menhir_s;
2600 MenhirLib.EngineTypes.semv = Obj.repr _v;
2601 MenhirLib.EngineTypes.startp = _startpos;
2602 MenhirLib.EngineTypes.endp = _endpos;
2603 MenhirLib.EngineTypes.next = _menhir_stack;
2604 });
2605 (fun _menhir_env ->
2606 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2607 let {
2608 MenhirLib.EngineTypes.semv = _3;
2609 MenhirLib.EngineTypes.startp = _startpos__3_;
2610 MenhirLib.EngineTypes.endp = _endpos__3_;
2611 MenhirLib.EngineTypes.next = {
2612 MenhirLib.EngineTypes.semv = _2;
2613 MenhirLib.EngineTypes.startp = _startpos__2_;
2614 MenhirLib.EngineTypes.endp = _endpos__2_;
2615 MenhirLib.EngineTypes.next = {
2616 MenhirLib.EngineTypes.state = _menhir_s;
2617 MenhirLib.EngineTypes.semv = _1;
2618 MenhirLib.EngineTypes.startp = _startpos__1_;
2619 MenhirLib.EngineTypes.endp = _endpos__1_;
2620 MenhirLib.EngineTypes.next = _menhir_stack;
2621 };
2622 };
2623 } = _menhir_stack in
2624 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2625 let _2 : (
2626 # 135 "parser_cocci_menhir.mly"
2627 (Data.clt)
2628 # 2602 "parser_cocci_menhir.ml"
2629 ) = Obj.magic _2 in
2630 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
2631 let _startpos = _startpos__1_ in
2632 let _endpos = _endpos__3_ in
2633 let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
2634 # 1575 "parser_cocci_menhir.mly"
2635 ( P.logic_op Ast.OrLog _1 _2 _3 )
2636 # 2610 "parser_cocci_menhir.ml"
2637 in
2638 _menhir_env.MenhirLib.EngineTypes.stack <- {
2639 MenhirLib.EngineTypes.state = _menhir_s;
2640 MenhirLib.EngineTypes.semv = Obj.repr _v;
2641 MenhirLib.EngineTypes.startp = _startpos;
2642 MenhirLib.EngineTypes.endp = _endpos;
2643 MenhirLib.EngineTypes.next = _menhir_stack;
2644 });
2645 (fun _menhir_env ->
2646 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2647 let {
2648 MenhirLib.EngineTypes.state = _menhir_s;
2649 MenhirLib.EngineTypes.semv = _1;
2650 MenhirLib.EngineTypes.startp = _startpos__1_;
2651 MenhirLib.EngineTypes.endp = _endpos__1_;
2652 MenhirLib.EngineTypes.next = _menhir_stack;
2653 } = _menhir_stack in
2654 let _1 : 'tv_cast_expr_eexpr_invalid_ = Obj.magic _1 in
2655 let _startpos = _startpos__1_ in
2656 let _endpos = _endpos__1_ in
2657 let _v : 'tv_arith_expr_eexpr_invalid_ =
2658 # 1547 "parser_cocci_menhir.mly"
2659 ( _1 )
2660 # 2634 "parser_cocci_menhir.ml"
2661 in
2662 _menhir_env.MenhirLib.EngineTypes.stack <- {
2663 MenhirLib.EngineTypes.state = _menhir_s;
2664 MenhirLib.EngineTypes.semv = Obj.repr _v;
2665 MenhirLib.EngineTypes.startp = _startpos;
2666 MenhirLib.EngineTypes.endp = _endpos;
2667 MenhirLib.EngineTypes.next = _menhir_stack;
2668 });
2669 (fun _menhir_env ->
2670 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2671 let {
2672 MenhirLib.EngineTypes.semv = _3;
2673 MenhirLib.EngineTypes.startp = _startpos__3_;
2674 MenhirLib.EngineTypes.endp = _endpos__3_;
2675 MenhirLib.EngineTypes.next = {
2676 MenhirLib.EngineTypes.semv = _2;
2677 MenhirLib.EngineTypes.startp = _startpos__2_;
2678 MenhirLib.EngineTypes.endp = _endpos__2_;
2679 MenhirLib.EngineTypes.next = {
2680 MenhirLib.EngineTypes.state = _menhir_s;
2681 MenhirLib.EngineTypes.semv = _1;
2682 MenhirLib.EngineTypes.startp = _startpos__1_;
2683 MenhirLib.EngineTypes.endp = _endpos__1_;
2684 MenhirLib.EngineTypes.next = _menhir_stack;
2685 };
2686 };
2687 } = _menhir_stack in
2688 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2689 let _2 : (
2690 # 145 "parser_cocci_menhir.mly"
2691 (Data.clt)
2692 # 2666 "parser_cocci_menhir.ml"
2693 ) = Obj.magic _2 in
2694 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2695 let _startpos = _startpos__1_ in
2696 let _endpos = _endpos__3_ in
2697 let _v : 'tv_arith_expr_eexpr_invalid_ =
2698 # 1549 "parser_cocci_menhir.mly"
2699 ( P.arith_op Ast.Mul _1 _2 _3 )
2700 # 2674 "parser_cocci_menhir.ml"
2701 in
2702 _menhir_env.MenhirLib.EngineTypes.stack <- {
2703 MenhirLib.EngineTypes.state = _menhir_s;
2704 MenhirLib.EngineTypes.semv = Obj.repr _v;
2705 MenhirLib.EngineTypes.startp = _startpos;
2706 MenhirLib.EngineTypes.endp = _endpos;
2707 MenhirLib.EngineTypes.next = _menhir_stack;
2708 });
2709 (fun _menhir_env ->
2710 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2711 let {
2712 MenhirLib.EngineTypes.semv = _3;
2713 MenhirLib.EngineTypes.startp = _startpos__3_;
2714 MenhirLib.EngineTypes.endp = _endpos__3_;
2715 MenhirLib.EngineTypes.next = {
2716 MenhirLib.EngineTypes.semv = _2;
2717 MenhirLib.EngineTypes.startp = _startpos__2_;
2718 MenhirLib.EngineTypes.endp = _endpos__2_;
2719 MenhirLib.EngineTypes.next = {
2720 MenhirLib.EngineTypes.state = _menhir_s;
2721 MenhirLib.EngineTypes.semv = _1;
2722 MenhirLib.EngineTypes.startp = _startpos__1_;
2723 MenhirLib.EngineTypes.endp = _endpos__1_;
2724 MenhirLib.EngineTypes.next = _menhir_stack;
2725 };
2726 };
2727 } = _menhir_stack in
2728 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2729 let _2 : (
2730 # 143 "parser_cocci_menhir.mly"
2731 (Ast_cocci.arithOp * Data.clt)
2732 # 2706 "parser_cocci_menhir.ml"
2733 ) = Obj.magic _2 in
2734 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2735 let _startpos = _startpos__1_ in
2736 let _endpos = _endpos__3_ in
2737 let _v : 'tv_arith_expr_eexpr_invalid_ =
2738 # 1551 "parser_cocci_menhir.mly"
2739 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
2740 # 2714 "parser_cocci_menhir.ml"
2741 in
2742 _menhir_env.MenhirLib.EngineTypes.stack <- {
2743 MenhirLib.EngineTypes.state = _menhir_s;
2744 MenhirLib.EngineTypes.semv = Obj.repr _v;
2745 MenhirLib.EngineTypes.startp = _startpos;
2746 MenhirLib.EngineTypes.endp = _endpos;
2747 MenhirLib.EngineTypes.next = _menhir_stack;
2748 });
2749 (fun _menhir_env ->
2750 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2751 let {
2752 MenhirLib.EngineTypes.semv = _3;
2753 MenhirLib.EngineTypes.startp = _startpos__3_;
2754 MenhirLib.EngineTypes.endp = _endpos__3_;
2755 MenhirLib.EngineTypes.next = {
2756 MenhirLib.EngineTypes.semv = _2;
2757 MenhirLib.EngineTypes.startp = _startpos__2_;
2758 MenhirLib.EngineTypes.endp = _endpos__2_;
2759 MenhirLib.EngineTypes.next = {
2760 MenhirLib.EngineTypes.state = _menhir_s;
2761 MenhirLib.EngineTypes.semv = _1;
2762 MenhirLib.EngineTypes.startp = _startpos__1_;
2763 MenhirLib.EngineTypes.endp = _endpos__1_;
2764 MenhirLib.EngineTypes.next = _menhir_stack;
2765 };
2766 };
2767 } = _menhir_stack in
2768 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2769 let _2 : (
2770 # 144 "parser_cocci_menhir.mly"
2771 (Data.clt)
2772 # 2746 "parser_cocci_menhir.ml"
2773 ) = Obj.magic _2 in
2774 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2775 let _startpos = _startpos__1_ in
2776 let _endpos = _endpos__3_ in
2777 let _v : 'tv_arith_expr_eexpr_invalid_ =
2778 # 1553 "parser_cocci_menhir.mly"
2779 ( P.arith_op Ast.Plus _1 _2 _3 )
2780 # 2754 "parser_cocci_menhir.ml"
2781 in
2782 _menhir_env.MenhirLib.EngineTypes.stack <- {
2783 MenhirLib.EngineTypes.state = _menhir_s;
2784 MenhirLib.EngineTypes.semv = Obj.repr _v;
2785 MenhirLib.EngineTypes.startp = _startpos;
2786 MenhirLib.EngineTypes.endp = _endpos;
2787 MenhirLib.EngineTypes.next = _menhir_stack;
2788 });
2789 (fun _menhir_env ->
2790 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2791 let {
2792 MenhirLib.EngineTypes.semv = _3;
2793 MenhirLib.EngineTypes.startp = _startpos__3_;
2794 MenhirLib.EngineTypes.endp = _endpos__3_;
2795 MenhirLib.EngineTypes.next = {
2796 MenhirLib.EngineTypes.semv = _2;
2797 MenhirLib.EngineTypes.startp = _startpos__2_;
2798 MenhirLib.EngineTypes.endp = _endpos__2_;
2799 MenhirLib.EngineTypes.next = {
2800 MenhirLib.EngineTypes.state = _menhir_s;
2801 MenhirLib.EngineTypes.semv = _1;
2802 MenhirLib.EngineTypes.startp = _startpos__1_;
2803 MenhirLib.EngineTypes.endp = _endpos__1_;
2804 MenhirLib.EngineTypes.next = _menhir_stack;
2805 };
2806 };
2807 } = _menhir_stack in
2808 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2809 let _2 : (
2810 # 144 "parser_cocci_menhir.mly"
2811 (Data.clt)
2812 # 2786 "parser_cocci_menhir.ml"
2813 ) = Obj.magic _2 in
2814 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2815 let _startpos = _startpos__1_ in
2816 let _endpos = _endpos__3_ in
2817 let _v : 'tv_arith_expr_eexpr_invalid_ =
2818 # 1555 "parser_cocci_menhir.mly"
2819 ( P.arith_op Ast.Minus _1 _2 _3 )
2820 # 2794 "parser_cocci_menhir.ml"
2821 in
2822 _menhir_env.MenhirLib.EngineTypes.stack <- {
2823 MenhirLib.EngineTypes.state = _menhir_s;
2824 MenhirLib.EngineTypes.semv = Obj.repr _v;
2825 MenhirLib.EngineTypes.startp = _startpos;
2826 MenhirLib.EngineTypes.endp = _endpos;
2827 MenhirLib.EngineTypes.next = _menhir_stack;
2828 });
2829 (fun _menhir_env ->
2830 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2831 let {
2832 MenhirLib.EngineTypes.semv = _3;
2833 MenhirLib.EngineTypes.startp = _startpos__3_;
2834 MenhirLib.EngineTypes.endp = _endpos__3_;
2835 MenhirLib.EngineTypes.next = {
2836 MenhirLib.EngineTypes.semv = _2;
2837 MenhirLib.EngineTypes.startp = _startpos__2_;
2838 MenhirLib.EngineTypes.endp = _endpos__2_;
2839 MenhirLib.EngineTypes.next = {
2840 MenhirLib.EngineTypes.state = _menhir_s;
2841 MenhirLib.EngineTypes.semv = _1;
2842 MenhirLib.EngineTypes.startp = _startpos__1_;
2843 MenhirLib.EngineTypes.endp = _endpos__1_;
2844 MenhirLib.EngineTypes.next = _menhir_stack;
2845 };
2846 };
2847 } = _menhir_stack in
2848 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2849 let _2 : (
2850 # 142 "parser_cocci_menhir.mly"
2851 (Ast_cocci.arithOp * Data.clt)
2852 # 2826 "parser_cocci_menhir.ml"
2853 ) = Obj.magic _2 in
2854 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2855 let _startpos = _startpos__1_ in
2856 let _endpos = _endpos__3_ in
2857 let _v : 'tv_arith_expr_eexpr_invalid_ =
2858 # 1557 "parser_cocci_menhir.mly"
2859 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
2860 # 2834 "parser_cocci_menhir.ml"
2861 in
2862 _menhir_env.MenhirLib.EngineTypes.stack <- {
2863 MenhirLib.EngineTypes.state = _menhir_s;
2864 MenhirLib.EngineTypes.semv = Obj.repr _v;
2865 MenhirLib.EngineTypes.startp = _startpos;
2866 MenhirLib.EngineTypes.endp = _endpos;
2867 MenhirLib.EngineTypes.next = _menhir_stack;
2868 });
2869 (fun _menhir_env ->
2870 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2871 let {
2872 MenhirLib.EngineTypes.semv = _3;
2873 MenhirLib.EngineTypes.startp = _startpos__3_;
2874 MenhirLib.EngineTypes.endp = _endpos__3_;
2875 MenhirLib.EngineTypes.next = {
2876 MenhirLib.EngineTypes.semv = _2;
2877 MenhirLib.EngineTypes.startp = _startpos__2_;
2878 MenhirLib.EngineTypes.endp = _endpos__2_;
2879 MenhirLib.EngineTypes.next = {
2880 MenhirLib.EngineTypes.state = _menhir_s;
2881 MenhirLib.EngineTypes.semv = _1;
2882 MenhirLib.EngineTypes.startp = _startpos__1_;
2883 MenhirLib.EngineTypes.endp = _endpos__1_;
2884 MenhirLib.EngineTypes.next = _menhir_stack;
2885 };
2886 };
2887 } = _menhir_stack in
2888 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2889 let _2 : (
2890 # 142 "parser_cocci_menhir.mly"
2891 (Ast_cocci.arithOp * Data.clt)
2892 # 2866 "parser_cocci_menhir.ml"
2893 ) = Obj.magic _2 in
2894 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2895 let _startpos = _startpos__1_ in
2896 let _endpos = _endpos__3_ in
2897 let _v : 'tv_arith_expr_eexpr_invalid_ =
2898 # 1559 "parser_cocci_menhir.mly"
2899 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
2900 # 2874 "parser_cocci_menhir.ml"
2901 in
2902 _menhir_env.MenhirLib.EngineTypes.stack <- {
2903 MenhirLib.EngineTypes.state = _menhir_s;
2904 MenhirLib.EngineTypes.semv = Obj.repr _v;
2905 MenhirLib.EngineTypes.startp = _startpos;
2906 MenhirLib.EngineTypes.endp = _endpos;
2907 MenhirLib.EngineTypes.next = _menhir_stack;
2908 });
2909 (fun _menhir_env ->
2910 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2911 let {
2912 MenhirLib.EngineTypes.semv = _3;
2913 MenhirLib.EngineTypes.startp = _startpos__3_;
2914 MenhirLib.EngineTypes.endp = _endpos__3_;
2915 MenhirLib.EngineTypes.next = {
2916 MenhirLib.EngineTypes.semv = _2;
2917 MenhirLib.EngineTypes.startp = _startpos__2_;
2918 MenhirLib.EngineTypes.endp = _endpos__2_;
2919 MenhirLib.EngineTypes.next = {
2920 MenhirLib.EngineTypes.state = _menhir_s;
2921 MenhirLib.EngineTypes.semv = _1;
2922 MenhirLib.EngineTypes.startp = _startpos__1_;
2923 MenhirLib.EngineTypes.endp = _endpos__1_;
2924 MenhirLib.EngineTypes.next = _menhir_stack;
2925 };
2926 };
2927 } = _menhir_stack in
2928 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2929 let _2 : (
2930 # 141 "parser_cocci_menhir.mly"
2931 (Ast_cocci.logicalOp * Data.clt)
2932 # 2906 "parser_cocci_menhir.ml"
2933 ) = Obj.magic _2 in
2934 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2935 let _startpos = _startpos__1_ in
2936 let _endpos = _endpos__3_ in
2937 let _v : 'tv_arith_expr_eexpr_invalid_ =
2938 # 1561 "parser_cocci_menhir.mly"
2939 ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
2940 # 2914 "parser_cocci_menhir.ml"
2941 in
2942 _menhir_env.MenhirLib.EngineTypes.stack <- {
2943 MenhirLib.EngineTypes.state = _menhir_s;
2944 MenhirLib.EngineTypes.semv = Obj.repr _v;
2945 MenhirLib.EngineTypes.startp = _startpos;
2946 MenhirLib.EngineTypes.endp = _endpos;
2947 MenhirLib.EngineTypes.next = _menhir_stack;
2948 });
2949 (fun _menhir_env ->
2950 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2951 let {
2952 MenhirLib.EngineTypes.semv = _3;
2953 MenhirLib.EngineTypes.startp = _startpos__3_;
2954 MenhirLib.EngineTypes.endp = _endpos__3_;
2955 MenhirLib.EngineTypes.next = {
2956 MenhirLib.EngineTypes.semv = _2;
2957 MenhirLib.EngineTypes.startp = _startpos__2_;
2958 MenhirLib.EngineTypes.endp = _endpos__2_;
2959 MenhirLib.EngineTypes.next = {
2960 MenhirLib.EngineTypes.state = _menhir_s;
2961 MenhirLib.EngineTypes.semv = _1;
2962 MenhirLib.EngineTypes.startp = _startpos__1_;
2963 MenhirLib.EngineTypes.endp = _endpos__1_;
2964 MenhirLib.EngineTypes.next = _menhir_stack;
2965 };
2966 };
2967 } = _menhir_stack in
2968 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
2969 let _2 : (
2970 # 140 "parser_cocci_menhir.mly"
2971 (Data.clt)
2972 # 2946 "parser_cocci_menhir.ml"
2973 ) = Obj.magic _2 in
2974 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
2975 let _startpos = _startpos__1_ in
2976 let _endpos = _endpos__3_ in
2977 let _v : 'tv_arith_expr_eexpr_invalid_ =
2978 # 1563 "parser_cocci_menhir.mly"
2979 ( P.logic_op Ast.Eq _1 _2 _3 )
2980 # 2954 "parser_cocci_menhir.ml"
2981 in
2982 _menhir_env.MenhirLib.EngineTypes.stack <- {
2983 MenhirLib.EngineTypes.state = _menhir_s;
2984 MenhirLib.EngineTypes.semv = Obj.repr _v;
2985 MenhirLib.EngineTypes.startp = _startpos;
2986 MenhirLib.EngineTypes.endp = _endpos;
2987 MenhirLib.EngineTypes.next = _menhir_stack;
2988 });
2989 (fun _menhir_env ->
2990 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
2991 let {
2992 MenhirLib.EngineTypes.semv = _3;
2993 MenhirLib.EngineTypes.startp = _startpos__3_;
2994 MenhirLib.EngineTypes.endp = _endpos__3_;
2995 MenhirLib.EngineTypes.next = {
2996 MenhirLib.EngineTypes.semv = _2;
2997 MenhirLib.EngineTypes.startp = _startpos__2_;
2998 MenhirLib.EngineTypes.endp = _endpos__2_;
2999 MenhirLib.EngineTypes.next = {
3000 MenhirLib.EngineTypes.state = _menhir_s;
3001 MenhirLib.EngineTypes.semv = _1;
3002 MenhirLib.EngineTypes.startp = _startpos__1_;
3003 MenhirLib.EngineTypes.endp = _endpos__1_;
3004 MenhirLib.EngineTypes.next = _menhir_stack;
3005 };
3006 };
3007 } = _menhir_stack in
3008 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3009 let _2 : (
3010 # 140 "parser_cocci_menhir.mly"
3011 (Data.clt)
3012 # 2986 "parser_cocci_menhir.ml"
3013 ) = Obj.magic _2 in
3014 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
3015 let _startpos = _startpos__1_ in
3016 let _endpos = _endpos__3_ in
3017 let _v : 'tv_arith_expr_eexpr_invalid_ =
3018 # 1565 "parser_cocci_menhir.mly"
3019 ( P.logic_op Ast.NotEq _1 _2 _3 )
3020 # 2994 "parser_cocci_menhir.ml"
3021 in
3022 _menhir_env.MenhirLib.EngineTypes.stack <- {
3023 MenhirLib.EngineTypes.state = _menhir_s;
3024 MenhirLib.EngineTypes.semv = Obj.repr _v;
3025 MenhirLib.EngineTypes.startp = _startpos;
3026 MenhirLib.EngineTypes.endp = _endpos;
3027 MenhirLib.EngineTypes.next = _menhir_stack;
3028 });
3029 (fun _menhir_env ->
3030 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3031 let {
3032 MenhirLib.EngineTypes.semv = _3;
3033 MenhirLib.EngineTypes.startp = _startpos__3_;
3034 MenhirLib.EngineTypes.endp = _endpos__3_;
3035 MenhirLib.EngineTypes.next = {
3036 MenhirLib.EngineTypes.semv = _2;
3037 MenhirLib.EngineTypes.startp = _startpos__2_;
3038 MenhirLib.EngineTypes.endp = _endpos__2_;
3039 MenhirLib.EngineTypes.next = {
3040 MenhirLib.EngineTypes.state = _menhir_s;
3041 MenhirLib.EngineTypes.semv = _1;
3042 MenhirLib.EngineTypes.startp = _startpos__1_;
3043 MenhirLib.EngineTypes.endp = _endpos__1_;
3044 MenhirLib.EngineTypes.next = _menhir_stack;
3045 };
3046 };
3047 } = _menhir_stack in
3048 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3049 let _2 : (
3050 # 139 "parser_cocci_menhir.mly"
3051 (Data.clt)
3052 # 3026 "parser_cocci_menhir.ml"
3053 ) = Obj.magic _2 in
3054 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
3055 let _startpos = _startpos__1_ in
3056 let _endpos = _endpos__3_ in
3057 let _v : 'tv_arith_expr_eexpr_invalid_ =
3058 # 1567 "parser_cocci_menhir.mly"
3059 ( P.arith_op Ast.And _1 _2 _3 )
3060 # 3034 "parser_cocci_menhir.ml"
3061 in
3062 _menhir_env.MenhirLib.EngineTypes.stack <- {
3063 MenhirLib.EngineTypes.state = _menhir_s;
3064 MenhirLib.EngineTypes.semv = Obj.repr _v;
3065 MenhirLib.EngineTypes.startp = _startpos;
3066 MenhirLib.EngineTypes.endp = _endpos;
3067 MenhirLib.EngineTypes.next = _menhir_stack;
3068 });
3069 (fun _menhir_env ->
3070 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3071 let {
3072 MenhirLib.EngineTypes.semv = _3;
3073 MenhirLib.EngineTypes.startp = _startpos__3_;
3074 MenhirLib.EngineTypes.endp = _endpos__3_;
3075 MenhirLib.EngineTypes.next = {
3076 MenhirLib.EngineTypes.semv = _2;
3077 MenhirLib.EngineTypes.startp = _startpos__2_;
3078 MenhirLib.EngineTypes.endp = _endpos__2_;
3079 MenhirLib.EngineTypes.next = {
3080 MenhirLib.EngineTypes.state = _menhir_s;
3081 MenhirLib.EngineTypes.semv = _1;
3082 MenhirLib.EngineTypes.startp = _startpos__1_;
3083 MenhirLib.EngineTypes.endp = _endpos__1_;
3084 MenhirLib.EngineTypes.next = _menhir_stack;
3085 };
3086 };
3087 } = _menhir_stack in
3088 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3089 let _2 : (
3090 # 137 "parser_cocci_menhir.mly"
3091 (Data.clt)
3092 # 3066 "parser_cocci_menhir.ml"
3093 ) = Obj.magic _2 in
3094 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
3095 let _startpos = _startpos__1_ in
3096 let _endpos = _endpos__3_ in
3097 let _v : 'tv_arith_expr_eexpr_invalid_ =
3098 # 1569 "parser_cocci_menhir.mly"
3099 ( P.arith_op Ast.Or _1 _2 _3 )
3100 # 3074 "parser_cocci_menhir.ml"
3101 in
3102 _menhir_env.MenhirLib.EngineTypes.stack <- {
3103 MenhirLib.EngineTypes.state = _menhir_s;
3104 MenhirLib.EngineTypes.semv = Obj.repr _v;
3105 MenhirLib.EngineTypes.startp = _startpos;
3106 MenhirLib.EngineTypes.endp = _endpos;
3107 MenhirLib.EngineTypes.next = _menhir_stack;
3108 });
3109 (fun _menhir_env ->
3110 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3111 let {
3112 MenhirLib.EngineTypes.semv = _3;
3113 MenhirLib.EngineTypes.startp = _startpos__3_;
3114 MenhirLib.EngineTypes.endp = _endpos__3_;
3115 MenhirLib.EngineTypes.next = {
3116 MenhirLib.EngineTypes.semv = _2;
3117 MenhirLib.EngineTypes.startp = _startpos__2_;
3118 MenhirLib.EngineTypes.endp = _endpos__2_;
3119 MenhirLib.EngineTypes.next = {
3120 MenhirLib.EngineTypes.state = _menhir_s;
3121 MenhirLib.EngineTypes.semv = _1;
3122 MenhirLib.EngineTypes.startp = _startpos__1_;
3123 MenhirLib.EngineTypes.endp = _endpos__1_;
3124 MenhirLib.EngineTypes.next = _menhir_stack;
3125 };
3126 };
3127 } = _menhir_stack in
3128 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3129 let _2 : (
3130 # 138 "parser_cocci_menhir.mly"
3131 (Data.clt)
3132 # 3106 "parser_cocci_menhir.ml"
3133 ) = Obj.magic _2 in
3134 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
3135 let _startpos = _startpos__1_ in
3136 let _endpos = _endpos__3_ in
3137 let _v : 'tv_arith_expr_eexpr_invalid_ =
3138 # 1571 "parser_cocci_menhir.mly"
3139 ( P.arith_op Ast.Xor _1 _2 _3 )
3140 # 3114 "parser_cocci_menhir.ml"
3141 in
3142 _menhir_env.MenhirLib.EngineTypes.stack <- {
3143 MenhirLib.EngineTypes.state = _menhir_s;
3144 MenhirLib.EngineTypes.semv = Obj.repr _v;
3145 MenhirLib.EngineTypes.startp = _startpos;
3146 MenhirLib.EngineTypes.endp = _endpos;
3147 MenhirLib.EngineTypes.next = _menhir_stack;
3148 });
3149 (fun _menhir_env ->
3150 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3151 let {
3152 MenhirLib.EngineTypes.semv = _3;
3153 MenhirLib.EngineTypes.startp = _startpos__3_;
3154 MenhirLib.EngineTypes.endp = _endpos__3_;
3155 MenhirLib.EngineTypes.next = {
3156 MenhirLib.EngineTypes.semv = _2;
3157 MenhirLib.EngineTypes.startp = _startpos__2_;
3158 MenhirLib.EngineTypes.endp = _endpos__2_;
3159 MenhirLib.EngineTypes.next = {
3160 MenhirLib.EngineTypes.state = _menhir_s;
3161 MenhirLib.EngineTypes.semv = _1;
3162 MenhirLib.EngineTypes.startp = _startpos__1_;
3163 MenhirLib.EngineTypes.endp = _endpos__1_;
3164 MenhirLib.EngineTypes.next = _menhir_stack;
3165 };
3166 };
3167 } = _menhir_stack in
3168 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3169 let _2 : (
3170 # 136 "parser_cocci_menhir.mly"
3171 (Data.clt)
3172 # 3146 "parser_cocci_menhir.ml"
3173 ) = Obj.magic _2 in
3174 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
3175 let _startpos = _startpos__1_ in
3176 let _endpos = _endpos__3_ in
3177 let _v : 'tv_arith_expr_eexpr_invalid_ =
3178 # 1573 "parser_cocci_menhir.mly"
3179 ( P.logic_op Ast.AndLog _1 _2 _3 )
3180 # 3154 "parser_cocci_menhir.ml"
3181 in
3182 _menhir_env.MenhirLib.EngineTypes.stack <- {
3183 MenhirLib.EngineTypes.state = _menhir_s;
3184 MenhirLib.EngineTypes.semv = Obj.repr _v;
3185 MenhirLib.EngineTypes.startp = _startpos;
3186 MenhirLib.EngineTypes.endp = _endpos;
3187 MenhirLib.EngineTypes.next = _menhir_stack;
3188 });
3189 (fun _menhir_env ->
3190 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3191 let {
3192 MenhirLib.EngineTypes.semv = _3;
3193 MenhirLib.EngineTypes.startp = _startpos__3_;
3194 MenhirLib.EngineTypes.endp = _endpos__3_;
3195 MenhirLib.EngineTypes.next = {
3196 MenhirLib.EngineTypes.semv = _2;
3197 MenhirLib.EngineTypes.startp = _startpos__2_;
3198 MenhirLib.EngineTypes.endp = _endpos__2_;
3199 MenhirLib.EngineTypes.next = {
3200 MenhirLib.EngineTypes.state = _menhir_s;
3201 MenhirLib.EngineTypes.semv = _1;
3202 MenhirLib.EngineTypes.startp = _startpos__1_;
3203 MenhirLib.EngineTypes.endp = _endpos__1_;
3204 MenhirLib.EngineTypes.next = _menhir_stack;
3205 };
3206 };
3207 } = _menhir_stack in
3208 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3209 let _2 : (
3210 # 135 "parser_cocci_menhir.mly"
3211 (Data.clt)
3212 # 3186 "parser_cocci_menhir.ml"
3213 ) = Obj.magic _2 in
3214 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
3215 let _startpos = _startpos__1_ in
3216 let _endpos = _endpos__3_ in
3217 let _v : 'tv_arith_expr_eexpr_invalid_ =
3218 # 1575 "parser_cocci_menhir.mly"
3219 ( P.logic_op Ast.OrLog _1 _2 _3 )
3220 # 3194 "parser_cocci_menhir.ml"
3221 in
3222 _menhir_env.MenhirLib.EngineTypes.stack <- {
3223 MenhirLib.EngineTypes.state = _menhir_s;
3224 MenhirLib.EngineTypes.semv = Obj.repr _v;
3225 MenhirLib.EngineTypes.startp = _startpos;
3226 MenhirLib.EngineTypes.endp = _endpos;
3227 MenhirLib.EngineTypes.next = _menhir_stack;
3228 });
3229 (fun _menhir_env ->
3230 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3231 let {
3232 MenhirLib.EngineTypes.state = _menhir_s;
3233 MenhirLib.EngineTypes.semv = _1;
3234 MenhirLib.EngineTypes.startp = _startpos__1_;
3235 MenhirLib.EngineTypes.endp = _endpos__1_;
3236 MenhirLib.EngineTypes.next = _menhir_stack;
3237 } = _menhir_stack in
3238 let _1 : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3239 let _startpos = _startpos__1_ in
3240 let _endpos = _endpos__1_ in
3241 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3242 # 1547 "parser_cocci_menhir.mly"
3243 ( _1 )
3244 # 3218 "parser_cocci_menhir.ml"
3245 in
3246 _menhir_env.MenhirLib.EngineTypes.stack <- {
3247 MenhirLib.EngineTypes.state = _menhir_s;
3248 MenhirLib.EngineTypes.semv = Obj.repr _v;
3249 MenhirLib.EngineTypes.startp = _startpos;
3250 MenhirLib.EngineTypes.endp = _endpos;
3251 MenhirLib.EngineTypes.next = _menhir_stack;
3252 });
3253 (fun _menhir_env ->
3254 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3255 let {
3256 MenhirLib.EngineTypes.semv = _3;
3257 MenhirLib.EngineTypes.startp = _startpos__3_;
3258 MenhirLib.EngineTypes.endp = _endpos__3_;
3259 MenhirLib.EngineTypes.next = {
3260 MenhirLib.EngineTypes.semv = _2;
3261 MenhirLib.EngineTypes.startp = _startpos__2_;
3262 MenhirLib.EngineTypes.endp = _endpos__2_;
3263 MenhirLib.EngineTypes.next = {
3264 MenhirLib.EngineTypes.state = _menhir_s;
3265 MenhirLib.EngineTypes.semv = _1;
3266 MenhirLib.EngineTypes.startp = _startpos__1_;
3267 MenhirLib.EngineTypes.endp = _endpos__1_;
3268 MenhirLib.EngineTypes.next = _menhir_stack;
3269 };
3270 };
3271 } = _menhir_stack in
3272 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3273 let _2 : (
3274 # 145 "parser_cocci_menhir.mly"
3275 (Data.clt)
3276 # 3250 "parser_cocci_menhir.ml"
3277 ) = Obj.magic _2 in
3278 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3279 let _startpos = _startpos__1_ in
3280 let _endpos = _endpos__3_ in
3281 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3282 # 1549 "parser_cocci_menhir.mly"
3283 ( P.arith_op Ast.Mul _1 _2 _3 )
3284 # 3258 "parser_cocci_menhir.ml"
3285 in
3286 _menhir_env.MenhirLib.EngineTypes.stack <- {
3287 MenhirLib.EngineTypes.state = _menhir_s;
3288 MenhirLib.EngineTypes.semv = Obj.repr _v;
3289 MenhirLib.EngineTypes.startp = _startpos;
3290 MenhirLib.EngineTypes.endp = _endpos;
3291 MenhirLib.EngineTypes.next = _menhir_stack;
3292 });
3293 (fun _menhir_env ->
3294 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3295 let {
3296 MenhirLib.EngineTypes.semv = _3;
3297 MenhirLib.EngineTypes.startp = _startpos__3_;
3298 MenhirLib.EngineTypes.endp = _endpos__3_;
3299 MenhirLib.EngineTypes.next = {
3300 MenhirLib.EngineTypes.semv = _2;
3301 MenhirLib.EngineTypes.startp = _startpos__2_;
3302 MenhirLib.EngineTypes.endp = _endpos__2_;
3303 MenhirLib.EngineTypes.next = {
3304 MenhirLib.EngineTypes.state = _menhir_s;
3305 MenhirLib.EngineTypes.semv = _1;
3306 MenhirLib.EngineTypes.startp = _startpos__1_;
3307 MenhirLib.EngineTypes.endp = _endpos__1_;
3308 MenhirLib.EngineTypes.next = _menhir_stack;
3309 };
3310 };
3311 } = _menhir_stack in
3312 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3313 let _2 : (
3314 # 143 "parser_cocci_menhir.mly"
3315 (Ast_cocci.arithOp * Data.clt)
3316 # 3290 "parser_cocci_menhir.ml"
3317 ) = Obj.magic _2 in
3318 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3319 let _startpos = _startpos__1_ in
3320 let _endpos = _endpos__3_ in
3321 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3322 # 1551 "parser_cocci_menhir.mly"
3323 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
3324 # 3298 "parser_cocci_menhir.ml"
3325 in
3326 _menhir_env.MenhirLib.EngineTypes.stack <- {
3327 MenhirLib.EngineTypes.state = _menhir_s;
3328 MenhirLib.EngineTypes.semv = Obj.repr _v;
3329 MenhirLib.EngineTypes.startp = _startpos;
3330 MenhirLib.EngineTypes.endp = _endpos;
3331 MenhirLib.EngineTypes.next = _menhir_stack;
3332 });
3333 (fun _menhir_env ->
3334 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3335 let {
3336 MenhirLib.EngineTypes.semv = _3;
3337 MenhirLib.EngineTypes.startp = _startpos__3_;
3338 MenhirLib.EngineTypes.endp = _endpos__3_;
3339 MenhirLib.EngineTypes.next = {
3340 MenhirLib.EngineTypes.semv = _2;
3341 MenhirLib.EngineTypes.startp = _startpos__2_;
3342 MenhirLib.EngineTypes.endp = _endpos__2_;
3343 MenhirLib.EngineTypes.next = {
3344 MenhirLib.EngineTypes.state = _menhir_s;
3345 MenhirLib.EngineTypes.semv = _1;
3346 MenhirLib.EngineTypes.startp = _startpos__1_;
3347 MenhirLib.EngineTypes.endp = _endpos__1_;
3348 MenhirLib.EngineTypes.next = _menhir_stack;
3349 };
3350 };
3351 } = _menhir_stack in
3352 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3353 let _2 : (
3354 # 144 "parser_cocci_menhir.mly"
3355 (Data.clt)
3356 # 3330 "parser_cocci_menhir.ml"
3357 ) = Obj.magic _2 in
3358 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3359 let _startpos = _startpos__1_ in
3360 let _endpos = _endpos__3_ in
3361 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3362 # 1553 "parser_cocci_menhir.mly"
3363 ( P.arith_op Ast.Plus _1 _2 _3 )
3364 # 3338 "parser_cocci_menhir.ml"
3365 in
3366 _menhir_env.MenhirLib.EngineTypes.stack <- {
3367 MenhirLib.EngineTypes.state = _menhir_s;
3368 MenhirLib.EngineTypes.semv = Obj.repr _v;
3369 MenhirLib.EngineTypes.startp = _startpos;
3370 MenhirLib.EngineTypes.endp = _endpos;
3371 MenhirLib.EngineTypes.next = _menhir_stack;
3372 });
3373 (fun _menhir_env ->
3374 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3375 let {
3376 MenhirLib.EngineTypes.semv = _3;
3377 MenhirLib.EngineTypes.startp = _startpos__3_;
3378 MenhirLib.EngineTypes.endp = _endpos__3_;
3379 MenhirLib.EngineTypes.next = {
3380 MenhirLib.EngineTypes.semv = _2;
3381 MenhirLib.EngineTypes.startp = _startpos__2_;
3382 MenhirLib.EngineTypes.endp = _endpos__2_;
3383 MenhirLib.EngineTypes.next = {
3384 MenhirLib.EngineTypes.state = _menhir_s;
3385 MenhirLib.EngineTypes.semv = _1;
3386 MenhirLib.EngineTypes.startp = _startpos__1_;
3387 MenhirLib.EngineTypes.endp = _endpos__1_;
3388 MenhirLib.EngineTypes.next = _menhir_stack;
3389 };
3390 };
3391 } = _menhir_stack in
3392 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3393 let _2 : (
3394 # 144 "parser_cocci_menhir.mly"
3395 (Data.clt)
3396 # 3370 "parser_cocci_menhir.ml"
3397 ) = Obj.magic _2 in
3398 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3399 let _startpos = _startpos__1_ in
3400 let _endpos = _endpos__3_ in
3401 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3402 # 1555 "parser_cocci_menhir.mly"
3403 ( P.arith_op Ast.Minus _1 _2 _3 )
3404 # 3378 "parser_cocci_menhir.ml"
3405 in
3406 _menhir_env.MenhirLib.EngineTypes.stack <- {
3407 MenhirLib.EngineTypes.state = _menhir_s;
3408 MenhirLib.EngineTypes.semv = Obj.repr _v;
3409 MenhirLib.EngineTypes.startp = _startpos;
3410 MenhirLib.EngineTypes.endp = _endpos;
3411 MenhirLib.EngineTypes.next = _menhir_stack;
3412 });
3413 (fun _menhir_env ->
3414 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3415 let {
3416 MenhirLib.EngineTypes.semv = _3;
3417 MenhirLib.EngineTypes.startp = _startpos__3_;
3418 MenhirLib.EngineTypes.endp = _endpos__3_;
3419 MenhirLib.EngineTypes.next = {
3420 MenhirLib.EngineTypes.semv = _2;
3421 MenhirLib.EngineTypes.startp = _startpos__2_;
3422 MenhirLib.EngineTypes.endp = _endpos__2_;
3423 MenhirLib.EngineTypes.next = {
3424 MenhirLib.EngineTypes.state = _menhir_s;
3425 MenhirLib.EngineTypes.semv = _1;
3426 MenhirLib.EngineTypes.startp = _startpos__1_;
3427 MenhirLib.EngineTypes.endp = _endpos__1_;
3428 MenhirLib.EngineTypes.next = _menhir_stack;
3429 };
3430 };
3431 } = _menhir_stack in
3432 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3433 let _2 : (
3434 # 142 "parser_cocci_menhir.mly"
3435 (Ast_cocci.arithOp * Data.clt)
3436 # 3410 "parser_cocci_menhir.ml"
3437 ) = Obj.magic _2 in
3438 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3439 let _startpos = _startpos__1_ in
3440 let _endpos = _endpos__3_ in
3441 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3442 # 1557 "parser_cocci_menhir.mly"
3443 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
3444 # 3418 "parser_cocci_menhir.ml"
3445 in
3446 _menhir_env.MenhirLib.EngineTypes.stack <- {
3447 MenhirLib.EngineTypes.state = _menhir_s;
3448 MenhirLib.EngineTypes.semv = Obj.repr _v;
3449 MenhirLib.EngineTypes.startp = _startpos;
3450 MenhirLib.EngineTypes.endp = _endpos;
3451 MenhirLib.EngineTypes.next = _menhir_stack;
3452 });
3453 (fun _menhir_env ->
3454 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3455 let {
3456 MenhirLib.EngineTypes.semv = _3;
3457 MenhirLib.EngineTypes.startp = _startpos__3_;
3458 MenhirLib.EngineTypes.endp = _endpos__3_;
3459 MenhirLib.EngineTypes.next = {
3460 MenhirLib.EngineTypes.semv = _2;
3461 MenhirLib.EngineTypes.startp = _startpos__2_;
3462 MenhirLib.EngineTypes.endp = _endpos__2_;
3463 MenhirLib.EngineTypes.next = {
3464 MenhirLib.EngineTypes.state = _menhir_s;
3465 MenhirLib.EngineTypes.semv = _1;
3466 MenhirLib.EngineTypes.startp = _startpos__1_;
3467 MenhirLib.EngineTypes.endp = _endpos__1_;
3468 MenhirLib.EngineTypes.next = _menhir_stack;
3469 };
3470 };
3471 } = _menhir_stack in
3472 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3473 let _2 : (
3474 # 142 "parser_cocci_menhir.mly"
3475 (Ast_cocci.arithOp * Data.clt)
3476 # 3450 "parser_cocci_menhir.ml"
3477 ) = Obj.magic _2 in
3478 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3479 let _startpos = _startpos__1_ in
3480 let _endpos = _endpos__3_ in
3481 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3482 # 1559 "parser_cocci_menhir.mly"
3483 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
3484 # 3458 "parser_cocci_menhir.ml"
3485 in
3486 _menhir_env.MenhirLib.EngineTypes.stack <- {
3487 MenhirLib.EngineTypes.state = _menhir_s;
3488 MenhirLib.EngineTypes.semv = Obj.repr _v;
3489 MenhirLib.EngineTypes.startp = _startpos;
3490 MenhirLib.EngineTypes.endp = _endpos;
3491 MenhirLib.EngineTypes.next = _menhir_stack;
3492 });
3493 (fun _menhir_env ->
3494 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3495 let {
3496 MenhirLib.EngineTypes.semv = _3;
3497 MenhirLib.EngineTypes.startp = _startpos__3_;
3498 MenhirLib.EngineTypes.endp = _endpos__3_;
3499 MenhirLib.EngineTypes.next = {
3500 MenhirLib.EngineTypes.semv = _2;
3501 MenhirLib.EngineTypes.startp = _startpos__2_;
3502 MenhirLib.EngineTypes.endp = _endpos__2_;
3503 MenhirLib.EngineTypes.next = {
3504 MenhirLib.EngineTypes.state = _menhir_s;
3505 MenhirLib.EngineTypes.semv = _1;
3506 MenhirLib.EngineTypes.startp = _startpos__1_;
3507 MenhirLib.EngineTypes.endp = _endpos__1_;
3508 MenhirLib.EngineTypes.next = _menhir_stack;
3509 };
3510 };
3511 } = _menhir_stack in
3512 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3513 let _2 : (
3514 # 141 "parser_cocci_menhir.mly"
3515 (Ast_cocci.logicalOp * Data.clt)
3516 # 3490 "parser_cocci_menhir.ml"
3517 ) = Obj.magic _2 in
3518 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3519 let _startpos = _startpos__1_ in
3520 let _endpos = _endpos__3_ in
3521 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3522 # 1561 "parser_cocci_menhir.mly"
3523 ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
3524 # 3498 "parser_cocci_menhir.ml"
3525 in
3526 _menhir_env.MenhirLib.EngineTypes.stack <- {
3527 MenhirLib.EngineTypes.state = _menhir_s;
3528 MenhirLib.EngineTypes.semv = Obj.repr _v;
3529 MenhirLib.EngineTypes.startp = _startpos;
3530 MenhirLib.EngineTypes.endp = _endpos;
3531 MenhirLib.EngineTypes.next = _menhir_stack;
3532 });
3533 (fun _menhir_env ->
3534 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3535 let {
3536 MenhirLib.EngineTypes.semv = _3;
3537 MenhirLib.EngineTypes.startp = _startpos__3_;
3538 MenhirLib.EngineTypes.endp = _endpos__3_;
3539 MenhirLib.EngineTypes.next = {
3540 MenhirLib.EngineTypes.semv = _2;
3541 MenhirLib.EngineTypes.startp = _startpos__2_;
3542 MenhirLib.EngineTypes.endp = _endpos__2_;
3543 MenhirLib.EngineTypes.next = {
3544 MenhirLib.EngineTypes.state = _menhir_s;
3545 MenhirLib.EngineTypes.semv = _1;
3546 MenhirLib.EngineTypes.startp = _startpos__1_;
3547 MenhirLib.EngineTypes.endp = _endpos__1_;
3548 MenhirLib.EngineTypes.next = _menhir_stack;
3549 };
3550 };
3551 } = _menhir_stack in
3552 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3553 let _2 : (
3554 # 140 "parser_cocci_menhir.mly"
3555 (Data.clt)
3556 # 3530 "parser_cocci_menhir.ml"
3557 ) = Obj.magic _2 in
3558 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3559 let _startpos = _startpos__1_ in
3560 let _endpos = _endpos__3_ in
3561 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3562 # 1563 "parser_cocci_menhir.mly"
3563 ( P.logic_op Ast.Eq _1 _2 _3 )
3564 # 3538 "parser_cocci_menhir.ml"
3565 in
3566 _menhir_env.MenhirLib.EngineTypes.stack <- {
3567 MenhirLib.EngineTypes.state = _menhir_s;
3568 MenhirLib.EngineTypes.semv = Obj.repr _v;
3569 MenhirLib.EngineTypes.startp = _startpos;
3570 MenhirLib.EngineTypes.endp = _endpos;
3571 MenhirLib.EngineTypes.next = _menhir_stack;
3572 });
3573 (fun _menhir_env ->
3574 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3575 let {
3576 MenhirLib.EngineTypes.semv = _3;
3577 MenhirLib.EngineTypes.startp = _startpos__3_;
3578 MenhirLib.EngineTypes.endp = _endpos__3_;
3579 MenhirLib.EngineTypes.next = {
3580 MenhirLib.EngineTypes.semv = _2;
3581 MenhirLib.EngineTypes.startp = _startpos__2_;
3582 MenhirLib.EngineTypes.endp = _endpos__2_;
3583 MenhirLib.EngineTypes.next = {
3584 MenhirLib.EngineTypes.state = _menhir_s;
3585 MenhirLib.EngineTypes.semv = _1;
3586 MenhirLib.EngineTypes.startp = _startpos__1_;
3587 MenhirLib.EngineTypes.endp = _endpos__1_;
3588 MenhirLib.EngineTypes.next = _menhir_stack;
3589 };
3590 };
3591 } = _menhir_stack in
3592 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3593 let _2 : (
3594 # 140 "parser_cocci_menhir.mly"
3595 (Data.clt)
3596 # 3570 "parser_cocci_menhir.ml"
3597 ) = Obj.magic _2 in
3598 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3599 let _startpos = _startpos__1_ in
3600 let _endpos = _endpos__3_ in
3601 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3602 # 1565 "parser_cocci_menhir.mly"
3603 ( P.logic_op Ast.NotEq _1 _2 _3 )
3604 # 3578 "parser_cocci_menhir.ml"
3605 in
3606 _menhir_env.MenhirLib.EngineTypes.stack <- {
3607 MenhirLib.EngineTypes.state = _menhir_s;
3608 MenhirLib.EngineTypes.semv = Obj.repr _v;
3609 MenhirLib.EngineTypes.startp = _startpos;
3610 MenhirLib.EngineTypes.endp = _endpos;
3611 MenhirLib.EngineTypes.next = _menhir_stack;
3612 });
3613 (fun _menhir_env ->
3614 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3615 let {
3616 MenhirLib.EngineTypes.semv = _3;
3617 MenhirLib.EngineTypes.startp = _startpos__3_;
3618 MenhirLib.EngineTypes.endp = _endpos__3_;
3619 MenhirLib.EngineTypes.next = {
3620 MenhirLib.EngineTypes.semv = _2;
3621 MenhirLib.EngineTypes.startp = _startpos__2_;
3622 MenhirLib.EngineTypes.endp = _endpos__2_;
3623 MenhirLib.EngineTypes.next = {
3624 MenhirLib.EngineTypes.state = _menhir_s;
3625 MenhirLib.EngineTypes.semv = _1;
3626 MenhirLib.EngineTypes.startp = _startpos__1_;
3627 MenhirLib.EngineTypes.endp = _endpos__1_;
3628 MenhirLib.EngineTypes.next = _menhir_stack;
3629 };
3630 };
3631 } = _menhir_stack in
3632 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3633 let _2 : (
3634 # 139 "parser_cocci_menhir.mly"
3635 (Data.clt)
3636 # 3610 "parser_cocci_menhir.ml"
3637 ) = Obj.magic _2 in
3638 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3639 let _startpos = _startpos__1_ in
3640 let _endpos = _endpos__3_ in
3641 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3642 # 1567 "parser_cocci_menhir.mly"
3643 ( P.arith_op Ast.And _1 _2 _3 )
3644 # 3618 "parser_cocci_menhir.ml"
3645 in
3646 _menhir_env.MenhirLib.EngineTypes.stack <- {
3647 MenhirLib.EngineTypes.state = _menhir_s;
3648 MenhirLib.EngineTypes.semv = Obj.repr _v;
3649 MenhirLib.EngineTypes.startp = _startpos;
3650 MenhirLib.EngineTypes.endp = _endpos;
3651 MenhirLib.EngineTypes.next = _menhir_stack;
3652 });
3653 (fun _menhir_env ->
3654 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3655 let {
3656 MenhirLib.EngineTypes.semv = _3;
3657 MenhirLib.EngineTypes.startp = _startpos__3_;
3658 MenhirLib.EngineTypes.endp = _endpos__3_;
3659 MenhirLib.EngineTypes.next = {
3660 MenhirLib.EngineTypes.semv = _2;
3661 MenhirLib.EngineTypes.startp = _startpos__2_;
3662 MenhirLib.EngineTypes.endp = _endpos__2_;
3663 MenhirLib.EngineTypes.next = {
3664 MenhirLib.EngineTypes.state = _menhir_s;
3665 MenhirLib.EngineTypes.semv = _1;
3666 MenhirLib.EngineTypes.startp = _startpos__1_;
3667 MenhirLib.EngineTypes.endp = _endpos__1_;
3668 MenhirLib.EngineTypes.next = _menhir_stack;
3669 };
3670 };
3671 } = _menhir_stack in
3672 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3673 let _2 : (
3674 # 137 "parser_cocci_menhir.mly"
3675 (Data.clt)
3676 # 3650 "parser_cocci_menhir.ml"
3677 ) = Obj.magic _2 in
3678 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3679 let _startpos = _startpos__1_ in
3680 let _endpos = _endpos__3_ in
3681 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3682 # 1569 "parser_cocci_menhir.mly"
3683 ( P.arith_op Ast.Or _1 _2 _3 )
3684 # 3658 "parser_cocci_menhir.ml"
3685 in
3686 _menhir_env.MenhirLib.EngineTypes.stack <- {
3687 MenhirLib.EngineTypes.state = _menhir_s;
3688 MenhirLib.EngineTypes.semv = Obj.repr _v;
3689 MenhirLib.EngineTypes.startp = _startpos;
3690 MenhirLib.EngineTypes.endp = _endpos;
3691 MenhirLib.EngineTypes.next = _menhir_stack;
3692 });
3693 (fun _menhir_env ->
3694 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3695 let {
3696 MenhirLib.EngineTypes.semv = _3;
3697 MenhirLib.EngineTypes.startp = _startpos__3_;
3698 MenhirLib.EngineTypes.endp = _endpos__3_;
3699 MenhirLib.EngineTypes.next = {
3700 MenhirLib.EngineTypes.semv = _2;
3701 MenhirLib.EngineTypes.startp = _startpos__2_;
3702 MenhirLib.EngineTypes.endp = _endpos__2_;
3703 MenhirLib.EngineTypes.next = {
3704 MenhirLib.EngineTypes.state = _menhir_s;
3705 MenhirLib.EngineTypes.semv = _1;
3706 MenhirLib.EngineTypes.startp = _startpos__1_;
3707 MenhirLib.EngineTypes.endp = _endpos__1_;
3708 MenhirLib.EngineTypes.next = _menhir_stack;
3709 };
3710 };
3711 } = _menhir_stack in
3712 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3713 let _2 : (
3714 # 138 "parser_cocci_menhir.mly"
3715 (Data.clt)
3716 # 3690 "parser_cocci_menhir.ml"
3717 ) = Obj.magic _2 in
3718 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3719 let _startpos = _startpos__1_ in
3720 let _endpos = _endpos__3_ in
3721 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3722 # 1571 "parser_cocci_menhir.mly"
3723 ( P.arith_op Ast.Xor _1 _2 _3 )
3724 # 3698 "parser_cocci_menhir.ml"
3725 in
3726 _menhir_env.MenhirLib.EngineTypes.stack <- {
3727 MenhirLib.EngineTypes.state = _menhir_s;
3728 MenhirLib.EngineTypes.semv = Obj.repr _v;
3729 MenhirLib.EngineTypes.startp = _startpos;
3730 MenhirLib.EngineTypes.endp = _endpos;
3731 MenhirLib.EngineTypes.next = _menhir_stack;
3732 });
3733 (fun _menhir_env ->
3734 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3735 let {
3736 MenhirLib.EngineTypes.semv = _3;
3737 MenhirLib.EngineTypes.startp = _startpos__3_;
3738 MenhirLib.EngineTypes.endp = _endpos__3_;
3739 MenhirLib.EngineTypes.next = {
3740 MenhirLib.EngineTypes.semv = _2;
3741 MenhirLib.EngineTypes.startp = _startpos__2_;
3742 MenhirLib.EngineTypes.endp = _endpos__2_;
3743 MenhirLib.EngineTypes.next = {
3744 MenhirLib.EngineTypes.state = _menhir_s;
3745 MenhirLib.EngineTypes.semv = _1;
3746 MenhirLib.EngineTypes.startp = _startpos__1_;
3747 MenhirLib.EngineTypes.endp = _endpos__1_;
3748 MenhirLib.EngineTypes.next = _menhir_stack;
3749 };
3750 };
3751 } = _menhir_stack in
3752 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3753 let _2 : (
3754 # 136 "parser_cocci_menhir.mly"
3755 (Data.clt)
3756 # 3730 "parser_cocci_menhir.ml"
3757 ) = Obj.magic _2 in
3758 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3759 let _startpos = _startpos__1_ in
3760 let _endpos = _endpos__3_ in
3761 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3762 # 1573 "parser_cocci_menhir.mly"
3763 ( P.logic_op Ast.AndLog _1 _2 _3 )
3764 # 3738 "parser_cocci_menhir.ml"
3765 in
3766 _menhir_env.MenhirLib.EngineTypes.stack <- {
3767 MenhirLib.EngineTypes.state = _menhir_s;
3768 MenhirLib.EngineTypes.semv = Obj.repr _v;
3769 MenhirLib.EngineTypes.startp = _startpos;
3770 MenhirLib.EngineTypes.endp = _endpos;
3771 MenhirLib.EngineTypes.next = _menhir_stack;
3772 });
3773 (fun _menhir_env ->
3774 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3775 let {
3776 MenhirLib.EngineTypes.semv = _3;
3777 MenhirLib.EngineTypes.startp = _startpos__3_;
3778 MenhirLib.EngineTypes.endp = _endpos__3_;
3779 MenhirLib.EngineTypes.next = {
3780 MenhirLib.EngineTypes.semv = _2;
3781 MenhirLib.EngineTypes.startp = _startpos__2_;
3782 MenhirLib.EngineTypes.endp = _endpos__2_;
3783 MenhirLib.EngineTypes.next = {
3784 MenhirLib.EngineTypes.state = _menhir_s;
3785 MenhirLib.EngineTypes.semv = _1;
3786 MenhirLib.EngineTypes.startp = _startpos__1_;
3787 MenhirLib.EngineTypes.endp = _endpos__1_;
3788 MenhirLib.EngineTypes.next = _menhir_stack;
3789 };
3790 };
3791 } = _menhir_stack in
3792 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3793 let _2 : (
3794 # 135 "parser_cocci_menhir.mly"
3795 (Data.clt)
3796 # 3770 "parser_cocci_menhir.ml"
3797 ) = Obj.magic _2 in
3798 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
3799 let _startpos = _startpos__1_ in
3800 let _endpos = _endpos__3_ in
3801 let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
3802 # 1575 "parser_cocci_menhir.mly"
3803 ( P.logic_op Ast.OrLog _1 _2 _3 )
3804 # 3778 "parser_cocci_menhir.ml"
3805 in
3806 _menhir_env.MenhirLib.EngineTypes.stack <- {
3807 MenhirLib.EngineTypes.state = _menhir_s;
3808 MenhirLib.EngineTypes.semv = Obj.repr _v;
3809 MenhirLib.EngineTypes.startp = _startpos;
3810 MenhirLib.EngineTypes.endp = _endpos;
3811 MenhirLib.EngineTypes.next = _menhir_stack;
3812 });
3813 (fun _menhir_env ->
3814 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3815 let {
3816 MenhirLib.EngineTypes.state = _menhir_s;
3817 MenhirLib.EngineTypes.semv = _1;
3818 MenhirLib.EngineTypes.startp = _startpos__1_;
3819 MenhirLib.EngineTypes.endp = _endpos__1_;
3820 MenhirLib.EngineTypes.next = _menhir_stack;
3821 } = _menhir_stack in
3822 let _1 : 'tv_cast_expr_expr_invalid_ = Obj.magic _1 in
3823 let _startpos = _startpos__1_ in
3824 let _endpos = _endpos__1_ in
3825 let _v : 'tv_arith_expr_expr_invalid_ =
3826 # 1547 "parser_cocci_menhir.mly"
3827 ( _1 )
3828 # 3802 "parser_cocci_menhir.ml"
3829 in
3830 _menhir_env.MenhirLib.EngineTypes.stack <- {
3831 MenhirLib.EngineTypes.state = _menhir_s;
3832 MenhirLib.EngineTypes.semv = Obj.repr _v;
3833 MenhirLib.EngineTypes.startp = _startpos;
3834 MenhirLib.EngineTypes.endp = _endpos;
3835 MenhirLib.EngineTypes.next = _menhir_stack;
3836 });
3837 (fun _menhir_env ->
3838 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3839 let {
3840 MenhirLib.EngineTypes.semv = _3;
3841 MenhirLib.EngineTypes.startp = _startpos__3_;
3842 MenhirLib.EngineTypes.endp = _endpos__3_;
3843 MenhirLib.EngineTypes.next = {
3844 MenhirLib.EngineTypes.semv = _2;
3845 MenhirLib.EngineTypes.startp = _startpos__2_;
3846 MenhirLib.EngineTypes.endp = _endpos__2_;
3847 MenhirLib.EngineTypes.next = {
3848 MenhirLib.EngineTypes.state = _menhir_s;
3849 MenhirLib.EngineTypes.semv = _1;
3850 MenhirLib.EngineTypes.startp = _startpos__1_;
3851 MenhirLib.EngineTypes.endp = _endpos__1_;
3852 MenhirLib.EngineTypes.next = _menhir_stack;
3853 };
3854 };
3855 } = _menhir_stack in
3856 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3857 let _2 : (
3858 # 145 "parser_cocci_menhir.mly"
3859 (Data.clt)
3860 # 3834 "parser_cocci_menhir.ml"
3861 ) = Obj.magic _2 in
3862 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3863 let _startpos = _startpos__1_ in
3864 let _endpos = _endpos__3_ in
3865 let _v : 'tv_arith_expr_expr_invalid_ =
3866 # 1549 "parser_cocci_menhir.mly"
3867 ( P.arith_op Ast.Mul _1 _2 _3 )
3868 # 3842 "parser_cocci_menhir.ml"
3869 in
3870 _menhir_env.MenhirLib.EngineTypes.stack <- {
3871 MenhirLib.EngineTypes.state = _menhir_s;
3872 MenhirLib.EngineTypes.semv = Obj.repr _v;
3873 MenhirLib.EngineTypes.startp = _startpos;
3874 MenhirLib.EngineTypes.endp = _endpos;
3875 MenhirLib.EngineTypes.next = _menhir_stack;
3876 });
3877 (fun _menhir_env ->
3878 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3879 let {
3880 MenhirLib.EngineTypes.semv = _3;
3881 MenhirLib.EngineTypes.startp = _startpos__3_;
3882 MenhirLib.EngineTypes.endp = _endpos__3_;
3883 MenhirLib.EngineTypes.next = {
3884 MenhirLib.EngineTypes.semv = _2;
3885 MenhirLib.EngineTypes.startp = _startpos__2_;
3886 MenhirLib.EngineTypes.endp = _endpos__2_;
3887 MenhirLib.EngineTypes.next = {
3888 MenhirLib.EngineTypes.state = _menhir_s;
3889 MenhirLib.EngineTypes.semv = _1;
3890 MenhirLib.EngineTypes.startp = _startpos__1_;
3891 MenhirLib.EngineTypes.endp = _endpos__1_;
3892 MenhirLib.EngineTypes.next = _menhir_stack;
3893 };
3894 };
3895 } = _menhir_stack in
3896 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3897 let _2 : (
3898 # 143 "parser_cocci_menhir.mly"
3899 (Ast_cocci.arithOp * Data.clt)
3900 # 3874 "parser_cocci_menhir.ml"
3901 ) = Obj.magic _2 in
3902 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3903 let _startpos = _startpos__1_ in
3904 let _endpos = _endpos__3_ in
3905 let _v : 'tv_arith_expr_expr_invalid_ =
3906 # 1551 "parser_cocci_menhir.mly"
3907 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
3908 # 3882 "parser_cocci_menhir.ml"
3909 in
3910 _menhir_env.MenhirLib.EngineTypes.stack <- {
3911 MenhirLib.EngineTypes.state = _menhir_s;
3912 MenhirLib.EngineTypes.semv = Obj.repr _v;
3913 MenhirLib.EngineTypes.startp = _startpos;
3914 MenhirLib.EngineTypes.endp = _endpos;
3915 MenhirLib.EngineTypes.next = _menhir_stack;
3916 });
3917 (fun _menhir_env ->
3918 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3919 let {
3920 MenhirLib.EngineTypes.semv = _3;
3921 MenhirLib.EngineTypes.startp = _startpos__3_;
3922 MenhirLib.EngineTypes.endp = _endpos__3_;
3923 MenhirLib.EngineTypes.next = {
3924 MenhirLib.EngineTypes.semv = _2;
3925 MenhirLib.EngineTypes.startp = _startpos__2_;
3926 MenhirLib.EngineTypes.endp = _endpos__2_;
3927 MenhirLib.EngineTypes.next = {
3928 MenhirLib.EngineTypes.state = _menhir_s;
3929 MenhirLib.EngineTypes.semv = _1;
3930 MenhirLib.EngineTypes.startp = _startpos__1_;
3931 MenhirLib.EngineTypes.endp = _endpos__1_;
3932 MenhirLib.EngineTypes.next = _menhir_stack;
3933 };
3934 };
3935 } = _menhir_stack in
3936 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3937 let _2 : (
3938 # 144 "parser_cocci_menhir.mly"
3939 (Data.clt)
3940 # 3914 "parser_cocci_menhir.ml"
3941 ) = Obj.magic _2 in
3942 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3943 let _startpos = _startpos__1_ in
3944 let _endpos = _endpos__3_ in
3945 let _v : 'tv_arith_expr_expr_invalid_ =
3946 # 1553 "parser_cocci_menhir.mly"
3947 ( P.arith_op Ast.Plus _1 _2 _3 )
3948 # 3922 "parser_cocci_menhir.ml"
3949 in
3950 _menhir_env.MenhirLib.EngineTypes.stack <- {
3951 MenhirLib.EngineTypes.state = _menhir_s;
3952 MenhirLib.EngineTypes.semv = Obj.repr _v;
3953 MenhirLib.EngineTypes.startp = _startpos;
3954 MenhirLib.EngineTypes.endp = _endpos;
3955 MenhirLib.EngineTypes.next = _menhir_stack;
3956 });
3957 (fun _menhir_env ->
3958 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3959 let {
3960 MenhirLib.EngineTypes.semv = _3;
3961 MenhirLib.EngineTypes.startp = _startpos__3_;
3962 MenhirLib.EngineTypes.endp = _endpos__3_;
3963 MenhirLib.EngineTypes.next = {
3964 MenhirLib.EngineTypes.semv = _2;
3965 MenhirLib.EngineTypes.startp = _startpos__2_;
3966 MenhirLib.EngineTypes.endp = _endpos__2_;
3967 MenhirLib.EngineTypes.next = {
3968 MenhirLib.EngineTypes.state = _menhir_s;
3969 MenhirLib.EngineTypes.semv = _1;
3970 MenhirLib.EngineTypes.startp = _startpos__1_;
3971 MenhirLib.EngineTypes.endp = _endpos__1_;
3972 MenhirLib.EngineTypes.next = _menhir_stack;
3973 };
3974 };
3975 } = _menhir_stack in
3976 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
3977 let _2 : (
3978 # 144 "parser_cocci_menhir.mly"
3979 (Data.clt)
3980 # 3954 "parser_cocci_menhir.ml"
3981 ) = Obj.magic _2 in
3982 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
3983 let _startpos = _startpos__1_ in
3984 let _endpos = _endpos__3_ in
3985 let _v : 'tv_arith_expr_expr_invalid_ =
3986 # 1555 "parser_cocci_menhir.mly"
3987 ( P.arith_op Ast.Minus _1 _2 _3 )
3988 # 3962 "parser_cocci_menhir.ml"
3989 in
3990 _menhir_env.MenhirLib.EngineTypes.stack <- {
3991 MenhirLib.EngineTypes.state = _menhir_s;
3992 MenhirLib.EngineTypes.semv = Obj.repr _v;
3993 MenhirLib.EngineTypes.startp = _startpos;
3994 MenhirLib.EngineTypes.endp = _endpos;
3995 MenhirLib.EngineTypes.next = _menhir_stack;
3996 });
3997 (fun _menhir_env ->
3998 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
3999 let {
4000 MenhirLib.EngineTypes.semv = _3;
4001 MenhirLib.EngineTypes.startp = _startpos__3_;
4002 MenhirLib.EngineTypes.endp = _endpos__3_;
4003 MenhirLib.EngineTypes.next = {
4004 MenhirLib.EngineTypes.semv = _2;
4005 MenhirLib.EngineTypes.startp = _startpos__2_;
4006 MenhirLib.EngineTypes.endp = _endpos__2_;
4007 MenhirLib.EngineTypes.next = {
4008 MenhirLib.EngineTypes.state = _menhir_s;
4009 MenhirLib.EngineTypes.semv = _1;
4010 MenhirLib.EngineTypes.startp = _startpos__1_;
4011 MenhirLib.EngineTypes.endp = _endpos__1_;
4012 MenhirLib.EngineTypes.next = _menhir_stack;
4013 };
4014 };
4015 } = _menhir_stack in
4016 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4017 let _2 : (
4018 # 142 "parser_cocci_menhir.mly"
4019 (Ast_cocci.arithOp * Data.clt)
4020 # 3994 "parser_cocci_menhir.ml"
4021 ) = Obj.magic _2 in
4022 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
4023 let _startpos = _startpos__1_ in
4024 let _endpos = _endpos__3_ in
4025 let _v : 'tv_arith_expr_expr_invalid_ =
4026 # 1557 "parser_cocci_menhir.mly"
4027 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
4028 # 4002 "parser_cocci_menhir.ml"
4029 in
4030 _menhir_env.MenhirLib.EngineTypes.stack <- {
4031 MenhirLib.EngineTypes.state = _menhir_s;
4032 MenhirLib.EngineTypes.semv = Obj.repr _v;
4033 MenhirLib.EngineTypes.startp = _startpos;
4034 MenhirLib.EngineTypes.endp = _endpos;
4035 MenhirLib.EngineTypes.next = _menhir_stack;
4036 });
4037 (fun _menhir_env ->
4038 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4039 let {
4040 MenhirLib.EngineTypes.semv = _3;
4041 MenhirLib.EngineTypes.startp = _startpos__3_;
4042 MenhirLib.EngineTypes.endp = _endpos__3_;
4043 MenhirLib.EngineTypes.next = {
4044 MenhirLib.EngineTypes.semv = _2;
4045 MenhirLib.EngineTypes.startp = _startpos__2_;
4046 MenhirLib.EngineTypes.endp = _endpos__2_;
4047 MenhirLib.EngineTypes.next = {
4048 MenhirLib.EngineTypes.state = _menhir_s;
4049 MenhirLib.EngineTypes.semv = _1;
4050 MenhirLib.EngineTypes.startp = _startpos__1_;
4051 MenhirLib.EngineTypes.endp = _endpos__1_;
4052 MenhirLib.EngineTypes.next = _menhir_stack;
4053 };
4054 };
4055 } = _menhir_stack in
4056 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4057 let _2 : (
4058 # 142 "parser_cocci_menhir.mly"
4059 (Ast_cocci.arithOp * Data.clt)
4060 # 4034 "parser_cocci_menhir.ml"
4061 ) = Obj.magic _2 in
4062 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
4063 let _startpos = _startpos__1_ in
4064 let _endpos = _endpos__3_ in
4065 let _v : 'tv_arith_expr_expr_invalid_ =
4066 # 1559 "parser_cocci_menhir.mly"
4067 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
4068 # 4042 "parser_cocci_menhir.ml"
4069 in
4070 _menhir_env.MenhirLib.EngineTypes.stack <- {
4071 MenhirLib.EngineTypes.state = _menhir_s;
4072 MenhirLib.EngineTypes.semv = Obj.repr _v;
4073 MenhirLib.EngineTypes.startp = _startpos;
4074 MenhirLib.EngineTypes.endp = _endpos;
4075 MenhirLib.EngineTypes.next = _menhir_stack;
4076 });
4077 (fun _menhir_env ->
4078 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4079 let {
4080 MenhirLib.EngineTypes.semv = _3;
4081 MenhirLib.EngineTypes.startp = _startpos__3_;
4082 MenhirLib.EngineTypes.endp = _endpos__3_;
4083 MenhirLib.EngineTypes.next = {
4084 MenhirLib.EngineTypes.semv = _2;
4085 MenhirLib.EngineTypes.startp = _startpos__2_;
4086 MenhirLib.EngineTypes.endp = _endpos__2_;
4087 MenhirLib.EngineTypes.next = {
4088 MenhirLib.EngineTypes.state = _menhir_s;
4089 MenhirLib.EngineTypes.semv = _1;
4090 MenhirLib.EngineTypes.startp = _startpos__1_;
4091 MenhirLib.EngineTypes.endp = _endpos__1_;
4092 MenhirLib.EngineTypes.next = _menhir_stack;
4093 };
4094 };
4095 } = _menhir_stack in
4096 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4097 let _2 : (
4098 # 141 "parser_cocci_menhir.mly"
4099 (Ast_cocci.logicalOp * Data.clt)
4100 # 4074 "parser_cocci_menhir.ml"
4101 ) = Obj.magic _2 in
4102 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
4103 let _startpos = _startpos__1_ in
4104 let _endpos = _endpos__3_ in
4105 let _v : 'tv_arith_expr_expr_invalid_ =
4106 # 1561 "parser_cocci_menhir.mly"
4107 ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
4108 # 4082 "parser_cocci_menhir.ml"
4109 in
4110 _menhir_env.MenhirLib.EngineTypes.stack <- {
4111 MenhirLib.EngineTypes.state = _menhir_s;
4112 MenhirLib.EngineTypes.semv = Obj.repr _v;
4113 MenhirLib.EngineTypes.startp = _startpos;
4114 MenhirLib.EngineTypes.endp = _endpos;
4115 MenhirLib.EngineTypes.next = _menhir_stack;
4116 });
4117 (fun _menhir_env ->
4118 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4119 let {
4120 MenhirLib.EngineTypes.semv = _3;
4121 MenhirLib.EngineTypes.startp = _startpos__3_;
4122 MenhirLib.EngineTypes.endp = _endpos__3_;
4123 MenhirLib.EngineTypes.next = {
4124 MenhirLib.EngineTypes.semv = _2;
4125 MenhirLib.EngineTypes.startp = _startpos__2_;
4126 MenhirLib.EngineTypes.endp = _endpos__2_;
4127 MenhirLib.EngineTypes.next = {
4128 MenhirLib.EngineTypes.state = _menhir_s;
4129 MenhirLib.EngineTypes.semv = _1;
4130 MenhirLib.EngineTypes.startp = _startpos__1_;
4131 MenhirLib.EngineTypes.endp = _endpos__1_;
4132 MenhirLib.EngineTypes.next = _menhir_stack;
4133 };
4134 };
4135 } = _menhir_stack in
4136 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4137 let _2 : (
4138 # 140 "parser_cocci_menhir.mly"
4139 (Data.clt)
4140 # 4114 "parser_cocci_menhir.ml"
4141 ) = Obj.magic _2 in
4142 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
4143 let _startpos = _startpos__1_ in
4144 let _endpos = _endpos__3_ in
4145 let _v : 'tv_arith_expr_expr_invalid_ =
4146 # 1563 "parser_cocci_menhir.mly"
4147 ( P.logic_op Ast.Eq _1 _2 _3 )
4148 # 4122 "parser_cocci_menhir.ml"
4149 in
4150 _menhir_env.MenhirLib.EngineTypes.stack <- {
4151 MenhirLib.EngineTypes.state = _menhir_s;
4152 MenhirLib.EngineTypes.semv = Obj.repr _v;
4153 MenhirLib.EngineTypes.startp = _startpos;
4154 MenhirLib.EngineTypes.endp = _endpos;
4155 MenhirLib.EngineTypes.next = _menhir_stack;
4156 });
4157 (fun _menhir_env ->
4158 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4159 let {
4160 MenhirLib.EngineTypes.semv = _3;
4161 MenhirLib.EngineTypes.startp = _startpos__3_;
4162 MenhirLib.EngineTypes.endp = _endpos__3_;
4163 MenhirLib.EngineTypes.next = {
4164 MenhirLib.EngineTypes.semv = _2;
4165 MenhirLib.EngineTypes.startp = _startpos__2_;
4166 MenhirLib.EngineTypes.endp = _endpos__2_;
4167 MenhirLib.EngineTypes.next = {
4168 MenhirLib.EngineTypes.state = _menhir_s;
4169 MenhirLib.EngineTypes.semv = _1;
4170 MenhirLib.EngineTypes.startp = _startpos__1_;
4171 MenhirLib.EngineTypes.endp = _endpos__1_;
4172 MenhirLib.EngineTypes.next = _menhir_stack;
4173 };
4174 };
4175 } = _menhir_stack in
4176 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4177 let _2 : (
4178 # 140 "parser_cocci_menhir.mly"
4179 (Data.clt)
4180 # 4154 "parser_cocci_menhir.ml"
4181 ) = Obj.magic _2 in
4182 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
4183 let _startpos = _startpos__1_ in
4184 let _endpos = _endpos__3_ in
4185 let _v : 'tv_arith_expr_expr_invalid_ =
4186 # 1565 "parser_cocci_menhir.mly"
4187 ( P.logic_op Ast.NotEq _1 _2 _3 )
4188 # 4162 "parser_cocci_menhir.ml"
4189 in
4190 _menhir_env.MenhirLib.EngineTypes.stack <- {
4191 MenhirLib.EngineTypes.state = _menhir_s;
4192 MenhirLib.EngineTypes.semv = Obj.repr _v;
4193 MenhirLib.EngineTypes.startp = _startpos;
4194 MenhirLib.EngineTypes.endp = _endpos;
4195 MenhirLib.EngineTypes.next = _menhir_stack;
4196 });
4197 (fun _menhir_env ->
4198 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4199 let {
4200 MenhirLib.EngineTypes.semv = _3;
4201 MenhirLib.EngineTypes.startp = _startpos__3_;
4202 MenhirLib.EngineTypes.endp = _endpos__3_;
4203 MenhirLib.EngineTypes.next = {
4204 MenhirLib.EngineTypes.semv = _2;
4205 MenhirLib.EngineTypes.startp = _startpos__2_;
4206 MenhirLib.EngineTypes.endp = _endpos__2_;
4207 MenhirLib.EngineTypes.next = {
4208 MenhirLib.EngineTypes.state = _menhir_s;
4209 MenhirLib.EngineTypes.semv = _1;
4210 MenhirLib.EngineTypes.startp = _startpos__1_;
4211 MenhirLib.EngineTypes.endp = _endpos__1_;
4212 MenhirLib.EngineTypes.next = _menhir_stack;
4213 };
4214 };
4215 } = _menhir_stack in
4216 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4217 let _2 : (
4218 # 139 "parser_cocci_menhir.mly"
4219 (Data.clt)
4220 # 4194 "parser_cocci_menhir.ml"
4221 ) = Obj.magic _2 in
4222 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
4223 let _startpos = _startpos__1_ in
4224 let _endpos = _endpos__3_ in
4225 let _v : 'tv_arith_expr_expr_invalid_ =
4226 # 1567 "parser_cocci_menhir.mly"
4227 ( P.arith_op Ast.And _1 _2 _3 )
4228 # 4202 "parser_cocci_menhir.ml"
4229 in
4230 _menhir_env.MenhirLib.EngineTypes.stack <- {
4231 MenhirLib.EngineTypes.state = _menhir_s;
4232 MenhirLib.EngineTypes.semv = Obj.repr _v;
4233 MenhirLib.EngineTypes.startp = _startpos;
4234 MenhirLib.EngineTypes.endp = _endpos;
4235 MenhirLib.EngineTypes.next = _menhir_stack;
4236 });
4237 (fun _menhir_env ->
4238 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4239 let {
4240 MenhirLib.EngineTypes.semv = _3;
4241 MenhirLib.EngineTypes.startp = _startpos__3_;
4242 MenhirLib.EngineTypes.endp = _endpos__3_;
4243 MenhirLib.EngineTypes.next = {
4244 MenhirLib.EngineTypes.semv = _2;
4245 MenhirLib.EngineTypes.startp = _startpos__2_;
4246 MenhirLib.EngineTypes.endp = _endpos__2_;
4247 MenhirLib.EngineTypes.next = {
4248 MenhirLib.EngineTypes.state = _menhir_s;
4249 MenhirLib.EngineTypes.semv = _1;
4250 MenhirLib.EngineTypes.startp = _startpos__1_;
4251 MenhirLib.EngineTypes.endp = _endpos__1_;
4252 MenhirLib.EngineTypes.next = _menhir_stack;
4253 };
4254 };
4255 } = _menhir_stack in
4256 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4257 let _2 : (
4258 # 137 "parser_cocci_menhir.mly"
4259 (Data.clt)
4260 # 4234 "parser_cocci_menhir.ml"
4261 ) = Obj.magic _2 in
4262 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
4263 let _startpos = _startpos__1_ in
4264 let _endpos = _endpos__3_ in
4265 let _v : 'tv_arith_expr_expr_invalid_ =
4266 # 1569 "parser_cocci_menhir.mly"
4267 ( P.arith_op Ast.Or _1 _2 _3 )
4268 # 4242 "parser_cocci_menhir.ml"
4269 in
4270 _menhir_env.MenhirLib.EngineTypes.stack <- {
4271 MenhirLib.EngineTypes.state = _menhir_s;
4272 MenhirLib.EngineTypes.semv = Obj.repr _v;
4273 MenhirLib.EngineTypes.startp = _startpos;
4274 MenhirLib.EngineTypes.endp = _endpos;
4275 MenhirLib.EngineTypes.next = _menhir_stack;
4276 });
4277 (fun _menhir_env ->
4278 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4279 let {
4280 MenhirLib.EngineTypes.semv = _3;
4281 MenhirLib.EngineTypes.startp = _startpos__3_;
4282 MenhirLib.EngineTypes.endp = _endpos__3_;
4283 MenhirLib.EngineTypes.next = {
4284 MenhirLib.EngineTypes.semv = _2;
4285 MenhirLib.EngineTypes.startp = _startpos__2_;
4286 MenhirLib.EngineTypes.endp = _endpos__2_;
4287 MenhirLib.EngineTypes.next = {
4288 MenhirLib.EngineTypes.state = _menhir_s;
4289 MenhirLib.EngineTypes.semv = _1;
4290 MenhirLib.EngineTypes.startp = _startpos__1_;
4291 MenhirLib.EngineTypes.endp = _endpos__1_;
4292 MenhirLib.EngineTypes.next = _menhir_stack;
4293 };
4294 };
4295 } = _menhir_stack in
4296 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4297 let _2 : (
4298 # 138 "parser_cocci_menhir.mly"
4299 (Data.clt)
4300 # 4274 "parser_cocci_menhir.ml"
4301 ) = Obj.magic _2 in
4302 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
4303 let _startpos = _startpos__1_ in
4304 let _endpos = _endpos__3_ in
4305 let _v : 'tv_arith_expr_expr_invalid_ =
4306 # 1571 "parser_cocci_menhir.mly"
4307 ( P.arith_op Ast.Xor _1 _2 _3 )
4308 # 4282 "parser_cocci_menhir.ml"
4309 in
4310 _menhir_env.MenhirLib.EngineTypes.stack <- {
4311 MenhirLib.EngineTypes.state = _menhir_s;
4312 MenhirLib.EngineTypes.semv = Obj.repr _v;
4313 MenhirLib.EngineTypes.startp = _startpos;
4314 MenhirLib.EngineTypes.endp = _endpos;
4315 MenhirLib.EngineTypes.next = _menhir_stack;
4316 });
4317 (fun _menhir_env ->
4318 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4319 let {
4320 MenhirLib.EngineTypes.semv = _3;
4321 MenhirLib.EngineTypes.startp = _startpos__3_;
4322 MenhirLib.EngineTypes.endp = _endpos__3_;
4323 MenhirLib.EngineTypes.next = {
4324 MenhirLib.EngineTypes.semv = _2;
4325 MenhirLib.EngineTypes.startp = _startpos__2_;
4326 MenhirLib.EngineTypes.endp = _endpos__2_;
4327 MenhirLib.EngineTypes.next = {
4328 MenhirLib.EngineTypes.state = _menhir_s;
4329 MenhirLib.EngineTypes.semv = _1;
4330 MenhirLib.EngineTypes.startp = _startpos__1_;
4331 MenhirLib.EngineTypes.endp = _endpos__1_;
4332 MenhirLib.EngineTypes.next = _menhir_stack;
4333 };
4334 };
4335 } = _menhir_stack in
4336 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4337 let _2 : (
4338 # 136 "parser_cocci_menhir.mly"
4339 (Data.clt)
4340 # 4314 "parser_cocci_menhir.ml"
4341 ) = Obj.magic _2 in
4342 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
4343 let _startpos = _startpos__1_ in
4344 let _endpos = _endpos__3_ in
4345 let _v : 'tv_arith_expr_expr_invalid_ =
4346 # 1573 "parser_cocci_menhir.mly"
4347 ( P.logic_op Ast.AndLog _1 _2 _3 )
4348 # 4322 "parser_cocci_menhir.ml"
4349 in
4350 _menhir_env.MenhirLib.EngineTypes.stack <- {
4351 MenhirLib.EngineTypes.state = _menhir_s;
4352 MenhirLib.EngineTypes.semv = Obj.repr _v;
4353 MenhirLib.EngineTypes.startp = _startpos;
4354 MenhirLib.EngineTypes.endp = _endpos;
4355 MenhirLib.EngineTypes.next = _menhir_stack;
4356 });
4357 (fun _menhir_env ->
4358 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4359 let {
4360 MenhirLib.EngineTypes.semv = _3;
4361 MenhirLib.EngineTypes.startp = _startpos__3_;
4362 MenhirLib.EngineTypes.endp = _endpos__3_;
4363 MenhirLib.EngineTypes.next = {
4364 MenhirLib.EngineTypes.semv = _2;
4365 MenhirLib.EngineTypes.startp = _startpos__2_;
4366 MenhirLib.EngineTypes.endp = _endpos__2_;
4367 MenhirLib.EngineTypes.next = {
4368 MenhirLib.EngineTypes.state = _menhir_s;
4369 MenhirLib.EngineTypes.semv = _1;
4370 MenhirLib.EngineTypes.startp = _startpos__1_;
4371 MenhirLib.EngineTypes.endp = _endpos__1_;
4372 MenhirLib.EngineTypes.next = _menhir_stack;
4373 };
4374 };
4375 } = _menhir_stack in
4376 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4377 let _2 : (
4378 # 135 "parser_cocci_menhir.mly"
4379 (Data.clt)
4380 # 4354 "parser_cocci_menhir.ml"
4381 ) = Obj.magic _2 in
4382 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
4383 let _startpos = _startpos__1_ in
4384 let _endpos = _endpos__3_ in
4385 let _v : 'tv_arith_expr_expr_invalid_ =
4386 # 1575 "parser_cocci_menhir.mly"
4387 ( P.logic_op Ast.OrLog _1 _2 _3 )
4388 # 4362 "parser_cocci_menhir.ml"
4389 in
4390 _menhir_env.MenhirLib.EngineTypes.stack <- {
4391 MenhirLib.EngineTypes.state = _menhir_s;
4392 MenhirLib.EngineTypes.semv = Obj.repr _v;
4393 MenhirLib.EngineTypes.startp = _startpos;
4394 MenhirLib.EngineTypes.endp = _endpos;
4395 MenhirLib.EngineTypes.next = _menhir_stack;
4396 });
4397 (fun _menhir_env ->
4398 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4399 let {
4400 MenhirLib.EngineTypes.state = _menhir_s;
4401 MenhirLib.EngineTypes.semv = _1;
4402 MenhirLib.EngineTypes.startp = _startpos__1_;
4403 MenhirLib.EngineTypes.endp = _endpos__1_;
4404 MenhirLib.EngineTypes.next = _menhir_stack;
4405 } = _menhir_stack in
4406 let _1 : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic _1 in
4407 let _startpos = _startpos__1_ in
4408 let _endpos = _endpos__1_ in
4409 let _v : 'tv_arith_expr_bis =
4410 # 1580 "parser_cocci_menhir.mly"
4411 ( _1 )
4412 # 4386 "parser_cocci_menhir.ml"
4413 in
4414 _menhir_env.MenhirLib.EngineTypes.stack <- {
4415 MenhirLib.EngineTypes.state = _menhir_s;
4416 MenhirLib.EngineTypes.semv = Obj.repr _v;
4417 MenhirLib.EngineTypes.startp = _startpos;
4418 MenhirLib.EngineTypes.endp = _endpos;
4419 MenhirLib.EngineTypes.next = _menhir_stack;
4420 });
4421 (fun _menhir_env ->
4422 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4423 let {
4424 MenhirLib.EngineTypes.semv = _3;
4425 MenhirLib.EngineTypes.startp = _startpos__3_;
4426 MenhirLib.EngineTypes.endp = _endpos__3_;
4427 MenhirLib.EngineTypes.next = {
4428 MenhirLib.EngineTypes.semv = _2;
4429 MenhirLib.EngineTypes.startp = _startpos__2_;
4430 MenhirLib.EngineTypes.endp = _endpos__2_;
4431 MenhirLib.EngineTypes.next = {
4432 MenhirLib.EngineTypes.state = _menhir_s;
4433 MenhirLib.EngineTypes.semv = _1;
4434 MenhirLib.EngineTypes.startp = _startpos__1_;
4435 MenhirLib.EngineTypes.endp = _endpos__1_;
4436 MenhirLib.EngineTypes.next = _menhir_stack;
4437 };
4438 };
4439 } = _menhir_stack in
4440 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4441 let _2 : (
4442 # 145 "parser_cocci_menhir.mly"
4443 (Data.clt)
4444 # 4418 "parser_cocci_menhir.ml"
4445 ) = Obj.magic _2 in
4446 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4447 let _startpos = _startpos__1_ in
4448 let _endpos = _endpos__3_ in
4449 let _v : 'tv_arith_expr_bis =
4450 # 1582 "parser_cocci_menhir.mly"
4451 ( P.arith_op Ast.Mul _1 _2 _3 )
4452 # 4426 "parser_cocci_menhir.ml"
4453 in
4454 _menhir_env.MenhirLib.EngineTypes.stack <- {
4455 MenhirLib.EngineTypes.state = _menhir_s;
4456 MenhirLib.EngineTypes.semv = Obj.repr _v;
4457 MenhirLib.EngineTypes.startp = _startpos;
4458 MenhirLib.EngineTypes.endp = _endpos;
4459 MenhirLib.EngineTypes.next = _menhir_stack;
4460 });
4461 (fun _menhir_env ->
4462 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4463 let {
4464 MenhirLib.EngineTypes.semv = _3;
4465 MenhirLib.EngineTypes.startp = _startpos__3_;
4466 MenhirLib.EngineTypes.endp = _endpos__3_;
4467 MenhirLib.EngineTypes.next = {
4468 MenhirLib.EngineTypes.semv = _2;
4469 MenhirLib.EngineTypes.startp = _startpos__2_;
4470 MenhirLib.EngineTypes.endp = _endpos__2_;
4471 MenhirLib.EngineTypes.next = {
4472 MenhirLib.EngineTypes.state = _menhir_s;
4473 MenhirLib.EngineTypes.semv = _1;
4474 MenhirLib.EngineTypes.startp = _startpos__1_;
4475 MenhirLib.EngineTypes.endp = _endpos__1_;
4476 MenhirLib.EngineTypes.next = _menhir_stack;
4477 };
4478 };
4479 } = _menhir_stack in
4480 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4481 let _2 : (
4482 # 143 "parser_cocci_menhir.mly"
4483 (Ast_cocci.arithOp * Data.clt)
4484 # 4458 "parser_cocci_menhir.ml"
4485 ) = Obj.magic _2 in
4486 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4487 let _startpos = _startpos__1_ in
4488 let _endpos = _endpos__3_ in
4489 let _v : 'tv_arith_expr_bis =
4490 # 1584 "parser_cocci_menhir.mly"
4491 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
4492 # 4466 "parser_cocci_menhir.ml"
4493 in
4494 _menhir_env.MenhirLib.EngineTypes.stack <- {
4495 MenhirLib.EngineTypes.state = _menhir_s;
4496 MenhirLib.EngineTypes.semv = Obj.repr _v;
4497 MenhirLib.EngineTypes.startp = _startpos;
4498 MenhirLib.EngineTypes.endp = _endpos;
4499 MenhirLib.EngineTypes.next = _menhir_stack;
4500 });
4501 (fun _menhir_env ->
4502 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4503 let {
4504 MenhirLib.EngineTypes.semv = _3;
4505 MenhirLib.EngineTypes.startp = _startpos__3_;
4506 MenhirLib.EngineTypes.endp = _endpos__3_;
4507 MenhirLib.EngineTypes.next = {
4508 MenhirLib.EngineTypes.semv = _2;
4509 MenhirLib.EngineTypes.startp = _startpos__2_;
4510 MenhirLib.EngineTypes.endp = _endpos__2_;
4511 MenhirLib.EngineTypes.next = {
4512 MenhirLib.EngineTypes.state = _menhir_s;
4513 MenhirLib.EngineTypes.semv = _1;
4514 MenhirLib.EngineTypes.startp = _startpos__1_;
4515 MenhirLib.EngineTypes.endp = _endpos__1_;
4516 MenhirLib.EngineTypes.next = _menhir_stack;
4517 };
4518 };
4519 } = _menhir_stack in
4520 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4521 let _2 : (
4522 # 144 "parser_cocci_menhir.mly"
4523 (Data.clt)
4524 # 4498 "parser_cocci_menhir.ml"
4525 ) = Obj.magic _2 in
4526 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4527 let _startpos = _startpos__1_ in
4528 let _endpos = _endpos__3_ in
4529 let _v : 'tv_arith_expr_bis =
4530 # 1586 "parser_cocci_menhir.mly"
4531 ( P.arith_op Ast.Plus _1 _2 _3 )
4532 # 4506 "parser_cocci_menhir.ml"
4533 in
4534 _menhir_env.MenhirLib.EngineTypes.stack <- {
4535 MenhirLib.EngineTypes.state = _menhir_s;
4536 MenhirLib.EngineTypes.semv = Obj.repr _v;
4537 MenhirLib.EngineTypes.startp = _startpos;
4538 MenhirLib.EngineTypes.endp = _endpos;
4539 MenhirLib.EngineTypes.next = _menhir_stack;
4540 });
4541 (fun _menhir_env ->
4542 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4543 let {
4544 MenhirLib.EngineTypes.semv = _3;
4545 MenhirLib.EngineTypes.startp = _startpos__3_;
4546 MenhirLib.EngineTypes.endp = _endpos__3_;
4547 MenhirLib.EngineTypes.next = {
4548 MenhirLib.EngineTypes.semv = _2;
4549 MenhirLib.EngineTypes.startp = _startpos__2_;
4550 MenhirLib.EngineTypes.endp = _endpos__2_;
4551 MenhirLib.EngineTypes.next = {
4552 MenhirLib.EngineTypes.state = _menhir_s;
4553 MenhirLib.EngineTypes.semv = _1;
4554 MenhirLib.EngineTypes.startp = _startpos__1_;
4555 MenhirLib.EngineTypes.endp = _endpos__1_;
4556 MenhirLib.EngineTypes.next = _menhir_stack;
4557 };
4558 };
4559 } = _menhir_stack in
4560 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4561 let _2 : (
4562 # 144 "parser_cocci_menhir.mly"
4563 (Data.clt)
4564 # 4538 "parser_cocci_menhir.ml"
4565 ) = Obj.magic _2 in
4566 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4567 let _startpos = _startpos__1_ in
4568 let _endpos = _endpos__3_ in
4569 let _v : 'tv_arith_expr_bis =
4570 # 1588 "parser_cocci_menhir.mly"
4571 ( P.arith_op Ast.Minus _1 _2 _3 )
4572 # 4546 "parser_cocci_menhir.ml"
4573 in
4574 _menhir_env.MenhirLib.EngineTypes.stack <- {
4575 MenhirLib.EngineTypes.state = _menhir_s;
4576 MenhirLib.EngineTypes.semv = Obj.repr _v;
4577 MenhirLib.EngineTypes.startp = _startpos;
4578 MenhirLib.EngineTypes.endp = _endpos;
4579 MenhirLib.EngineTypes.next = _menhir_stack;
4580 });
4581 (fun _menhir_env ->
4582 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4583 let {
4584 MenhirLib.EngineTypes.semv = _3;
4585 MenhirLib.EngineTypes.startp = _startpos__3_;
4586 MenhirLib.EngineTypes.endp = _endpos__3_;
4587 MenhirLib.EngineTypes.next = {
4588 MenhirLib.EngineTypes.semv = _2;
4589 MenhirLib.EngineTypes.startp = _startpos__2_;
4590 MenhirLib.EngineTypes.endp = _endpos__2_;
4591 MenhirLib.EngineTypes.next = {
4592 MenhirLib.EngineTypes.state = _menhir_s;
4593 MenhirLib.EngineTypes.semv = _1;
4594 MenhirLib.EngineTypes.startp = _startpos__1_;
4595 MenhirLib.EngineTypes.endp = _endpos__1_;
4596 MenhirLib.EngineTypes.next = _menhir_stack;
4597 };
4598 };
4599 } = _menhir_stack in
4600 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4601 let _2 : (
4602 # 142 "parser_cocci_menhir.mly"
4603 (Ast_cocci.arithOp * Data.clt)
4604 # 4578 "parser_cocci_menhir.ml"
4605 ) = Obj.magic _2 in
4606 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4607 let _startpos = _startpos__1_ in
4608 let _endpos = _endpos__3_ in
4609 let _v : 'tv_arith_expr_bis =
4610 # 1590 "parser_cocci_menhir.mly"
4611 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
4612 # 4586 "parser_cocci_menhir.ml"
4613 in
4614 _menhir_env.MenhirLib.EngineTypes.stack <- {
4615 MenhirLib.EngineTypes.state = _menhir_s;
4616 MenhirLib.EngineTypes.semv = Obj.repr _v;
4617 MenhirLib.EngineTypes.startp = _startpos;
4618 MenhirLib.EngineTypes.endp = _endpos;
4619 MenhirLib.EngineTypes.next = _menhir_stack;
4620 });
4621 (fun _menhir_env ->
4622 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4623 let {
4624 MenhirLib.EngineTypes.semv = _3;
4625 MenhirLib.EngineTypes.startp = _startpos__3_;
4626 MenhirLib.EngineTypes.endp = _endpos__3_;
4627 MenhirLib.EngineTypes.next = {
4628 MenhirLib.EngineTypes.semv = _2;
4629 MenhirLib.EngineTypes.startp = _startpos__2_;
4630 MenhirLib.EngineTypes.endp = _endpos__2_;
4631 MenhirLib.EngineTypes.next = {
4632 MenhirLib.EngineTypes.state = _menhir_s;
4633 MenhirLib.EngineTypes.semv = _1;
4634 MenhirLib.EngineTypes.startp = _startpos__1_;
4635 MenhirLib.EngineTypes.endp = _endpos__1_;
4636 MenhirLib.EngineTypes.next = _menhir_stack;
4637 };
4638 };
4639 } = _menhir_stack in
4640 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4641 let _2 : (
4642 # 142 "parser_cocci_menhir.mly"
4643 (Ast_cocci.arithOp * Data.clt)
4644 # 4618 "parser_cocci_menhir.ml"
4645 ) = Obj.magic _2 in
4646 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4647 let _startpos = _startpos__1_ in
4648 let _endpos = _endpos__3_ in
4649 let _v : 'tv_arith_expr_bis =
4650 # 1592 "parser_cocci_menhir.mly"
4651 ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
4652 # 4626 "parser_cocci_menhir.ml"
4653 in
4654 _menhir_env.MenhirLib.EngineTypes.stack <- {
4655 MenhirLib.EngineTypes.state = _menhir_s;
4656 MenhirLib.EngineTypes.semv = Obj.repr _v;
4657 MenhirLib.EngineTypes.startp = _startpos;
4658 MenhirLib.EngineTypes.endp = _endpos;
4659 MenhirLib.EngineTypes.next = _menhir_stack;
4660 });
4661 (fun _menhir_env ->
4662 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4663 let {
4664 MenhirLib.EngineTypes.semv = _3;
4665 MenhirLib.EngineTypes.startp = _startpos__3_;
4666 MenhirLib.EngineTypes.endp = _endpos__3_;
4667 MenhirLib.EngineTypes.next = {
4668 MenhirLib.EngineTypes.semv = _2;
4669 MenhirLib.EngineTypes.startp = _startpos__2_;
4670 MenhirLib.EngineTypes.endp = _endpos__2_;
4671 MenhirLib.EngineTypes.next = {
4672 MenhirLib.EngineTypes.state = _menhir_s;
4673 MenhirLib.EngineTypes.semv = _1;
4674 MenhirLib.EngineTypes.startp = _startpos__1_;
4675 MenhirLib.EngineTypes.endp = _endpos__1_;
4676 MenhirLib.EngineTypes.next = _menhir_stack;
4677 };
4678 };
4679 } = _menhir_stack in
4680 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4681 let _2 : (
4682 # 141 "parser_cocci_menhir.mly"
4683 (Ast_cocci.logicalOp * Data.clt)
4684 # 4658 "parser_cocci_menhir.ml"
4685 ) = Obj.magic _2 in
4686 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4687 let _startpos = _startpos__1_ in
4688 let _endpos = _endpos__3_ in
4689 let _v : 'tv_arith_expr_bis =
4690 # 1594 "parser_cocci_menhir.mly"
4691 ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
4692 # 4666 "parser_cocci_menhir.ml"
4693 in
4694 _menhir_env.MenhirLib.EngineTypes.stack <- {
4695 MenhirLib.EngineTypes.state = _menhir_s;
4696 MenhirLib.EngineTypes.semv = Obj.repr _v;
4697 MenhirLib.EngineTypes.startp = _startpos;
4698 MenhirLib.EngineTypes.endp = _endpos;
4699 MenhirLib.EngineTypes.next = _menhir_stack;
4700 });
4701 (fun _menhir_env ->
4702 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4703 let {
4704 MenhirLib.EngineTypes.semv = _3;
4705 MenhirLib.EngineTypes.startp = _startpos__3_;
4706 MenhirLib.EngineTypes.endp = _endpos__3_;
4707 MenhirLib.EngineTypes.next = {
4708 MenhirLib.EngineTypes.semv = _2;
4709 MenhirLib.EngineTypes.startp = _startpos__2_;
4710 MenhirLib.EngineTypes.endp = _endpos__2_;
4711 MenhirLib.EngineTypes.next = {
4712 MenhirLib.EngineTypes.state = _menhir_s;
4713 MenhirLib.EngineTypes.semv = _1;
4714 MenhirLib.EngineTypes.startp = _startpos__1_;
4715 MenhirLib.EngineTypes.endp = _endpos__1_;
4716 MenhirLib.EngineTypes.next = _menhir_stack;
4717 };
4718 };
4719 } = _menhir_stack in
4720 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4721 let _2 : (
4722 # 140 "parser_cocci_menhir.mly"
4723 (Data.clt)
4724 # 4698 "parser_cocci_menhir.ml"
4725 ) = Obj.magic _2 in
4726 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4727 let _startpos = _startpos__1_ in
4728 let _endpos = _endpos__3_ in
4729 let _v : 'tv_arith_expr_bis =
4730 # 1596 "parser_cocci_menhir.mly"
4731 ( P.logic_op Ast.Eq _1 _2 _3 )
4732 # 4706 "parser_cocci_menhir.ml"
4733 in
4734 _menhir_env.MenhirLib.EngineTypes.stack <- {
4735 MenhirLib.EngineTypes.state = _menhir_s;
4736 MenhirLib.EngineTypes.semv = Obj.repr _v;
4737 MenhirLib.EngineTypes.startp = _startpos;
4738 MenhirLib.EngineTypes.endp = _endpos;
4739 MenhirLib.EngineTypes.next = _menhir_stack;
4740 });
4741 (fun _menhir_env ->
4742 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4743 let {
4744 MenhirLib.EngineTypes.semv = _3;
4745 MenhirLib.EngineTypes.startp = _startpos__3_;
4746 MenhirLib.EngineTypes.endp = _endpos__3_;
4747 MenhirLib.EngineTypes.next = {
4748 MenhirLib.EngineTypes.semv = _2;
4749 MenhirLib.EngineTypes.startp = _startpos__2_;
4750 MenhirLib.EngineTypes.endp = _endpos__2_;
4751 MenhirLib.EngineTypes.next = {
4752 MenhirLib.EngineTypes.state = _menhir_s;
4753 MenhirLib.EngineTypes.semv = _1;
4754 MenhirLib.EngineTypes.startp = _startpos__1_;
4755 MenhirLib.EngineTypes.endp = _endpos__1_;
4756 MenhirLib.EngineTypes.next = _menhir_stack;
4757 };
4758 };
4759 } = _menhir_stack in
4760 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4761 let _2 : (
4762 # 140 "parser_cocci_menhir.mly"
4763 (Data.clt)
4764 # 4738 "parser_cocci_menhir.ml"
4765 ) = Obj.magic _2 in
4766 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4767 let _startpos = _startpos__1_ in
4768 let _endpos = _endpos__3_ in
4769 let _v : 'tv_arith_expr_bis =
4770 # 1598 "parser_cocci_menhir.mly"
4771 ( P.logic_op Ast.NotEq _1 _2 _3 )
4772 # 4746 "parser_cocci_menhir.ml"
4773 in
4774 _menhir_env.MenhirLib.EngineTypes.stack <- {
4775 MenhirLib.EngineTypes.state = _menhir_s;
4776 MenhirLib.EngineTypes.semv = Obj.repr _v;
4777 MenhirLib.EngineTypes.startp = _startpos;
4778 MenhirLib.EngineTypes.endp = _endpos;
4779 MenhirLib.EngineTypes.next = _menhir_stack;
4780 });
4781 (fun _menhir_env ->
4782 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4783 let {
4784 MenhirLib.EngineTypes.semv = _3;
4785 MenhirLib.EngineTypes.startp = _startpos__3_;
4786 MenhirLib.EngineTypes.endp = _endpos__3_;
4787 MenhirLib.EngineTypes.next = {
4788 MenhirLib.EngineTypes.semv = _2;
4789 MenhirLib.EngineTypes.startp = _startpos__2_;
4790 MenhirLib.EngineTypes.endp = _endpos__2_;
4791 MenhirLib.EngineTypes.next = {
4792 MenhirLib.EngineTypes.state = _menhir_s;
4793 MenhirLib.EngineTypes.semv = _1;
4794 MenhirLib.EngineTypes.startp = _startpos__1_;
4795 MenhirLib.EngineTypes.endp = _endpos__1_;
4796 MenhirLib.EngineTypes.next = _menhir_stack;
4797 };
4798 };
4799 } = _menhir_stack in
4800 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4801 let _2 : (
4802 # 139 "parser_cocci_menhir.mly"
4803 (Data.clt)
4804 # 4778 "parser_cocci_menhir.ml"
4805 ) = Obj.magic _2 in
4806 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4807 let _startpos = _startpos__1_ in
4808 let _endpos = _endpos__3_ in
4809 let _v : 'tv_arith_expr_bis =
4810 # 1600 "parser_cocci_menhir.mly"
4811 ( P.arith_op Ast.And _1 _2 _3 )
4812 # 4786 "parser_cocci_menhir.ml"
4813 in
4814 _menhir_env.MenhirLib.EngineTypes.stack <- {
4815 MenhirLib.EngineTypes.state = _menhir_s;
4816 MenhirLib.EngineTypes.semv = Obj.repr _v;
4817 MenhirLib.EngineTypes.startp = _startpos;
4818 MenhirLib.EngineTypes.endp = _endpos;
4819 MenhirLib.EngineTypes.next = _menhir_stack;
4820 });
4821 (fun _menhir_env ->
4822 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4823 let {
4824 MenhirLib.EngineTypes.semv = _3;
4825 MenhirLib.EngineTypes.startp = _startpos__3_;
4826 MenhirLib.EngineTypes.endp = _endpos__3_;
4827 MenhirLib.EngineTypes.next = {
4828 MenhirLib.EngineTypes.semv = _2;
4829 MenhirLib.EngineTypes.startp = _startpos__2_;
4830 MenhirLib.EngineTypes.endp = _endpos__2_;
4831 MenhirLib.EngineTypes.next = {
4832 MenhirLib.EngineTypes.state = _menhir_s;
4833 MenhirLib.EngineTypes.semv = _1;
4834 MenhirLib.EngineTypes.startp = _startpos__1_;
4835 MenhirLib.EngineTypes.endp = _endpos__1_;
4836 MenhirLib.EngineTypes.next = _menhir_stack;
4837 };
4838 };
4839 } = _menhir_stack in
4840 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4841 let _2 : (
4842 # 137 "parser_cocci_menhir.mly"
4843 (Data.clt)
4844 # 4818 "parser_cocci_menhir.ml"
4845 ) = Obj.magic _2 in
4846 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4847 let _startpos = _startpos__1_ in
4848 let _endpos = _endpos__3_ in
4849 let _v : 'tv_arith_expr_bis =
4850 # 1602 "parser_cocci_menhir.mly"
4851 ( P.arith_op Ast.Or _1 _2 _3 )
4852 # 4826 "parser_cocci_menhir.ml"
4853 in
4854 _menhir_env.MenhirLib.EngineTypes.stack <- {
4855 MenhirLib.EngineTypes.state = _menhir_s;
4856 MenhirLib.EngineTypes.semv = Obj.repr _v;
4857 MenhirLib.EngineTypes.startp = _startpos;
4858 MenhirLib.EngineTypes.endp = _endpos;
4859 MenhirLib.EngineTypes.next = _menhir_stack;
4860 });
4861 (fun _menhir_env ->
4862 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4863 let {
4864 MenhirLib.EngineTypes.semv = _3;
4865 MenhirLib.EngineTypes.startp = _startpos__3_;
4866 MenhirLib.EngineTypes.endp = _endpos__3_;
4867 MenhirLib.EngineTypes.next = {
4868 MenhirLib.EngineTypes.semv = _2;
4869 MenhirLib.EngineTypes.startp = _startpos__2_;
4870 MenhirLib.EngineTypes.endp = _endpos__2_;
4871 MenhirLib.EngineTypes.next = {
4872 MenhirLib.EngineTypes.state = _menhir_s;
4873 MenhirLib.EngineTypes.semv = _1;
4874 MenhirLib.EngineTypes.startp = _startpos__1_;
4875 MenhirLib.EngineTypes.endp = _endpos__1_;
4876 MenhirLib.EngineTypes.next = _menhir_stack;
4877 };
4878 };
4879 } = _menhir_stack in
4880 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4881 let _2 : (
4882 # 138 "parser_cocci_menhir.mly"
4883 (Data.clt)
4884 # 4858 "parser_cocci_menhir.ml"
4885 ) = Obj.magic _2 in
4886 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4887 let _startpos = _startpos__1_ in
4888 let _endpos = _endpos__3_ in
4889 let _v : 'tv_arith_expr_bis =
4890 # 1604 "parser_cocci_menhir.mly"
4891 ( P.arith_op Ast.Xor _1 _2 _3 )
4892 # 4866 "parser_cocci_menhir.ml"
4893 in
4894 _menhir_env.MenhirLib.EngineTypes.stack <- {
4895 MenhirLib.EngineTypes.state = _menhir_s;
4896 MenhirLib.EngineTypes.semv = Obj.repr _v;
4897 MenhirLib.EngineTypes.startp = _startpos;
4898 MenhirLib.EngineTypes.endp = _endpos;
4899 MenhirLib.EngineTypes.next = _menhir_stack;
4900 });
4901 (fun _menhir_env ->
4902 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4903 let {
4904 MenhirLib.EngineTypes.semv = _3;
4905 MenhirLib.EngineTypes.startp = _startpos__3_;
4906 MenhirLib.EngineTypes.endp = _endpos__3_;
4907 MenhirLib.EngineTypes.next = {
4908 MenhirLib.EngineTypes.semv = _2;
4909 MenhirLib.EngineTypes.startp = _startpos__2_;
4910 MenhirLib.EngineTypes.endp = _endpos__2_;
4911 MenhirLib.EngineTypes.next = {
4912 MenhirLib.EngineTypes.state = _menhir_s;
4913 MenhirLib.EngineTypes.semv = _1;
4914 MenhirLib.EngineTypes.startp = _startpos__1_;
4915 MenhirLib.EngineTypes.endp = _endpos__1_;
4916 MenhirLib.EngineTypes.next = _menhir_stack;
4917 };
4918 };
4919 } = _menhir_stack in
4920 let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
4921 let _2 : (
4922 # 136 "parser_cocci_menhir.mly"
4923 (Data.clt)
4924 # 4898 "parser_cocci_menhir.ml"
4925 ) = Obj.magic _2 in
4926 let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
4927 let _startpos = _startpos__1_ in
4928 let _endpos = _endpos__3_ in
4929 let _v : 'tv_arith_expr_bis =
4930 # 1606 "parser_cocci_menhir.mly"
4931 ( P.logic_op Ast.AndLog _1 _2 _3 )
4932 # 4906 "parser_cocci_menhir.ml"
4933 in
4934 _menhir_env.MenhirLib.EngineTypes.stack <- {
4935 MenhirLib.EngineTypes.state = _menhir_s;
4936 MenhirLib.EngineTypes.semv = Obj.repr _v;
4937 MenhirLib.EngineTypes.startp = _startpos;
4938 MenhirLib.EngineTypes.endp = _endpos;
4939 MenhirLib.EngineTypes.next = _menhir_stack;
4940 });
4941 (fun _menhir_env ->
4942 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4943 let {
4944 MenhirLib.EngineTypes.state = _menhir_s;
4945 MenhirLib.EngineTypes.startp = _startpos__1_;
4946 MenhirLib.EngineTypes.endp = _endpos__1_;
4947 MenhirLib.EngineTypes.next = _menhir_stack;
4948 } = _menhir_stack in
4949 let _startpos = _startpos__1_ in
4950 let _endpos = _endpos__1_ in
4951 let _v : 'tv_arity =
4952 # 617 "parser_cocci_menhir.mly"
4953 ( Ast.UNIQUE )
4954 # 4928 "parser_cocci_menhir.ml"
4955 in
4956 _menhir_env.MenhirLib.EngineTypes.stack <- {
4957 MenhirLib.EngineTypes.state = _menhir_s;
4958 MenhirLib.EngineTypes.semv = Obj.repr _v;
4959 MenhirLib.EngineTypes.startp = _startpos;
4960 MenhirLib.EngineTypes.endp = _endpos;
4961 MenhirLib.EngineTypes.next = _menhir_stack;
4962 });
4963 (fun _menhir_env ->
4964 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4965 let {
4966 MenhirLib.EngineTypes.state = _menhir_s;
4967 MenhirLib.EngineTypes.startp = _startpos__1_;
4968 MenhirLib.EngineTypes.endp = _endpos__1_;
4969 MenhirLib.EngineTypes.next = _menhir_stack;
4970 } = _menhir_stack in
4971 let _startpos = _startpos__1_ in
4972 let _endpos = _endpos__1_ in
4973 let _v : 'tv_arity =
4974 # 618 "parser_cocci_menhir.mly"
4975 ( Ast.OPT )
4976 # 4950 "parser_cocci_menhir.ml"
4977 in
4978 _menhir_env.MenhirLib.EngineTypes.stack <- {
4979 MenhirLib.EngineTypes.state = _menhir_s;
4980 MenhirLib.EngineTypes.semv = Obj.repr _v;
4981 MenhirLib.EngineTypes.startp = _startpos;
4982 MenhirLib.EngineTypes.endp = _endpos;
4983 MenhirLib.EngineTypes.next = _menhir_stack;
4984 });
4985 (fun _menhir_env ->
4986 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
4987 let {
4988 MenhirLib.EngineTypes.state = _menhir_s;
4989 MenhirLib.EngineTypes.startp = _startpos__1_;
4990 MenhirLib.EngineTypes.endp = _endpos__1_;
4991 MenhirLib.EngineTypes.next = _menhir_stack;
4992 } = _menhir_stack in
4993 let _startpos = _startpos__1_ in
4994 let _endpos = _endpos__1_ in
4995 let _v : 'tv_arity =
4996 # 619 "parser_cocci_menhir.mly"
4997 ( Ast.MULTI )
4998 # 4972 "parser_cocci_menhir.ml"
4999 in
5000 _menhir_env.MenhirLib.EngineTypes.stack <- {
5001 MenhirLib.EngineTypes.state = _menhir_s;
5002 MenhirLib.EngineTypes.semv = Obj.repr _v;
5003 MenhirLib.EngineTypes.startp = _startpos;
5004 MenhirLib.EngineTypes.endp = _endpos;
5005 MenhirLib.EngineTypes.next = _menhir_stack;
5006 });
5007 (fun _menhir_env ->
5008 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5009 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
5010 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
5011 let _endpos = _startpos in
5012 let _v : 'tv_arity =
5013 # 620 "parser_cocci_menhir.mly"
5014 ( Ast.NONE )
5015 # 4989 "parser_cocci_menhir.ml"
5016 in
5017 _menhir_env.MenhirLib.EngineTypes.stack <- {
5018 MenhirLib.EngineTypes.state = _menhir_s;
5019 MenhirLib.EngineTypes.semv = Obj.repr _v;
5020 MenhirLib.EngineTypes.startp = _startpos;
5021 MenhirLib.EngineTypes.endp = _endpos;
5022 MenhirLib.EngineTypes.next = _menhir_stack;
5023 });
5024 (fun _menhir_env ->
5025 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5026 let {
5027 MenhirLib.EngineTypes.semv = r;
5028 MenhirLib.EngineTypes.startp = _startpos_r_;
5029 MenhirLib.EngineTypes.endp = _endpos_r_;
5030 MenhirLib.EngineTypes.next = {
5031 MenhirLib.EngineTypes.semv = i;
5032 MenhirLib.EngineTypes.startp = _startpos_i_;
5033 MenhirLib.EngineTypes.endp = _endpos_i_;
5034 MenhirLib.EngineTypes.next = {
5035 MenhirLib.EngineTypes.state = _menhir_s;
5036 MenhirLib.EngineTypes.semv = l;
5037 MenhirLib.EngineTypes.startp = _startpos_l_;
5038 MenhirLib.EngineTypes.endp = _endpos_l_;
5039 MenhirLib.EngineTypes.next = _menhir_stack;
5040 };
5041 };
5042 } = _menhir_stack in
5043 let r : (
5044 # 148 "parser_cocci_menhir.mly"
5045 (Data.clt)
5046 # 5020 "parser_cocci_menhir.ml"
5047 ) = Obj.magic r in
5048 let i : 'tv_option_eexpr_ = Obj.magic i in
5049 let l : (
5050 # 148 "parser_cocci_menhir.mly"
5051 (Data.clt)
5052 # 5026 "parser_cocci_menhir.ml"
5053 ) = Obj.magic l in
5054 let _startpos = _startpos_l_ in
5055 let _endpos = _endpos_r_ in
5056 let _v : 'tv_array_dec =
5057 # 1336 "parser_cocci_menhir.mly"
5058 ( (l,i,r) )
5059 # 5033 "parser_cocci_menhir.ml"
5060 in
5061 _menhir_env.MenhirLib.EngineTypes.stack <- {
5062 MenhirLib.EngineTypes.state = _menhir_s;
5063 MenhirLib.EngineTypes.semv = Obj.repr _v;
5064 MenhirLib.EngineTypes.startp = _startpos;
5065 MenhirLib.EngineTypes.endp = _endpos;
5066 MenhirLib.EngineTypes.next = _menhir_stack;
5067 });
5068 (fun _menhir_env ->
5069 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5070 let {
5071 MenhirLib.EngineTypes.state = _menhir_s;
5072 MenhirLib.EngineTypes.semv = _1;
5073 MenhirLib.EngineTypes.startp = _startpos__1_;
5074 MenhirLib.EngineTypes.endp = _endpos__1_;
5075 MenhirLib.EngineTypes.next = _menhir_stack;
5076 } = _menhir_stack in
5077 let _1 : 'tv_cond_expr_eexpr_dot_expressions_ = Obj.magic _1 in
5078 let _startpos = _startpos__1_ in
5079 let _endpos = _endpos__1_ in
5080 let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
5081 # 1518 "parser_cocci_menhir.mly"
5082 ( _1 )
5083 # 5057 "parser_cocci_menhir.ml"
5084 in
5085 _menhir_env.MenhirLib.EngineTypes.stack <- {
5086 MenhirLib.EngineTypes.state = _menhir_s;
5087 MenhirLib.EngineTypes.semv = Obj.repr _v;
5088 MenhirLib.EngineTypes.startp = _startpos;
5089 MenhirLib.EngineTypes.endp = _endpos;
5090 MenhirLib.EngineTypes.next = _menhir_stack;
5091 });
5092 (fun _menhir_env ->
5093 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5094 let {
5095 MenhirLib.EngineTypes.semv = _3;
5096 MenhirLib.EngineTypes.startp = _startpos__3_;
5097 MenhirLib.EngineTypes.endp = _endpos__3_;
5098 MenhirLib.EngineTypes.next = {
5099 MenhirLib.EngineTypes.semv = _2;
5100 MenhirLib.EngineTypes.startp = _startpos__2_;
5101 MenhirLib.EngineTypes.endp = _endpos__2_;
5102 MenhirLib.EngineTypes.next = {
5103 MenhirLib.EngineTypes.state = _menhir_s;
5104 MenhirLib.EngineTypes.semv = _1;
5105 MenhirLib.EngineTypes.startp = _startpos__1_;
5106 MenhirLib.EngineTypes.endp = _endpos__1_;
5107 MenhirLib.EngineTypes.next = _menhir_stack;
5108 };
5109 };
5110 } = _menhir_stack in
5111 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
5112 let _2 : (
5113 # 154 "parser_cocci_menhir.mly"
5114 (Ast_cocci.assignOp * Data.clt)
5115 # 5089 "parser_cocci_menhir.ml"
5116 ) = Obj.magic _2 in
5117 let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
5118 let _startpos = _startpos__1_ in
5119 let _endpos = _endpos__3_ in
5120 let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
5121 # 1520 "parser_cocci_menhir.mly"
5122 ( let (op,clt) = _2 in
5123 Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
5124 Ast0.set_arg_exp _3,false)) )
5125 # 5099 "parser_cocci_menhir.ml"
5126 in
5127 _menhir_env.MenhirLib.EngineTypes.stack <- {
5128 MenhirLib.EngineTypes.state = _menhir_s;
5129 MenhirLib.EngineTypes.semv = Obj.repr _v;
5130 MenhirLib.EngineTypes.startp = _startpos;
5131 MenhirLib.EngineTypes.endp = _endpos;
5132 MenhirLib.EngineTypes.next = _menhir_stack;
5133 });
5134 (fun _menhir_env ->
5135 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5136 let {
5137 MenhirLib.EngineTypes.semv = _3;
5138 MenhirLib.EngineTypes.startp = _startpos__3_;
5139 MenhirLib.EngineTypes.endp = _endpos__3_;
5140 MenhirLib.EngineTypes.next = {
5141 MenhirLib.EngineTypes.semv = _2;
5142 MenhirLib.EngineTypes.startp = _startpos__2_;
5143 MenhirLib.EngineTypes.endp = _endpos__2_;
5144 MenhirLib.EngineTypes.next = {
5145 MenhirLib.EngineTypes.state = _menhir_s;
5146 MenhirLib.EngineTypes.semv = _1;
5147 MenhirLib.EngineTypes.startp = _startpos__1_;
5148 MenhirLib.EngineTypes.endp = _endpos__1_;
5149 MenhirLib.EngineTypes.next = _menhir_stack;
5150 };
5151 };
5152 } = _menhir_stack in
5153 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
5154 let _2 : (
5155 # 153 "parser_cocci_menhir.mly"
5156 (Data.clt)
5157 # 5131 "parser_cocci_menhir.ml"
5158 ) = Obj.magic _2 in
5159 let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
5160 let _startpos = _startpos__1_ in
5161 let _endpos = _endpos__3_ in
5162 let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
5163 # 1524 "parser_cocci_menhir.mly"
5164 ( Ast0.wrap
5165 (Ast0.Assignment
5166 (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
5167 # 5141 "parser_cocci_menhir.ml"
5168 in
5169 _menhir_env.MenhirLib.EngineTypes.stack <- {
5170 MenhirLib.EngineTypes.state = _menhir_s;
5171 MenhirLib.EngineTypes.semv = Obj.repr _v;
5172 MenhirLib.EngineTypes.startp = _startpos;
5173 MenhirLib.EngineTypes.endp = _endpos;
5174 MenhirLib.EngineTypes.next = _menhir_stack;
5175 });
5176 (fun _menhir_env ->
5177 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5178 let {
5179 MenhirLib.EngineTypes.state = _menhir_s;
5180 MenhirLib.EngineTypes.semv = _1;
5181 MenhirLib.EngineTypes.startp = _startpos__1_;
5182 MenhirLib.EngineTypes.endp = _endpos__1_;
5183 MenhirLib.EngineTypes.next = _menhir_stack;
5184 } = _menhir_stack in
5185 let _1 : 'tv_cond_expr_eexpr_nest_expressions_ = Obj.magic _1 in
5186 let _startpos = _startpos__1_ in
5187 let _endpos = _endpos__1_ in
5188 let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
5189 # 1518 "parser_cocci_menhir.mly"
5190 ( _1 )
5191 # 5165 "parser_cocci_menhir.ml"
5192 in
5193 _menhir_env.MenhirLib.EngineTypes.stack <- {
5194 MenhirLib.EngineTypes.state = _menhir_s;
5195 MenhirLib.EngineTypes.semv = Obj.repr _v;
5196 MenhirLib.EngineTypes.startp = _startpos;
5197 MenhirLib.EngineTypes.endp = _endpos;
5198 MenhirLib.EngineTypes.next = _menhir_stack;
5199 });
5200 (fun _menhir_env ->
5201 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5202 let {
5203 MenhirLib.EngineTypes.semv = _3;
5204 MenhirLib.EngineTypes.startp = _startpos__3_;
5205 MenhirLib.EngineTypes.endp = _endpos__3_;
5206 MenhirLib.EngineTypes.next = {
5207 MenhirLib.EngineTypes.semv = _2;
5208 MenhirLib.EngineTypes.startp = _startpos__2_;
5209 MenhirLib.EngineTypes.endp = _endpos__2_;
5210 MenhirLib.EngineTypes.next = {
5211 MenhirLib.EngineTypes.state = _menhir_s;
5212 MenhirLib.EngineTypes.semv = _1;
5213 MenhirLib.EngineTypes.startp = _startpos__1_;
5214 MenhirLib.EngineTypes.endp = _endpos__1_;
5215 MenhirLib.EngineTypes.next = _menhir_stack;
5216 };
5217 };
5218 } = _menhir_stack in
5219 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
5220 let _2 : (
5221 # 154 "parser_cocci_menhir.mly"
5222 (Ast_cocci.assignOp * Data.clt)
5223 # 5197 "parser_cocci_menhir.ml"
5224 ) = Obj.magic _2 in
5225 let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
5226 let _startpos = _startpos__1_ in
5227 let _endpos = _endpos__3_ in
5228 let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
5229 # 1520 "parser_cocci_menhir.mly"
5230 ( let (op,clt) = _2 in
5231 Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
5232 Ast0.set_arg_exp _3,false)) )
5233 # 5207 "parser_cocci_menhir.ml"
5234 in
5235 _menhir_env.MenhirLib.EngineTypes.stack <- {
5236 MenhirLib.EngineTypes.state = _menhir_s;
5237 MenhirLib.EngineTypes.semv = Obj.repr _v;
5238 MenhirLib.EngineTypes.startp = _startpos;
5239 MenhirLib.EngineTypes.endp = _endpos;
5240 MenhirLib.EngineTypes.next = _menhir_stack;
5241 });
5242 (fun _menhir_env ->
5243 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5244 let {
5245 MenhirLib.EngineTypes.semv = _3;
5246 MenhirLib.EngineTypes.startp = _startpos__3_;
5247 MenhirLib.EngineTypes.endp = _endpos__3_;
5248 MenhirLib.EngineTypes.next = {
5249 MenhirLib.EngineTypes.semv = _2;
5250 MenhirLib.EngineTypes.startp = _startpos__2_;
5251 MenhirLib.EngineTypes.endp = _endpos__2_;
5252 MenhirLib.EngineTypes.next = {
5253 MenhirLib.EngineTypes.state = _menhir_s;
5254 MenhirLib.EngineTypes.semv = _1;
5255 MenhirLib.EngineTypes.startp = _startpos__1_;
5256 MenhirLib.EngineTypes.endp = _endpos__1_;
5257 MenhirLib.EngineTypes.next = _menhir_stack;
5258 };
5259 };
5260 } = _menhir_stack in
5261 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
5262 let _2 : (
5263 # 153 "parser_cocci_menhir.mly"
5264 (Data.clt)
5265 # 5239 "parser_cocci_menhir.ml"
5266 ) = Obj.magic _2 in
5267 let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
5268 let _startpos = _startpos__1_ in
5269 let _endpos = _endpos__3_ in
5270 let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
5271 # 1524 "parser_cocci_menhir.mly"
5272 ( Ast0.wrap
5273 (Ast0.Assignment
5274 (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
5275 # 5249 "parser_cocci_menhir.ml"
5276 in
5277 _menhir_env.MenhirLib.EngineTypes.stack <- {
5278 MenhirLib.EngineTypes.state = _menhir_s;
5279 MenhirLib.EngineTypes.semv = Obj.repr _v;
5280 MenhirLib.EngineTypes.startp = _startpos;
5281 MenhirLib.EngineTypes.endp = _endpos;
5282 MenhirLib.EngineTypes.next = _menhir_stack;
5283 });
5284 (fun _menhir_env ->
5285 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5286 let {
5287 MenhirLib.EngineTypes.state = _menhir_s;
5288 MenhirLib.EngineTypes.semv = _1;
5289 MenhirLib.EngineTypes.startp = _startpos__1_;
5290 MenhirLib.EngineTypes.endp = _endpos__1_;
5291 MenhirLib.EngineTypes.next = _menhir_stack;
5292 } = _menhir_stack in
5293 let _1 : 'tv_cond_expr_expr_invalid_ = Obj.magic _1 in
5294 let _startpos = _startpos__1_ in
5295 let _endpos = _endpos__1_ in
5296 let _v : 'tv_assign_expr_expr_invalid_ =
5297 # 1518 "parser_cocci_menhir.mly"
5298 ( _1 )
5299 # 5273 "parser_cocci_menhir.ml"
5300 in
5301 _menhir_env.MenhirLib.EngineTypes.stack <- {
5302 MenhirLib.EngineTypes.state = _menhir_s;
5303 MenhirLib.EngineTypes.semv = Obj.repr _v;
5304 MenhirLib.EngineTypes.startp = _startpos;
5305 MenhirLib.EngineTypes.endp = _endpos;
5306 MenhirLib.EngineTypes.next = _menhir_stack;
5307 });
5308 (fun _menhir_env ->
5309 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5310 let {
5311 MenhirLib.EngineTypes.semv = _3;
5312 MenhirLib.EngineTypes.startp = _startpos__3_;
5313 MenhirLib.EngineTypes.endp = _endpos__3_;
5314 MenhirLib.EngineTypes.next = {
5315 MenhirLib.EngineTypes.semv = _2;
5316 MenhirLib.EngineTypes.startp = _startpos__2_;
5317 MenhirLib.EngineTypes.endp = _endpos__2_;
5318 MenhirLib.EngineTypes.next = {
5319 MenhirLib.EngineTypes.state = _menhir_s;
5320 MenhirLib.EngineTypes.semv = _1;
5321 MenhirLib.EngineTypes.startp = _startpos__1_;
5322 MenhirLib.EngineTypes.endp = _endpos__1_;
5323 MenhirLib.EngineTypes.next = _menhir_stack;
5324 };
5325 };
5326 } = _menhir_stack in
5327 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
5328 let _2 : (
5329 # 154 "parser_cocci_menhir.mly"
5330 (Ast_cocci.assignOp * Data.clt)
5331 # 5305 "parser_cocci_menhir.ml"
5332 ) = Obj.magic _2 in
5333 let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
5334 let _startpos = _startpos__1_ in
5335 let _endpos = _endpos__3_ in
5336 let _v : 'tv_assign_expr_expr_invalid_ =
5337 # 1520 "parser_cocci_menhir.mly"
5338 ( let (op,clt) = _2 in
5339 Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
5340 Ast0.set_arg_exp _3,false)) )
5341 # 5315 "parser_cocci_menhir.ml"
5342 in
5343 _menhir_env.MenhirLib.EngineTypes.stack <- {
5344 MenhirLib.EngineTypes.state = _menhir_s;
5345 MenhirLib.EngineTypes.semv = Obj.repr _v;
5346 MenhirLib.EngineTypes.startp = _startpos;
5347 MenhirLib.EngineTypes.endp = _endpos;
5348 MenhirLib.EngineTypes.next = _menhir_stack;
5349 });
5350 (fun _menhir_env ->
5351 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5352 let {
5353 MenhirLib.EngineTypes.semv = _3;
5354 MenhirLib.EngineTypes.startp = _startpos__3_;
5355 MenhirLib.EngineTypes.endp = _endpos__3_;
5356 MenhirLib.EngineTypes.next = {
5357 MenhirLib.EngineTypes.semv = _2;
5358 MenhirLib.EngineTypes.startp = _startpos__2_;
5359 MenhirLib.EngineTypes.endp = _endpos__2_;
5360 MenhirLib.EngineTypes.next = {
5361 MenhirLib.EngineTypes.state = _menhir_s;
5362 MenhirLib.EngineTypes.semv = _1;
5363 MenhirLib.EngineTypes.startp = _startpos__1_;
5364 MenhirLib.EngineTypes.endp = _endpos__1_;
5365 MenhirLib.EngineTypes.next = _menhir_stack;
5366 };
5367 };
5368 } = _menhir_stack in
5369 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
5370 let _2 : (
5371 # 153 "parser_cocci_menhir.mly"
5372 (Data.clt)
5373 # 5347 "parser_cocci_menhir.ml"
5374 ) = Obj.magic _2 in
5375 let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
5376 let _startpos = _startpos__1_ in
5377 let _endpos = _endpos__3_ in
5378 let _v : 'tv_assign_expr_expr_invalid_ =
5379 # 1524 "parser_cocci_menhir.mly"
5380 ( Ast0.wrap
5381 (Ast0.Assignment
5382 (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
5383 # 5357 "parser_cocci_menhir.ml"
5384 in
5385 _menhir_env.MenhirLib.EngineTypes.stack <- {
5386 MenhirLib.EngineTypes.state = _menhir_s;
5387 MenhirLib.EngineTypes.semv = Obj.repr _v;
5388 MenhirLib.EngineTypes.startp = _startpos;
5389 MenhirLib.EngineTypes.endp = _endpos;
5390 MenhirLib.EngineTypes.next = _menhir_stack;
5391 });
5392 (fun _menhir_env ->
5393 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5394 let {
5395 MenhirLib.EngineTypes.state = _menhir_s;
5396 MenhirLib.EngineTypes.semv = _1;
5397 MenhirLib.EngineTypes.startp = _startpos__1_;
5398 MenhirLib.EngineTypes.endp = _endpos__1_;
5399 MenhirLib.EngineTypes.next = _menhir_stack;
5400 } = _menhir_stack in
5401 let _1 : 'tv_cond_expr_eexpr_dot_expressions_ = Obj.magic _1 in
5402 let _startpos = _startpos__1_ in
5403 let _endpos = _endpos__1_ in
5404 let _v : 'tv_assign_expr_bis =
5405 # 1529 "parser_cocci_menhir.mly"
5406 ( _1 )
5407 # 5381 "parser_cocci_menhir.ml"
5408 in
5409 _menhir_env.MenhirLib.EngineTypes.stack <- {
5410 MenhirLib.EngineTypes.state = _menhir_s;
5411 MenhirLib.EngineTypes.semv = Obj.repr _v;
5412 MenhirLib.EngineTypes.startp = _startpos;
5413 MenhirLib.EngineTypes.endp = _endpos;
5414 MenhirLib.EngineTypes.next = _menhir_stack;
5415 });
5416 (fun _menhir_env ->
5417 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5418 let {
5419 MenhirLib.EngineTypes.semv = _3;
5420 MenhirLib.EngineTypes.startp = _startpos__3_;
5421 MenhirLib.EngineTypes.endp = _endpos__3_;
5422 MenhirLib.EngineTypes.next = {
5423 MenhirLib.EngineTypes.semv = _2;
5424 MenhirLib.EngineTypes.startp = _startpos__2_;
5425 MenhirLib.EngineTypes.endp = _endpos__2_;
5426 MenhirLib.EngineTypes.next = {
5427 MenhirLib.EngineTypes.state = _menhir_s;
5428 MenhirLib.EngineTypes.semv = _1;
5429 MenhirLib.EngineTypes.startp = _startpos__1_;
5430 MenhirLib.EngineTypes.endp = _endpos__1_;
5431 MenhirLib.EngineTypes.next = _menhir_stack;
5432 };
5433 };
5434 } = _menhir_stack in
5435 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
5436 let _2 : (
5437 # 154 "parser_cocci_menhir.mly"
5438 (Ast_cocci.assignOp * Data.clt)
5439 # 5413 "parser_cocci_menhir.ml"
5440 ) = Obj.magic _2 in
5441 let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
5442 let _startpos = _startpos__1_ in
5443 let _endpos = _endpos__3_ in
5444 let _v : 'tv_assign_expr_bis =
5445 # 1531 "parser_cocci_menhir.mly"
5446 ( let (op,clt) = _2 in
5447 Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
5448 Ast0.set_arg_exp _3,false)) )
5449 # 5423 "parser_cocci_menhir.ml"
5450 in
5451 _menhir_env.MenhirLib.EngineTypes.stack <- {
5452 MenhirLib.EngineTypes.state = _menhir_s;
5453 MenhirLib.EngineTypes.semv = Obj.repr _v;
5454 MenhirLib.EngineTypes.startp = _startpos;
5455 MenhirLib.EngineTypes.endp = _endpos;
5456 MenhirLib.EngineTypes.next = _menhir_stack;
5457 });
5458 (fun _menhir_env ->
5459 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5460 let {
5461 MenhirLib.EngineTypes.semv = _3;
5462 MenhirLib.EngineTypes.startp = _startpos__3_;
5463 MenhirLib.EngineTypes.endp = _endpos__3_;
5464 MenhirLib.EngineTypes.next = {
5465 MenhirLib.EngineTypes.semv = _2;
5466 MenhirLib.EngineTypes.startp = _startpos__2_;
5467 MenhirLib.EngineTypes.endp = _endpos__2_;
5468 MenhirLib.EngineTypes.next = {
5469 MenhirLib.EngineTypes.state = _menhir_s;
5470 MenhirLib.EngineTypes.semv = _1;
5471 MenhirLib.EngineTypes.startp = _startpos__1_;
5472 MenhirLib.EngineTypes.endp = _endpos__1_;
5473 MenhirLib.EngineTypes.next = _menhir_stack;
5474 };
5475 };
5476 } = _menhir_stack in
5477 let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
5478 let _2 : (
5479 # 153 "parser_cocci_menhir.mly"
5480 (Data.clt)
5481 # 5455 "parser_cocci_menhir.ml"
5482 ) = Obj.magic _2 in
5483 let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
5484 let _startpos = _startpos__1_ in
5485 let _endpos = _endpos__3_ in
5486 let _v : 'tv_assign_expr_bis =
5487 # 1535 "parser_cocci_menhir.mly"
5488 ( Ast0.wrap
5489 (Ast0.Assignment
5490 (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
5491 # 5465 "parser_cocci_menhir.ml"
5492 in
5493 _menhir_env.MenhirLib.EngineTypes.stack <- {
5494 MenhirLib.EngineTypes.state = _menhir_s;
5495 MenhirLib.EngineTypes.semv = Obj.repr _v;
5496 MenhirLib.EngineTypes.startp = _startpos;
5497 MenhirLib.EngineTypes.endp = _endpos;
5498 MenhirLib.EngineTypes.next = _menhir_stack;
5499 });
5500 (fun _menhir_env ->
5501 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5502 let {
5503 MenhirLib.EngineTypes.state = _menhir_s;
5504 MenhirLib.EngineTypes.semv = _1;
5505 MenhirLib.EngineTypes.startp = _startpos__1_;
5506 MenhirLib.EngineTypes.endp = _endpos__1_;
5507 MenhirLib.EngineTypes.next = _menhir_stack;
5508 } = _menhir_stack in
5509 let _1 : 'tv_assign_expr_eexpr_dot_expressions_ = Obj.magic _1 in
5510 let _startpos = _startpos__1_ in
5511 let _endpos = _endpos__1_ in
5512 let _v : 'tv_basic_expr_eexpr_dot_expressions_ =
5513 # 1515 "parser_cocci_menhir.mly"
5514 ( _1 )
5515 # 5489 "parser_cocci_menhir.ml"
5516 in
5517 _menhir_env.MenhirLib.EngineTypes.stack <- {
5518 MenhirLib.EngineTypes.state = _menhir_s;
5519 MenhirLib.EngineTypes.semv = Obj.repr _v;
5520 MenhirLib.EngineTypes.startp = _startpos;
5521 MenhirLib.EngineTypes.endp = _endpos;
5522 MenhirLib.EngineTypes.next = _menhir_stack;
5523 });
5524 (fun _menhir_env ->
5525 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5526 let {
5527 MenhirLib.EngineTypes.state = _menhir_s;
5528 MenhirLib.EngineTypes.semv = _1;
5529 MenhirLib.EngineTypes.startp = _startpos__1_;
5530 MenhirLib.EngineTypes.endp = _endpos__1_;
5531 MenhirLib.EngineTypes.next = _menhir_stack;
5532 } = _menhir_stack in
5533 let _1 : 'tv_assign_expr_eexpr_nest_expressions_ = Obj.magic _1 in
5534 let _startpos = _startpos__1_ in
5535 let _endpos = _endpos__1_ in
5536 let _v : 'tv_basic_expr_eexpr_nest_expressions_ =
5537 # 1515 "parser_cocci_menhir.mly"
5538 ( _1 )
5539 # 5513 "parser_cocci_menhir.ml"
5540 in
5541 _menhir_env.MenhirLib.EngineTypes.stack <- {
5542 MenhirLib.EngineTypes.state = _menhir_s;
5543 MenhirLib.EngineTypes.semv = Obj.repr _v;
5544 MenhirLib.EngineTypes.startp = _startpos;
5545 MenhirLib.EngineTypes.endp = _endpos;
5546 MenhirLib.EngineTypes.next = _menhir_stack;
5547 });
5548 (fun _menhir_env ->
5549 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5550 let {
5551 MenhirLib.EngineTypes.state = _menhir_s;
5552 MenhirLib.EngineTypes.semv = _1;
5553 MenhirLib.EngineTypes.startp = _startpos__1_;
5554 MenhirLib.EngineTypes.endp = _endpos__1_;
5555 MenhirLib.EngineTypes.next = _menhir_stack;
5556 } = _menhir_stack in
5557 let _1 : 'tv_assign_expr_expr_invalid_ = Obj.magic _1 in
5558 let _startpos = _startpos__1_ in
5559 let _endpos = _endpos__1_ in
5560 let _v : 'tv_basic_expr_expr_invalid_ =
5561 # 1515 "parser_cocci_menhir.mly"
5562 ( _1 )
5563 # 5537 "parser_cocci_menhir.ml"
5564 in
5565 _menhir_env.MenhirLib.EngineTypes.stack <- {
5566 MenhirLib.EngineTypes.state = _menhir_s;
5567 MenhirLib.EngineTypes.semv = Obj.repr _v;
5568 MenhirLib.EngineTypes.startp = _startpos;
5569 MenhirLib.EngineTypes.endp = _endpos;
5570 MenhirLib.EngineTypes.next = _menhir_stack;
5571 });
5572 (fun _menhir_env ->
5573 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5574 let {
5575 MenhirLib.EngineTypes.semv = _3;
5576 MenhirLib.EngineTypes.startp = _startpos__3_;
5577 MenhirLib.EngineTypes.endp = _endpos__3_;
5578 MenhirLib.EngineTypes.next = {
5579 MenhirLib.EngineTypes.semv = _2;
5580 MenhirLib.EngineTypes.startp = _startpos__2_;
5581 MenhirLib.EngineTypes.endp = _endpos__2_;
5582 MenhirLib.EngineTypes.next = {
5583 MenhirLib.EngineTypes.state = _menhir_s;
5584 MenhirLib.EngineTypes.semv = _1;
5585 MenhirLib.EngineTypes.startp = _startpos__1_;
5586 MenhirLib.EngineTypes.endp = _endpos__1_;
5587 MenhirLib.EngineTypes.next = _menhir_stack;
5588 };
5589 };
5590 } = _menhir_stack in
5591 let _3 : 'tv_fun_start = Obj.magic _3 in
5592 let _2 : (
5593 # 122 "parser_cocci_menhir.mly"
5594 (Data.clt)
5595 # 5569 "parser_cocci_menhir.ml"
5596 ) = Obj.magic _2 in
5597 let _1 : (
5598 # 99 "parser_cocci_menhir.mly"
5599 (Data.clt)
5600 # 5574 "parser_cocci_menhir.ml"
5601 ) = Obj.magic _1 in
5602 let _startpos = _startpos__1_ in
5603 let _endpos = _endpos__3_ in
5604 let _v : 'tv_case_line =
5605 # 1193 "parser_cocci_menhir.mly"
5606 ( Ast0.wrap
5607 (Ast0.Default(P.clt2mcode "default" _1,P.clt2mcode ":" _2,_3)) )
5608 # 5582 "parser_cocci_menhir.ml"
5609 in
5610 _menhir_env.MenhirLib.EngineTypes.stack <- {
5611 MenhirLib.EngineTypes.state = _menhir_s;
5612 MenhirLib.EngineTypes.semv = Obj.repr _v;
5613 MenhirLib.EngineTypes.startp = _startpos;
5614 MenhirLib.EngineTypes.endp = _endpos;
5615 MenhirLib.EngineTypes.next = _menhir_stack;
5616 });
5617 (fun _menhir_env ->
5618 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5619 let {
5620 MenhirLib.EngineTypes.semv = _4;
5621 MenhirLib.EngineTypes.startp = _startpos__4_;
5622 MenhirLib.EngineTypes.endp = _endpos__4_;
5623 MenhirLib.EngineTypes.next = {
5624 MenhirLib.EngineTypes.semv = _3;
5625 MenhirLib.EngineTypes.startp = _startpos__3_;
5626 MenhirLib.EngineTypes.endp = _endpos__3_;
5627 MenhirLib.EngineTypes.next = {
5628 MenhirLib.EngineTypes.semv = _2;
5629 MenhirLib.EngineTypes.startp = _startpos__2_;
5630 MenhirLib.EngineTypes.endp = _endpos__2_;
5631 MenhirLib.EngineTypes.next = {
5632 MenhirLib.EngineTypes.state = _menhir_s;
5633 MenhirLib.EngineTypes.semv = _1;
5634 MenhirLib.EngineTypes.startp = _startpos__1_;
5635 MenhirLib.EngineTypes.endp = _endpos__1_;
5636 MenhirLib.EngineTypes.next = _menhir_stack;
5637 };
5638 };
5639 };
5640 } = _menhir_stack in
5641 let _4 : 'tv_fun_start = Obj.magic _4 in
5642 let _3 : (
5643 # 122 "parser_cocci_menhir.mly"
5644 (Data.clt)
5645 # 5619 "parser_cocci_menhir.ml"
5646 ) = Obj.magic _3 in
5647 let _2 : 'tv_eexpr = Obj.magic _2 in
5648 let _1 : (
5649 # 99 "parser_cocci_menhir.mly"
5650 (Data.clt)
5651 # 5625 "parser_cocci_menhir.ml"
5652 ) = Obj.magic _1 in
5653 let _startpos = _startpos__1_ in
5654 let _endpos = _endpos__4_ in
5655 let _v : 'tv_case_line =
5656 # 1196 "parser_cocci_menhir.mly"
5657 ( Ast0.wrap(Ast0.Case(P.clt2mcode "case" _1,_2,P.clt2mcode ":" _3,_4)) )
5658 # 5632 "parser_cocci_menhir.ml"
5659 in
5660 _menhir_env.MenhirLib.EngineTypes.stack <- {
5661 MenhirLib.EngineTypes.state = _menhir_s;
5662 MenhirLib.EngineTypes.semv = Obj.repr _v;
5663 MenhirLib.EngineTypes.startp = _startpos;
5664 MenhirLib.EngineTypes.endp = _endpos;
5665 MenhirLib.EngineTypes.next = _menhir_stack;
5666 });
5667 (fun _menhir_env ->
5668 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5669 let {
5670 MenhirLib.EngineTypes.state = _menhir_s;
5671 MenhirLib.EngineTypes.semv = _1;
5672 MenhirLib.EngineTypes.startp = _startpos__1_;
5673 MenhirLib.EngineTypes.endp = _endpos__1_;
5674 MenhirLib.EngineTypes.next = _menhir_stack;
5675 } = _menhir_stack in
5676 let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
5677 let _startpos = _startpos__1_ in
5678 let _endpos = _endpos__1_ in
5679 let _v : 'tv_cast_expr_eexpr_dot_expressions_ =
5680 # 1611 "parser_cocci_menhir.mly"
5681 ( _1 )
5682 # 5656 "parser_cocci_menhir.ml"
5683 in
5684 _menhir_env.MenhirLib.EngineTypes.stack <- {
5685 MenhirLib.EngineTypes.state = _menhir_s;
5686 MenhirLib.EngineTypes.semv = Obj.repr _v;
5687 MenhirLib.EngineTypes.startp = _startpos;
5688 MenhirLib.EngineTypes.endp = _endpos;
5689 MenhirLib.EngineTypes.next = _menhir_stack;
5690 });
5691 (fun _menhir_env ->
5692 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5693 let {
5694 MenhirLib.EngineTypes.semv = e;
5695 MenhirLib.EngineTypes.startp = _startpos_e_;
5696 MenhirLib.EngineTypes.endp = _endpos_e_;
5697 MenhirLib.EngineTypes.next = {
5698 MenhirLib.EngineTypes.semv = rp;
5699 MenhirLib.EngineTypes.startp = _startpos_rp_;
5700 MenhirLib.EngineTypes.endp = _endpos_rp_;
5701 MenhirLib.EngineTypes.next = {
5702 MenhirLib.EngineTypes.semv = t;
5703 MenhirLib.EngineTypes.startp = _startpos_t_;
5704 MenhirLib.EngineTypes.endp = _endpos_t_;
5705 MenhirLib.EngineTypes.next = {
5706 MenhirLib.EngineTypes.state = _menhir_s;
5707 MenhirLib.EngineTypes.semv = lp;
5708 MenhirLib.EngineTypes.startp = _startpos_lp_;
5709 MenhirLib.EngineTypes.endp = _endpos_lp_;
5710 MenhirLib.EngineTypes.next = _menhir_stack;
5711 };
5712 };
5713 };
5714 } = _menhir_stack in
5715 let e : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic e in
5716 let rp : (
5717 # 123 "parser_cocci_menhir.mly"
5718 (Data.clt)
5719 # 5693 "parser_cocci_menhir.ml"
5720 ) = Obj.magic rp in
5721 let t : 'tv_ctype = Obj.magic t in
5722 let lp : (
5723 # 122 "parser_cocci_menhir.mly"
5724 (Data.clt)
5725 # 5699 "parser_cocci_menhir.ml"
5726 ) = Obj.magic lp in
5727 let _startpos = _startpos_lp_ in
5728 let _endpos = _endpos_e_ in
5729 let _v : 'tv_cast_expr_eexpr_dot_expressions_ =
5730 # 1613 "parser_cocci_menhir.mly"
5731 ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
5732 P.clt2mcode ")" rp, e)) )
5733 # 5707 "parser_cocci_menhir.ml"
5734 in
5735 _menhir_env.MenhirLib.EngineTypes.stack <- {
5736 MenhirLib.EngineTypes.state = _menhir_s;
5737 MenhirLib.EngineTypes.semv = Obj.repr _v;
5738 MenhirLib.EngineTypes.startp = _startpos;
5739 MenhirLib.EngineTypes.endp = _endpos;
5740 MenhirLib.EngineTypes.next = _menhir_stack;
5741 });
5742 (fun _menhir_env ->
5743 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5744 let {
5745 MenhirLib.EngineTypes.state = _menhir_s;
5746 MenhirLib.EngineTypes.semv = _1;
5747 MenhirLib.EngineTypes.startp = _startpos__1_;
5748 MenhirLib.EngineTypes.endp = _endpos__1_;
5749 MenhirLib.EngineTypes.next = _menhir_stack;
5750 } = _menhir_stack in
5751 let _1 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _1 in
5752 let _startpos = _startpos__1_ in
5753 let _endpos = _endpos__1_ in
5754 let _v : 'tv_cast_expr_eexpr_invalid_ =
5755 # 1611 "parser_cocci_menhir.mly"
5756 ( _1 )
5757 # 5731 "parser_cocci_menhir.ml"
5758 in
5759 _menhir_env.MenhirLib.EngineTypes.stack <- {
5760 MenhirLib.EngineTypes.state = _menhir_s;
5761 MenhirLib.EngineTypes.semv = Obj.repr _v;
5762 MenhirLib.EngineTypes.startp = _startpos;
5763 MenhirLib.EngineTypes.endp = _endpos;
5764 MenhirLib.EngineTypes.next = _menhir_stack;
5765 });
5766 (fun _menhir_env ->
5767 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5768 let {
5769 MenhirLib.EngineTypes.semv = e;
5770 MenhirLib.EngineTypes.startp = _startpos_e_;
5771 MenhirLib.EngineTypes.endp = _endpos_e_;
5772 MenhirLib.EngineTypes.next = {
5773 MenhirLib.EngineTypes.semv = rp;
5774 MenhirLib.EngineTypes.startp = _startpos_rp_;
5775 MenhirLib.EngineTypes.endp = _endpos_rp_;
5776 MenhirLib.EngineTypes.next = {
5777 MenhirLib.EngineTypes.semv = t;
5778 MenhirLib.EngineTypes.startp = _startpos_t_;
5779 MenhirLib.EngineTypes.endp = _endpos_t_;
5780 MenhirLib.EngineTypes.next = {
5781 MenhirLib.EngineTypes.state = _menhir_s;
5782 MenhirLib.EngineTypes.semv = lp;
5783 MenhirLib.EngineTypes.startp = _startpos_lp_;
5784 MenhirLib.EngineTypes.endp = _endpos_lp_;
5785 MenhirLib.EngineTypes.next = _menhir_stack;
5786 };
5787 };
5788 };
5789 } = _menhir_stack in
5790 let e : 'tv_cast_expr_eexpr_invalid_ = Obj.magic e in
5791 let rp : (
5792 # 123 "parser_cocci_menhir.mly"
5793 (Data.clt)
5794 # 5768 "parser_cocci_menhir.ml"
5795 ) = Obj.magic rp in
5796 let t : 'tv_ctype = Obj.magic t in
5797 let lp : (
5798 # 122 "parser_cocci_menhir.mly"
5799 (Data.clt)
5800 # 5774 "parser_cocci_menhir.ml"
5801 ) = Obj.magic lp in
5802 let _startpos = _startpos_lp_ in
5803 let _endpos = _endpos_e_ in
5804 let _v : 'tv_cast_expr_eexpr_invalid_ =
5805 # 1613 "parser_cocci_menhir.mly"
5806 ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
5807 P.clt2mcode ")" rp, e)) )
5808 # 5782 "parser_cocci_menhir.ml"
5809 in
5810 _menhir_env.MenhirLib.EngineTypes.stack <- {
5811 MenhirLib.EngineTypes.state = _menhir_s;
5812 MenhirLib.EngineTypes.semv = Obj.repr _v;
5813 MenhirLib.EngineTypes.startp = _startpos;
5814 MenhirLib.EngineTypes.endp = _endpos;
5815 MenhirLib.EngineTypes.next = _menhir_stack;
5816 });
5817 (fun _menhir_env ->
5818 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5819 let {
5820 MenhirLib.EngineTypes.state = _menhir_s;
5821 MenhirLib.EngineTypes.semv = _1;
5822 MenhirLib.EngineTypes.startp = _startpos__1_;
5823 MenhirLib.EngineTypes.endp = _endpos__1_;
5824 MenhirLib.EngineTypes.next = _menhir_stack;
5825 } = _menhir_stack in
5826 let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
5827 let _startpos = _startpos__1_ in
5828 let _endpos = _endpos__1_ in
5829 let _v : 'tv_cast_expr_eexpr_nest_expressions_ =
5830 # 1611 "parser_cocci_menhir.mly"
5831 ( _1 )
5832 # 5806 "parser_cocci_menhir.ml"
5833 in
5834 _menhir_env.MenhirLib.EngineTypes.stack <- {
5835 MenhirLib.EngineTypes.state = _menhir_s;
5836 MenhirLib.EngineTypes.semv = Obj.repr _v;
5837 MenhirLib.EngineTypes.startp = _startpos;
5838 MenhirLib.EngineTypes.endp = _endpos;
5839 MenhirLib.EngineTypes.next = _menhir_stack;
5840 });
5841 (fun _menhir_env ->
5842 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5843 let {
5844 MenhirLib.EngineTypes.semv = e;
5845 MenhirLib.EngineTypes.startp = _startpos_e_;
5846 MenhirLib.EngineTypes.endp = _endpos_e_;
5847 MenhirLib.EngineTypes.next = {
5848 MenhirLib.EngineTypes.semv = rp;
5849 MenhirLib.EngineTypes.startp = _startpos_rp_;
5850 MenhirLib.EngineTypes.endp = _endpos_rp_;
5851 MenhirLib.EngineTypes.next = {
5852 MenhirLib.EngineTypes.semv = t;
5853 MenhirLib.EngineTypes.startp = _startpos_t_;
5854 MenhirLib.EngineTypes.endp = _endpos_t_;
5855 MenhirLib.EngineTypes.next = {
5856 MenhirLib.EngineTypes.state = _menhir_s;
5857 MenhirLib.EngineTypes.semv = lp;
5858 MenhirLib.EngineTypes.startp = _startpos_lp_;
5859 MenhirLib.EngineTypes.endp = _endpos_lp_;
5860 MenhirLib.EngineTypes.next = _menhir_stack;
5861 };
5862 };
5863 };
5864 } = _menhir_stack in
5865 let e : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic e in
5866 let rp : (
5867 # 123 "parser_cocci_menhir.mly"
5868 (Data.clt)
5869 # 5843 "parser_cocci_menhir.ml"
5870 ) = Obj.magic rp in
5871 let t : 'tv_ctype = Obj.magic t in
5872 let lp : (
5873 # 122 "parser_cocci_menhir.mly"
5874 (Data.clt)
5875 # 5849 "parser_cocci_menhir.ml"
5876 ) = Obj.magic lp in
5877 let _startpos = _startpos_lp_ in
5878 let _endpos = _endpos_e_ in
5879 let _v : 'tv_cast_expr_eexpr_nest_expressions_ =
5880 # 1613 "parser_cocci_menhir.mly"
5881 ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
5882 P.clt2mcode ")" rp, e)) )
5883 # 5857 "parser_cocci_menhir.ml"
5884 in
5885 _menhir_env.MenhirLib.EngineTypes.stack <- {
5886 MenhirLib.EngineTypes.state = _menhir_s;
5887 MenhirLib.EngineTypes.semv = Obj.repr _v;
5888 MenhirLib.EngineTypes.startp = _startpos;
5889 MenhirLib.EngineTypes.endp = _endpos;
5890 MenhirLib.EngineTypes.next = _menhir_stack;
5891 });
5892 (fun _menhir_env ->
5893 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5894 let {
5895 MenhirLib.EngineTypes.state = _menhir_s;
5896 MenhirLib.EngineTypes.semv = _1;
5897 MenhirLib.EngineTypes.startp = _startpos__1_;
5898 MenhirLib.EngineTypes.endp = _endpos__1_;
5899 MenhirLib.EngineTypes.next = _menhir_stack;
5900 } = _menhir_stack in
5901 let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
5902 let _startpos = _startpos__1_ in
5903 let _endpos = _endpos__1_ in
5904 let _v : 'tv_cast_expr_expr_invalid_ =
5905 # 1611 "parser_cocci_menhir.mly"
5906 ( _1 )
5907 # 5881 "parser_cocci_menhir.ml"
5908 in
5909 _menhir_env.MenhirLib.EngineTypes.stack <- {
5910 MenhirLib.EngineTypes.state = _menhir_s;
5911 MenhirLib.EngineTypes.semv = Obj.repr _v;
5912 MenhirLib.EngineTypes.startp = _startpos;
5913 MenhirLib.EngineTypes.endp = _endpos;
5914 MenhirLib.EngineTypes.next = _menhir_stack;
5915 });
5916 (fun _menhir_env ->
5917 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5918 let {
5919 MenhirLib.EngineTypes.semv = e;
5920 MenhirLib.EngineTypes.startp = _startpos_e_;
5921 MenhirLib.EngineTypes.endp = _endpos_e_;
5922 MenhirLib.EngineTypes.next = {
5923 MenhirLib.EngineTypes.semv = rp;
5924 MenhirLib.EngineTypes.startp = _startpos_rp_;
5925 MenhirLib.EngineTypes.endp = _endpos_rp_;
5926 MenhirLib.EngineTypes.next = {
5927 MenhirLib.EngineTypes.semv = t;
5928 MenhirLib.EngineTypes.startp = _startpos_t_;
5929 MenhirLib.EngineTypes.endp = _endpos_t_;
5930 MenhirLib.EngineTypes.next = {
5931 MenhirLib.EngineTypes.state = _menhir_s;
5932 MenhirLib.EngineTypes.semv = lp;
5933 MenhirLib.EngineTypes.startp = _startpos_lp_;
5934 MenhirLib.EngineTypes.endp = _endpos_lp_;
5935 MenhirLib.EngineTypes.next = _menhir_stack;
5936 };
5937 };
5938 };
5939 } = _menhir_stack in
5940 let e : 'tv_cast_expr_expr_invalid_ = Obj.magic e in
5941 let rp : (
5942 # 123 "parser_cocci_menhir.mly"
5943 (Data.clt)
5944 # 5918 "parser_cocci_menhir.ml"
5945 ) = Obj.magic rp in
5946 let t : 'tv_ctype = Obj.magic t in
5947 let lp : (
5948 # 122 "parser_cocci_menhir.mly"
5949 (Data.clt)
5950 # 5924 "parser_cocci_menhir.ml"
5951 ) = Obj.magic lp in
5952 let _startpos = _startpos_lp_ in
5953 let _endpos = _endpos_e_ in
5954 let _v : 'tv_cast_expr_expr_invalid_ =
5955 # 1613 "parser_cocci_menhir.mly"
5956 ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
5957 P.clt2mcode ")" rp, e)) )
5958 # 5932 "parser_cocci_menhir.ml"
5959 in
5960 _menhir_env.MenhirLib.EngineTypes.stack <- {
5961 MenhirLib.EngineTypes.state = _menhir_s;
5962 MenhirLib.EngineTypes.semv = Obj.repr _v;
5963 MenhirLib.EngineTypes.startp = _startpos;
5964 MenhirLib.EngineTypes.endp = _endpos;
5965 MenhirLib.EngineTypes.next = _menhir_stack;
5966 });
5967 (fun _menhir_env ->
5968 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5969 let {
5970 MenhirLib.EngineTypes.semv = _2;
5971 MenhirLib.EngineTypes.startp = _startpos__2_;
5972 MenhirLib.EngineTypes.endp = _endpos__2_;
5973 MenhirLib.EngineTypes.next = {
5974 MenhirLib.EngineTypes.state = _menhir_s;
5975 MenhirLib.EngineTypes.startp = _startpos__1_;
5976 MenhirLib.EngineTypes.endp = _endpos__1_;
5977 MenhirLib.EngineTypes.next = _menhir_stack;
5978 };
5979 } = _menhir_stack in
5980 let _2 : 'tv_separated_nonempty_list_TComma_TString_ = Obj.magic _2 in
5981 let _startpos = _startpos__1_ in
5982 let _endpos = _endpos__2_ in
5983 let _v : 'tv_choose_iso =
5984 # 284 "parser_cocci_menhir.mly"
5985 ( List.map P.id2name _2 )
5986 # 5960 "parser_cocci_menhir.ml"
5987 in
5988 _menhir_env.MenhirLib.EngineTypes.stack <- {
5989 MenhirLib.EngineTypes.state = _menhir_s;
5990 MenhirLib.EngineTypes.semv = Obj.repr _v;
5991 MenhirLib.EngineTypes.startp = _startpos;
5992 MenhirLib.EngineTypes.endp = _endpos;
5993 MenhirLib.EngineTypes.next = _menhir_stack;
5994 });
5995 (fun _menhir_env ->
5996 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
5997 let {
5998 MenhirLib.EngineTypes.state = _menhir_s;
5999 MenhirLib.EngineTypes.semv = _1;
6000 MenhirLib.EngineTypes.startp = _startpos__1_;
6001 MenhirLib.EngineTypes.endp = _endpos__1_;
6002 MenhirLib.EngineTypes.next = _menhir_stack;
6003 } = _menhir_stack in
6004 let _1 : 'tv_separated_nonempty_list_TComma_any_strict_ = Obj.magic _1 in
6005 let _startpos = _startpos__1_ in
6006 let _endpos = _endpos__1_ in
6007 let _v : 'tv_comma_list_any_strict_ =
6008 # 2351 "parser_cocci_menhir.mly"
6009 ( _1 )
6010 # 5984 "parser_cocci_menhir.ml"
6011 in
6012 _menhir_env.MenhirLib.EngineTypes.stack <- {
6013 MenhirLib.EngineTypes.state = _menhir_s;
6014 MenhirLib.EngineTypes.semv = Obj.repr _v;
6015 MenhirLib.EngineTypes.startp = _startpos;
6016 MenhirLib.EngineTypes.endp = _endpos;
6017 MenhirLib.EngineTypes.next = _menhir_stack;
6018 });
6019 (fun _menhir_env ->
6020 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6021 let {
6022 MenhirLib.EngineTypes.state = _menhir_s;
6023 MenhirLib.EngineTypes.semv = _1;
6024 MenhirLib.EngineTypes.startp = _startpos__1_;
6025 MenhirLib.EngineTypes.endp = _endpos__1_;
6026 MenhirLib.EngineTypes.next = _menhir_stack;
6027 } = _menhir_stack in
6028 let _1 : 'tv_separated_nonempty_list_TComma_ctype_ = Obj.magic _1 in
6029 let _startpos = _startpos__1_ in
6030 let _endpos = _endpos__1_ in
6031 let _v : 'tv_comma_list_ctype_ =
6032 # 2351 "parser_cocci_menhir.mly"
6033 ( _1 )
6034 # 6008 "parser_cocci_menhir.ml"
6035 in
6036 _menhir_env.MenhirLib.EngineTypes.stack <- {
6037 MenhirLib.EngineTypes.state = _menhir_s;
6038 MenhirLib.EngineTypes.semv = Obj.repr _v;
6039 MenhirLib.EngineTypes.startp = _startpos;
6040 MenhirLib.EngineTypes.endp = _endpos;
6041 MenhirLib.EngineTypes.next = _menhir_stack;
6042 });
6043 (fun _menhir_env ->
6044 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6045 let {
6046 MenhirLib.EngineTypes.state = _menhir_s;
6047 MenhirLib.EngineTypes.semv = _1;
6048 MenhirLib.EngineTypes.startp = _startpos__1_;
6049 MenhirLib.EngineTypes.endp = _endpos__1_;
6050 MenhirLib.EngineTypes.next = _menhir_stack;
6051 } = _menhir_stack in
6052 let _1 : 'tv_separated_nonempty_list_TComma_d_ident_ = Obj.magic _1 in
6053 let _startpos = _startpos__1_ in
6054 let _endpos = _endpos__1_ in
6055 let _v : 'tv_comma_list_d_ident_ =
6056 # 2351 "parser_cocci_menhir.mly"
6057 ( _1 )
6058 # 6032 "parser_cocci_menhir.ml"
6059 in
6060 _menhir_env.MenhirLib.EngineTypes.stack <- {
6061 MenhirLib.EngineTypes.state = _menhir_s;
6062 MenhirLib.EngineTypes.semv = Obj.repr _v;
6063 MenhirLib.EngineTypes.startp = _startpos;
6064 MenhirLib.EngineTypes.endp = _endpos;
6065 MenhirLib.EngineTypes.next = _menhir_stack;
6066 });
6067 (fun _menhir_env ->
6068 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6069 let {
6070 MenhirLib.EngineTypes.state = _menhir_s;
6071 MenhirLib.EngineTypes.semv = _1;
6072 MenhirLib.EngineTypes.startp = _startpos__1_;
6073 MenhirLib.EngineTypes.endp = _endpos__1_;
6074 MenhirLib.EngineTypes.next = _menhir_stack;
6075 } = _menhir_stack in
6076 let _1 : 'tv_separated_nonempty_list_TComma_ident_or_const_ = Obj.magic _1 in
6077 let _startpos = _startpos__1_ in
6078 let _endpos = _endpos__1_ in
6079 let _v : 'tv_comma_list_ident_or_const_ =
6080 # 2351 "parser_cocci_menhir.mly"
6081 ( _1 )
6082 # 6056 "parser_cocci_menhir.ml"
6083 in
6084 _menhir_env.MenhirLib.EngineTypes.stack <- {
6085 MenhirLib.EngineTypes.state = _menhir_s;
6086 MenhirLib.EngineTypes.semv = Obj.repr _v;
6087 MenhirLib.EngineTypes.startp = _startpos;
6088 MenhirLib.EngineTypes.endp = _endpos;
6089 MenhirLib.EngineTypes.next = _menhir_stack;
6090 });
6091 (fun _menhir_env ->
6092 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6093 let {
6094 MenhirLib.EngineTypes.state = _menhir_s;
6095 MenhirLib.EngineTypes.semv = _1;
6096 MenhirLib.EngineTypes.startp = _startpos__1_;
6097 MenhirLib.EngineTypes.endp = _endpos__1_;
6098 MenhirLib.EngineTypes.next = _menhir_stack;
6099 } = _menhir_stack in
6100 let _1 : 'tv_separated_nonempty_list_TComma_meta_ident_ = Obj.magic _1 in
6101 let _startpos = _startpos__1_ in
6102 let _endpos = _endpos__1_ in
6103 let _v : 'tv_comma_list_meta_ident_ =
6104 # 2351 "parser_cocci_menhir.mly"
6105 ( _1 )
6106 # 6080 "parser_cocci_menhir.ml"
6107 in
6108 _menhir_env.MenhirLib.EngineTypes.stack <- {
6109 MenhirLib.EngineTypes.state = _menhir_s;
6110 MenhirLib.EngineTypes.semv = Obj.repr _v;
6111 MenhirLib.EngineTypes.startp = _startpos;
6112 MenhirLib.EngineTypes.endp = _endpos;
6113 MenhirLib.EngineTypes.next = _menhir_stack;
6114 });
6115 (fun _menhir_env ->
6116 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6117 let {
6118 MenhirLib.EngineTypes.state = _menhir_s;
6119 MenhirLib.EngineTypes.semv = _1;
6120 MenhirLib.EngineTypes.startp = _startpos__1_;
6121 MenhirLib.EngineTypes.endp = _endpos__1_;
6122 MenhirLib.EngineTypes.next = _menhir_stack;
6123 } = _menhir_stack in
6124 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_ = Obj.magic _1 in
6125 let _startpos = _startpos__1_ in
6126 let _endpos = _endpos__1_ in
6127 let _v : 'tv_comma_list_pure_ident_ =
6128 # 2351 "parser_cocci_menhir.mly"
6129 ( _1 )
6130 # 6104 "parser_cocci_menhir.ml"
6131 in
6132 _menhir_env.MenhirLib.EngineTypes.stack <- {
6133 MenhirLib.EngineTypes.state = _menhir_s;
6134 MenhirLib.EngineTypes.semv = Obj.repr _v;
6135 MenhirLib.EngineTypes.startp = _startpos;
6136 MenhirLib.EngineTypes.endp = _endpos;
6137 MenhirLib.EngineTypes.next = _menhir_stack;
6138 });
6139 (fun _menhir_env ->
6140 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6141 let {
6142 MenhirLib.EngineTypes.state = _menhir_s;
6143 MenhirLib.EngineTypes.semv = _1;
6144 MenhirLib.EngineTypes.startp = _startpos__1_;
6145 MenhirLib.EngineTypes.endp = _endpos__1_;
6146 MenhirLib.EngineTypes.next = _menhir_stack;
6147 } = _menhir_stack in
6148 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = Obj.magic _1 in
6149 let _startpos = _startpos__1_ in
6150 let _endpos = _endpos__1_ in
6151 let _v : 'tv_comma_list_pure_ident_or_meta_ident_ =
6152 # 2351 "parser_cocci_menhir.mly"
6153 ( _1 )
6154 # 6128 "parser_cocci_menhir.ml"
6155 in
6156 _menhir_env.MenhirLib.EngineTypes.stack <- {
6157 MenhirLib.EngineTypes.state = _menhir_s;
6158 MenhirLib.EngineTypes.semv = Obj.repr _v;
6159 MenhirLib.EngineTypes.startp = _startpos;
6160 MenhirLib.EngineTypes.endp = _endpos;
6161 MenhirLib.EngineTypes.next = _menhir_stack;
6162 });
6163 (fun _menhir_env ->
6164 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6165 let {
6166 MenhirLib.EngineTypes.state = _menhir_s;
6167 MenhirLib.EngineTypes.semv = _1;
6168 MenhirLib.EngineTypes.startp = _startpos__1_;
6169 MenhirLib.EngineTypes.endp = _endpos__1_;
6170 MenhirLib.EngineTypes.next = _menhir_stack;
6171 } = _menhir_stack in
6172 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ = Obj.magic _1 in
6173 let _startpos = _startpos__1_ in
6174 let _endpos = _endpos__1_ in
6175 let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ =
6176 # 2351 "parser_cocci_menhir.mly"
6177 ( _1 )
6178 # 6152 "parser_cocci_menhir.ml"
6179 in
6180 _menhir_env.MenhirLib.EngineTypes.stack <- {
6181 MenhirLib.EngineTypes.state = _menhir_s;
6182 MenhirLib.EngineTypes.semv = Obj.repr _v;
6183 MenhirLib.EngineTypes.startp = _startpos;
6184 MenhirLib.EngineTypes.endp = _endpos;
6185 MenhirLib.EngineTypes.next = _menhir_stack;
6186 });
6187 (fun _menhir_env ->
6188 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6189 let {
6190 MenhirLib.EngineTypes.state = _menhir_s;
6191 MenhirLib.EngineTypes.semv = _1;
6192 MenhirLib.EngineTypes.startp = _startpos__1_;
6193 MenhirLib.EngineTypes.endp = _endpos__1_;
6194 MenhirLib.EngineTypes.next = _menhir_stack;
6195 } = _menhir_stack in
6196 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic _1 in
6197 let _startpos = _startpos__1_ in
6198 let _endpos = _endpos__1_ in
6199 let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ =
6200 # 2351 "parser_cocci_menhir.mly"
6201 ( _1 )
6202 # 6176 "parser_cocci_menhir.ml"
6203 in
6204 _menhir_env.MenhirLib.EngineTypes.stack <- {
6205 MenhirLib.EngineTypes.state = _menhir_s;
6206 MenhirLib.EngineTypes.semv = Obj.repr _v;
6207 MenhirLib.EngineTypes.startp = _startpos;
6208 MenhirLib.EngineTypes.endp = _endpos;
6209 MenhirLib.EngineTypes.next = _menhir_stack;
6210 });
6211 (fun _menhir_env ->
6212 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6213 let {
6214 MenhirLib.EngineTypes.state = _menhir_s;
6215 MenhirLib.EngineTypes.semv = _1;
6216 MenhirLib.EngineTypes.startp = _startpos__1_;
6217 MenhirLib.EngineTypes.endp = _endpos__1_;
6218 MenhirLib.EngineTypes.next = _menhir_stack;
6219 } = _menhir_stack in
6220 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic _1 in
6221 let _startpos = _startpos__1_ in
6222 let _endpos = _endpos__1_ in
6223 let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ =
6224 # 2351 "parser_cocci_menhir.mly"
6225 ( _1 )
6226 # 6200 "parser_cocci_menhir.ml"
6227 in
6228 _menhir_env.MenhirLib.EngineTypes.stack <- {
6229 MenhirLib.EngineTypes.state = _menhir_s;
6230 MenhirLib.EngineTypes.semv = Obj.repr _v;
6231 MenhirLib.EngineTypes.startp = _startpos;
6232 MenhirLib.EngineTypes.endp = _endpos;
6233 MenhirLib.EngineTypes.next = _menhir_stack;
6234 });
6235 (fun _menhir_env ->
6236 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6237 let {
6238 MenhirLib.EngineTypes.state = _menhir_s;
6239 MenhirLib.EngineTypes.semv = _1;
6240 MenhirLib.EngineTypes.startp = _startpos__1_;
6241 MenhirLib.EngineTypes.endp = _endpos__1_;
6242 MenhirLib.EngineTypes.next = _menhir_stack;
6243 } = _menhir_stack in
6244 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ = Obj.magic _1 in
6245 let _startpos = _startpos__1_ in
6246 let _endpos = _endpos__1_ in
6247 let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ =
6248 # 2351 "parser_cocci_menhir.mly"
6249 ( _1 )
6250 # 6224 "parser_cocci_menhir.ml"
6251 in
6252 _menhir_env.MenhirLib.EngineTypes.stack <- {
6253 MenhirLib.EngineTypes.state = _menhir_s;
6254 MenhirLib.EngineTypes.semv = Obj.repr _v;
6255 MenhirLib.EngineTypes.startp = _startpos;
6256 MenhirLib.EngineTypes.endp = _endpos;
6257 MenhirLib.EngineTypes.next = _menhir_stack;
6258 });
6259 (fun _menhir_env ->
6260 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6261 let {
6262 MenhirLib.EngineTypes.state = _menhir_s;
6263 MenhirLib.EngineTypes.semv = _1;
6264 MenhirLib.EngineTypes.startp = _startpos__1_;
6265 MenhirLib.EngineTypes.endp = _endpos__1_;
6266 MenhirLib.EngineTypes.next = _menhir_stack;
6267 } = _menhir_stack in
6268 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_seed_ = Obj.magic _1 in
6269 let _startpos = _startpos__1_ in
6270 let _endpos = _endpos__1_ in
6271 let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_seed_ =
6272 # 2351 "parser_cocci_menhir.mly"
6273 ( _1 )
6274 # 6248 "parser_cocci_menhir.ml"
6275 in
6276 _menhir_env.MenhirLib.EngineTypes.stack <- {
6277 MenhirLib.EngineTypes.state = _menhir_s;
6278 MenhirLib.EngineTypes.semv = Obj.repr _v;
6279 MenhirLib.EngineTypes.startp = _startpos;
6280 MenhirLib.EngineTypes.endp = _endpos;
6281 MenhirLib.EngineTypes.next = _menhir_stack;
6282 });
6283 (fun _menhir_env ->
6284 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6285 let {
6286 MenhirLib.EngineTypes.state = _menhir_s;
6287 MenhirLib.EngineTypes.semv = _1;
6288 MenhirLib.EngineTypes.startp = _startpos__1_;
6289 MenhirLib.EngineTypes.endp = _endpos__1_;
6290 MenhirLib.EngineTypes.next = _menhir_stack;
6291 } = _menhir_stack in
6292 let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_x_eq_not_pos__ = Obj.magic _1 in
6293 let _startpos = _startpos__1_ in
6294 let _endpos = _endpos__1_ in
6295 let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_x_eq_not_pos__ =
6296 # 2351 "parser_cocci_menhir.mly"
6297 ( _1 )
6298 # 6272 "parser_cocci_menhir.ml"
6299 in
6300 _menhir_env.MenhirLib.EngineTypes.stack <- {
6301 MenhirLib.EngineTypes.state = _menhir_s;
6302 MenhirLib.EngineTypes.semv = Obj.repr _v;
6303 MenhirLib.EngineTypes.startp = _startpos;
6304 MenhirLib.EngineTypes.endp = _endpos;
6305 MenhirLib.EngineTypes.next = _menhir_stack;
6306 });
6307 (fun _menhir_env ->
6308 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6309 let {
6310 MenhirLib.EngineTypes.state = _menhir_s;
6311 MenhirLib.EngineTypes.semv = _1;
6312 MenhirLib.EngineTypes.startp = _startpos__1_;
6313 MenhirLib.EngineTypes.endp = _endpos__1_;
6314 MenhirLib.EngineTypes.next = _menhir_stack;
6315 } = _menhir_stack in
6316 let _1 : 'tv_separated_nonempty_list_TComma_typedef_ident_ = Obj.magic _1 in
6317 let _startpos = _startpos__1_ in
6318 let _endpos = _endpos__1_ in
6319 let _v : 'tv_comma_list_typedef_ident_ =
6320 # 2351 "parser_cocci_menhir.mly"
6321 ( _1 )
6322 # 6296 "parser_cocci_menhir.ml"
6323 in
6324 _menhir_env.MenhirLib.EngineTypes.stack <- {
6325 MenhirLib.EngineTypes.state = _menhir_s;
6326 MenhirLib.EngineTypes.semv = Obj.repr _v;
6327 MenhirLib.EngineTypes.startp = _startpos;
6328 MenhirLib.EngineTypes.endp = _endpos;
6329 MenhirLib.EngineTypes.next = _menhir_stack;
6330 });
6331 (fun _menhir_env ->
6332 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6333 let {
6334 MenhirLib.EngineTypes.state = _menhir_s;
6335 MenhirLib.EngineTypes.semv = _1;
6336 MenhirLib.EngineTypes.startp = _startpos__1_;
6337 MenhirLib.EngineTypes.endp = _endpos__1_;
6338 MenhirLib.EngineTypes.next = _menhir_stack;
6339 } = _menhir_stack in
6340 let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
6341 let _startpos = _startpos__1_ in
6342 let _endpos = _endpos__1_ in
6343 let _v : 'tv_cond_expr_eexpr_dot_expressions_ =
6344 # 1540 "parser_cocci_menhir.mly"
6345 ( _1 )
6346 # 6320 "parser_cocci_menhir.ml"
6347 in
6348 _menhir_env.MenhirLib.EngineTypes.stack <- {
6349 MenhirLib.EngineTypes.state = _menhir_s;
6350 MenhirLib.EngineTypes.semv = Obj.repr _v;
6351 MenhirLib.EngineTypes.startp = _startpos;
6352 MenhirLib.EngineTypes.endp = _endpos;
6353 MenhirLib.EngineTypes.next = _menhir_stack;
6354 });
6355 (fun _menhir_env ->
6356 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6357 let {
6358 MenhirLib.EngineTypes.semv = r;
6359 MenhirLib.EngineTypes.startp = _startpos_r_;
6360 MenhirLib.EngineTypes.endp = _endpos_r_;
6361 MenhirLib.EngineTypes.next = {
6362 MenhirLib.EngineTypes.semv = dd;
6363 MenhirLib.EngineTypes.startp = _startpos_dd_;
6364 MenhirLib.EngineTypes.endp = _endpos_dd_;
6365 MenhirLib.EngineTypes.next = {
6366 MenhirLib.EngineTypes.semv = t;
6367 MenhirLib.EngineTypes.startp = _startpos_t_;
6368 MenhirLib.EngineTypes.endp = _endpos_t_;
6369 MenhirLib.EngineTypes.next = {
6370 MenhirLib.EngineTypes.semv = w;
6371 MenhirLib.EngineTypes.startp = _startpos_w_;
6372 MenhirLib.EngineTypes.endp = _endpos_w_;
6373 MenhirLib.EngineTypes.next = {
6374 MenhirLib.EngineTypes.state = _menhir_s;
6375 MenhirLib.EngineTypes.semv = l;
6376 MenhirLib.EngineTypes.startp = _startpos_l_;
6377 MenhirLib.EngineTypes.endp = _endpos_l_;
6378 MenhirLib.EngineTypes.next = _menhir_stack;
6379 };
6380 };
6381 };
6382 };
6383 } = _menhir_stack in
6384 let r : 'tv_eargexpr = Obj.magic r in
6385 let dd : (
6386 # 122 "parser_cocci_menhir.mly"
6387 (Data.clt)
6388 # 6362 "parser_cocci_menhir.ml"
6389 ) = Obj.magic dd in
6390 let t : 'tv_option_eexpr_ = Obj.magic t in
6391 let w : (
6392 # 122 "parser_cocci_menhir.mly"
6393 (Data.clt)
6394 # 6368 "parser_cocci_menhir.ml"
6395 ) = Obj.magic w in
6396 let l : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic l in
6397 let _startpos = _startpos_l_ in
6398 let _endpos = _endpos_r_ in
6399 let _v : 'tv_cond_expr_eexpr_dot_expressions_ =
6400 # 1543 "parser_cocci_menhir.mly"
6401 ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
6402 P.clt2mcode ":" dd, r)) )
6403 # 6377 "parser_cocci_menhir.ml"
6404 in
6405 _menhir_env.MenhirLib.EngineTypes.stack <- {
6406 MenhirLib.EngineTypes.state = _menhir_s;
6407 MenhirLib.EngineTypes.semv = Obj.repr _v;
6408 MenhirLib.EngineTypes.startp = _startpos;
6409 MenhirLib.EngineTypes.endp = _endpos;
6410 MenhirLib.EngineTypes.next = _menhir_stack;
6411 });
6412 (fun _menhir_env ->
6413 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6414 let {
6415 MenhirLib.EngineTypes.state = _menhir_s;
6416 MenhirLib.EngineTypes.semv = _1;
6417 MenhirLib.EngineTypes.startp = _startpos__1_;
6418 MenhirLib.EngineTypes.endp = _endpos__1_;
6419 MenhirLib.EngineTypes.next = _menhir_stack;
6420 } = _menhir_stack in
6421 let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
6422 let _startpos = _startpos__1_ in
6423 let _endpos = _endpos__1_ in
6424 let _v : 'tv_cond_expr_eexpr_nest_expressions_ =
6425 # 1540 "parser_cocci_menhir.mly"
6426 ( _1 )
6427 # 6401 "parser_cocci_menhir.ml"
6428 in
6429 _menhir_env.MenhirLib.EngineTypes.stack <- {
6430 MenhirLib.EngineTypes.state = _menhir_s;
6431 MenhirLib.EngineTypes.semv = Obj.repr _v;
6432 MenhirLib.EngineTypes.startp = _startpos;
6433 MenhirLib.EngineTypes.endp = _endpos;
6434 MenhirLib.EngineTypes.next = _menhir_stack;
6435 });
6436 (fun _menhir_env ->
6437 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6438 let {
6439 MenhirLib.EngineTypes.semv = r;
6440 MenhirLib.EngineTypes.startp = _startpos_r_;
6441 MenhirLib.EngineTypes.endp = _endpos_r_;
6442 MenhirLib.EngineTypes.next = {
6443 MenhirLib.EngineTypes.semv = dd;
6444 MenhirLib.EngineTypes.startp = _startpos_dd_;
6445 MenhirLib.EngineTypes.endp = _endpos_dd_;
6446 MenhirLib.EngineTypes.next = {
6447 MenhirLib.EngineTypes.semv = t;
6448 MenhirLib.EngineTypes.startp = _startpos_t_;
6449 MenhirLib.EngineTypes.endp = _endpos_t_;
6450 MenhirLib.EngineTypes.next = {
6451 MenhirLib.EngineTypes.semv = w;
6452 MenhirLib.EngineTypes.startp = _startpos_w_;
6453 MenhirLib.EngineTypes.endp = _endpos_w_;
6454 MenhirLib.EngineTypes.next = {
6455 MenhirLib.EngineTypes.state = _menhir_s;
6456 MenhirLib.EngineTypes.semv = l;
6457 MenhirLib.EngineTypes.startp = _startpos_l_;
6458 MenhirLib.EngineTypes.endp = _endpos_l_;
6459 MenhirLib.EngineTypes.next = _menhir_stack;
6460 };
6461 };
6462 };
6463 };
6464 } = _menhir_stack in
6465 let r : 'tv_eargexpr = Obj.magic r in
6466 let dd : (
6467 # 122 "parser_cocci_menhir.mly"
6468 (Data.clt)
6469 # 6443 "parser_cocci_menhir.ml"
6470 ) = Obj.magic dd in
6471 let t : 'tv_option_eexpr_ = Obj.magic t in
6472 let w : (
6473 # 122 "parser_cocci_menhir.mly"
6474 (Data.clt)
6475 # 6449 "parser_cocci_menhir.ml"
6476 ) = Obj.magic w in
6477 let l : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic l in
6478 let _startpos = _startpos_l_ in
6479 let _endpos = _endpos_r_ in
6480 let _v : 'tv_cond_expr_eexpr_nest_expressions_ =
6481 # 1543 "parser_cocci_menhir.mly"
6482 ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
6483 P.clt2mcode ":" dd, r)) )
6484 # 6458 "parser_cocci_menhir.ml"
6485 in
6486 _menhir_env.MenhirLib.EngineTypes.stack <- {
6487 MenhirLib.EngineTypes.state = _menhir_s;
6488 MenhirLib.EngineTypes.semv = Obj.repr _v;
6489 MenhirLib.EngineTypes.startp = _startpos;
6490 MenhirLib.EngineTypes.endp = _endpos;
6491 MenhirLib.EngineTypes.next = _menhir_stack;
6492 });
6493 (fun _menhir_env ->
6494 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6495 let {
6496 MenhirLib.EngineTypes.state = _menhir_s;
6497 MenhirLib.EngineTypes.semv = _1;
6498 MenhirLib.EngineTypes.startp = _startpos__1_;
6499 MenhirLib.EngineTypes.endp = _endpos__1_;
6500 MenhirLib.EngineTypes.next = _menhir_stack;
6501 } = _menhir_stack in
6502 let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
6503 let _startpos = _startpos__1_ in
6504 let _endpos = _endpos__1_ in
6505 let _v : 'tv_cond_expr_expr_invalid_ =
6506 # 1540 "parser_cocci_menhir.mly"
6507 ( _1 )
6508 # 6482 "parser_cocci_menhir.ml"
6509 in
6510 _menhir_env.MenhirLib.EngineTypes.stack <- {
6511 MenhirLib.EngineTypes.state = _menhir_s;
6512 MenhirLib.EngineTypes.semv = Obj.repr _v;
6513 MenhirLib.EngineTypes.startp = _startpos;
6514 MenhirLib.EngineTypes.endp = _endpos;
6515 MenhirLib.EngineTypes.next = _menhir_stack;
6516 });
6517 (fun _menhir_env ->
6518 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6519 let {
6520 MenhirLib.EngineTypes.semv = r;
6521 MenhirLib.EngineTypes.startp = _startpos_r_;
6522 MenhirLib.EngineTypes.endp = _endpos_r_;
6523 MenhirLib.EngineTypes.next = {
6524 MenhirLib.EngineTypes.semv = dd;
6525 MenhirLib.EngineTypes.startp = _startpos_dd_;
6526 MenhirLib.EngineTypes.endp = _endpos_dd_;
6527 MenhirLib.EngineTypes.next = {
6528 MenhirLib.EngineTypes.semv = t;
6529 MenhirLib.EngineTypes.startp = _startpos_t_;
6530 MenhirLib.EngineTypes.endp = _endpos_t_;
6531 MenhirLib.EngineTypes.next = {
6532 MenhirLib.EngineTypes.semv = w;
6533 MenhirLib.EngineTypes.startp = _startpos_w_;
6534 MenhirLib.EngineTypes.endp = _endpos_w_;
6535 MenhirLib.EngineTypes.next = {
6536 MenhirLib.EngineTypes.state = _menhir_s;
6537 MenhirLib.EngineTypes.semv = l;
6538 MenhirLib.EngineTypes.startp = _startpos_l_;
6539 MenhirLib.EngineTypes.endp = _endpos_l_;
6540 MenhirLib.EngineTypes.next = _menhir_stack;
6541 };
6542 };
6543 };
6544 };
6545 } = _menhir_stack in
6546 let r : 'tv_eargexpr = Obj.magic r in
6547 let dd : (
6548 # 122 "parser_cocci_menhir.mly"
6549 (Data.clt)
6550 # 6524 "parser_cocci_menhir.ml"
6551 ) = Obj.magic dd in
6552 let t : 'tv_option_eexpr_ = Obj.magic t in
6553 let w : (
6554 # 122 "parser_cocci_menhir.mly"
6555 (Data.clt)
6556 # 6530 "parser_cocci_menhir.ml"
6557 ) = Obj.magic w in
6558 let l : 'tv_arith_expr_expr_invalid_ = Obj.magic l in
6559 let _startpos = _startpos_l_ in
6560 let _endpos = _endpos_r_ in
6561 let _v : 'tv_cond_expr_expr_invalid_ =
6562 # 1543 "parser_cocci_menhir.mly"
6563 ( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
6564 P.clt2mcode ":" dd, r)) )
6565 # 6539 "parser_cocci_menhir.ml"
6566 in
6567 _menhir_env.MenhirLib.EngineTypes.stack <- {
6568 MenhirLib.EngineTypes.state = _menhir_s;
6569 MenhirLib.EngineTypes.semv = Obj.repr _v;
6570 MenhirLib.EngineTypes.startp = _startpos;
6571 MenhirLib.EngineTypes.endp = _endpos;
6572 MenhirLib.EngineTypes.next = _menhir_stack;
6573 });
6574 (fun _menhir_env ->
6575 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6576 let {
6577 MenhirLib.EngineTypes.state = _menhir_s;
6578 MenhirLib.EngineTypes.semv = _1;
6579 MenhirLib.EngineTypes.startp = _startpos__1_;
6580 MenhirLib.EngineTypes.endp = _endpos__1_;
6581 MenhirLib.EngineTypes.next = _menhir_stack;
6582 } = _menhir_stack in
6583 let _1 : (
6584 # 96 "parser_cocci_menhir.mly"
6585 (Data.clt)
6586 # 6560 "parser_cocci_menhir.ml"
6587 ) = Obj.magic _1 in
6588 let _startpos = _startpos__1_ in
6589 let _endpos = _endpos__1_ in
6590 let _v : 'tv_const_vol =
6591 # 1089 "parser_cocci_menhir.mly"
6592 ( P.clt2mcode Ast.Const _1 )
6593 # 6567 "parser_cocci_menhir.ml"
6594 in
6595 _menhir_env.MenhirLib.EngineTypes.stack <- {
6596 MenhirLib.EngineTypes.state = _menhir_s;
6597 MenhirLib.EngineTypes.semv = Obj.repr _v;
6598 MenhirLib.EngineTypes.startp = _startpos;
6599 MenhirLib.EngineTypes.endp = _endpos;
6600 MenhirLib.EngineTypes.next = _menhir_stack;
6601 });
6602 (fun _menhir_env ->
6603 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6604 let {
6605 MenhirLib.EngineTypes.state = _menhir_s;
6606 MenhirLib.EngineTypes.semv = _1;
6607 MenhirLib.EngineTypes.startp = _startpos__1_;
6608 MenhirLib.EngineTypes.endp = _endpos__1_;
6609 MenhirLib.EngineTypes.next = _menhir_stack;
6610 } = _menhir_stack in
6611 let _1 : (
6612 # 96 "parser_cocci_menhir.mly"
6613 (Data.clt)
6614 # 6588 "parser_cocci_menhir.ml"
6615 ) = Obj.magic _1 in
6616 let _startpos = _startpos__1_ in
6617 let _endpos = _endpos__1_ in
6618 let _v : 'tv_const_vol =
6619 # 1090 "parser_cocci_menhir.mly"
6620 ( P.clt2mcode Ast.Volatile _1 )
6621 # 6595 "parser_cocci_menhir.ml"
6622 in
6623 _menhir_env.MenhirLib.EngineTypes.stack <- {
6624 MenhirLib.EngineTypes.state = _menhir_s;
6625 MenhirLib.EngineTypes.semv = Obj.repr _v;
6626 MenhirLib.EngineTypes.startp = _startpos;
6627 MenhirLib.EngineTypes.endp = _endpos;
6628 MenhirLib.EngineTypes.next = _menhir_stack;
6629 });
6630 (fun _menhir_env ->
6631 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6632 let {
6633 MenhirLib.EngineTypes.state = _menhir_s;
6634 MenhirLib.EngineTypes.semv = _1;
6635 MenhirLib.EngineTypes.startp = _startpos__1_;
6636 MenhirLib.EngineTypes.endp = _endpos__1_;
6637 MenhirLib.EngineTypes.next = _menhir_stack;
6638 } = _menhir_stack in
6639 let _1 : 'tv_aexpr = Obj.magic _1 in
6640 let _startpos = _startpos__1_ in
6641 let _endpos = _endpos__1_ in
6642 let _v : 'tv_continue_list_aexpr_TEllipsis_ =
6643 # 2127 "parser_cocci_menhir.mly"
6644 ( fun build_dots build_comma -> [_1] )
6645 # 6619 "parser_cocci_menhir.ml"
6646 in
6647 _menhir_env.MenhirLib.EngineTypes.stack <- {
6648 MenhirLib.EngineTypes.state = _menhir_s;
6649 MenhirLib.EngineTypes.semv = Obj.repr _v;
6650 MenhirLib.EngineTypes.startp = _startpos;
6651 MenhirLib.EngineTypes.endp = _endpos;
6652 MenhirLib.EngineTypes.next = _menhir_stack;
6653 });
6654 (fun _menhir_env ->
6655 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6656 let {
6657 MenhirLib.EngineTypes.semv = _2;
6658 MenhirLib.EngineTypes.startp = _startpos__2_;
6659 MenhirLib.EngineTypes.endp = _endpos__2_;
6660 MenhirLib.EngineTypes.next = {
6661 MenhirLib.EngineTypes.state = _menhir_s;
6662 MenhirLib.EngineTypes.semv = _1;
6663 MenhirLib.EngineTypes.startp = _startpos__1_;
6664 MenhirLib.EngineTypes.endp = _endpos__1_;
6665 MenhirLib.EngineTypes.next = _menhir_stack;
6666 };
6667 } = _menhir_stack in
6668 let _2 : (
6669 # 153 "parser_cocci_menhir.mly"
6670 (Data.clt)
6671 # 6645 "parser_cocci_menhir.ml"
6672 ) = Obj.magic _2 in
6673 let _1 : 'tv_aexpr = Obj.magic _1 in
6674 let _startpos = _startpos__1_ in
6675 let _endpos = _endpos__2_ in
6676 let _v : 'tv_continue_list_aexpr_TEllipsis_ =
6677 # 2129 "parser_cocci_menhir.mly"
6678 ( fun build_dots build_comma ->
6679 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
6680 # 6654 "parser_cocci_menhir.ml"
6681 in
6682 _menhir_env.MenhirLib.EngineTypes.stack <- {
6683 MenhirLib.EngineTypes.state = _menhir_s;
6684 MenhirLib.EngineTypes.semv = Obj.repr _v;
6685 MenhirLib.EngineTypes.startp = _startpos;
6686 MenhirLib.EngineTypes.endp = _endpos;
6687 MenhirLib.EngineTypes.next = _menhir_stack;
6688 });
6689 (fun _menhir_env ->
6690 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6691 let {
6692 MenhirLib.EngineTypes.semv = _3;
6693 MenhirLib.EngineTypes.startp = _startpos__3_;
6694 MenhirLib.EngineTypes.endp = _endpos__3_;
6695 MenhirLib.EngineTypes.next = {
6696 MenhirLib.EngineTypes.semv = _2;
6697 MenhirLib.EngineTypes.startp = _startpos__2_;
6698 MenhirLib.EngineTypes.endp = _endpos__2_;
6699 MenhirLib.EngineTypes.next = {
6700 MenhirLib.EngineTypes.state = _menhir_s;
6701 MenhirLib.EngineTypes.semv = _1;
6702 MenhirLib.EngineTypes.startp = _startpos__1_;
6703 MenhirLib.EngineTypes.endp = _endpos__1_;
6704 MenhirLib.EngineTypes.next = _menhir_stack;
6705 };
6706 };
6707 } = _menhir_stack in
6708 let _3 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _3 in
6709 let _2 : (
6710 # 153 "parser_cocci_menhir.mly"
6711 (Data.clt)
6712 # 6686 "parser_cocci_menhir.ml"
6713 ) = Obj.magic _2 in
6714 let _1 : 'tv_aexpr = Obj.magic _1 in
6715 let _startpos = _startpos__1_ in
6716 let _endpos = _endpos__3_ in
6717 let _v : 'tv_continue_list_aexpr_TEllipsis_ =
6718 # 2132 "parser_cocci_menhir.mly"
6719 ( fun build_dots build_comma ->
6720 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
6721 (_3 build_dots build_comma) )
6722 # 6696 "parser_cocci_menhir.ml"
6723 in
6724 _menhir_env.MenhirLib.EngineTypes.stack <- {
6725 MenhirLib.EngineTypes.state = _menhir_s;
6726 MenhirLib.EngineTypes.semv = Obj.repr _v;
6727 MenhirLib.EngineTypes.startp = _startpos;
6728 MenhirLib.EngineTypes.endp = _endpos;
6729 MenhirLib.EngineTypes.next = _menhir_stack;
6730 });
6731 (fun _menhir_env ->
6732 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6733 let {
6734 MenhirLib.EngineTypes.semv = _2;
6735 MenhirLib.EngineTypes.startp = _startpos__2_;
6736 MenhirLib.EngineTypes.endp = _endpos__2_;
6737 MenhirLib.EngineTypes.next = {
6738 MenhirLib.EngineTypes.state = _menhir_s;
6739 MenhirLib.EngineTypes.startp = _startpos__1_;
6740 MenhirLib.EngineTypes.endp = _endpos__1_;
6741 MenhirLib.EngineTypes.next = _menhir_stack;
6742 };
6743 } = _menhir_stack in
6744 let _2 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _2 in
6745 let _startpos = _startpos__1_ in
6746 let _endpos = _endpos__2_ in
6747 let _v : 'tv_continue_list_aexpr_TEllipsis_ =
6748 # 2135 "parser_cocci_menhir.mly"
6749 ( _2 )
6750 # 6724 "parser_cocci_menhir.ml"
6751 in
6752 _menhir_env.MenhirLib.EngineTypes.stack <- {
6753 MenhirLib.EngineTypes.state = _menhir_s;
6754 MenhirLib.EngineTypes.semv = Obj.repr _v;
6755 MenhirLib.EngineTypes.startp = _startpos;
6756 MenhirLib.EngineTypes.endp = _endpos;
6757 MenhirLib.EngineTypes.next = _menhir_stack;
6758 });
6759 (fun _menhir_env ->
6760 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6761 let {
6762 MenhirLib.EngineTypes.state = _menhir_s;
6763 MenhirLib.EngineTypes.semv = _1;
6764 MenhirLib.EngineTypes.startp = _startpos__1_;
6765 MenhirLib.EngineTypes.endp = _endpos__1_;
6766 MenhirLib.EngineTypes.next = _menhir_stack;
6767 } = _menhir_stack in
6768 let _1 : 'tv_dparam = Obj.magic _1 in
6769 let _startpos = _startpos__1_ in
6770 let _endpos = _endpos__1_ in
6771 let _v : 'tv_continue_list_dparam_TEllipsis_ =
6772 # 2127 "parser_cocci_menhir.mly"
6773 ( fun build_dots build_comma -> [_1] )
6774 # 6748 "parser_cocci_menhir.ml"
6775 in
6776 _menhir_env.MenhirLib.EngineTypes.stack <- {
6777 MenhirLib.EngineTypes.state = _menhir_s;
6778 MenhirLib.EngineTypes.semv = Obj.repr _v;
6779 MenhirLib.EngineTypes.startp = _startpos;
6780 MenhirLib.EngineTypes.endp = _endpos;
6781 MenhirLib.EngineTypes.next = _menhir_stack;
6782 });
6783 (fun _menhir_env ->
6784 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6785 let {
6786 MenhirLib.EngineTypes.semv = _2;
6787 MenhirLib.EngineTypes.startp = _startpos__2_;
6788 MenhirLib.EngineTypes.endp = _endpos__2_;
6789 MenhirLib.EngineTypes.next = {
6790 MenhirLib.EngineTypes.state = _menhir_s;
6791 MenhirLib.EngineTypes.semv = _1;
6792 MenhirLib.EngineTypes.startp = _startpos__1_;
6793 MenhirLib.EngineTypes.endp = _endpos__1_;
6794 MenhirLib.EngineTypes.next = _menhir_stack;
6795 };
6796 } = _menhir_stack in
6797 let _2 : (
6798 # 153 "parser_cocci_menhir.mly"
6799 (Data.clt)
6800 # 6774 "parser_cocci_menhir.ml"
6801 ) = Obj.magic _2 in
6802 let _1 : 'tv_dparam = Obj.magic _1 in
6803 let _startpos = _startpos__1_ in
6804 let _endpos = _endpos__2_ in
6805 let _v : 'tv_continue_list_dparam_TEllipsis_ =
6806 # 2129 "parser_cocci_menhir.mly"
6807 ( fun build_dots build_comma ->
6808 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
6809 # 6783 "parser_cocci_menhir.ml"
6810 in
6811 _menhir_env.MenhirLib.EngineTypes.stack <- {
6812 MenhirLib.EngineTypes.state = _menhir_s;
6813 MenhirLib.EngineTypes.semv = Obj.repr _v;
6814 MenhirLib.EngineTypes.startp = _startpos;
6815 MenhirLib.EngineTypes.endp = _endpos;
6816 MenhirLib.EngineTypes.next = _menhir_stack;
6817 });
6818 (fun _menhir_env ->
6819 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6820 let {
6821 MenhirLib.EngineTypes.semv = _3;
6822 MenhirLib.EngineTypes.startp = _startpos__3_;
6823 MenhirLib.EngineTypes.endp = _endpos__3_;
6824 MenhirLib.EngineTypes.next = {
6825 MenhirLib.EngineTypes.semv = _2;
6826 MenhirLib.EngineTypes.startp = _startpos__2_;
6827 MenhirLib.EngineTypes.endp = _endpos__2_;
6828 MenhirLib.EngineTypes.next = {
6829 MenhirLib.EngineTypes.state = _menhir_s;
6830 MenhirLib.EngineTypes.semv = _1;
6831 MenhirLib.EngineTypes.startp = _startpos__1_;
6832 MenhirLib.EngineTypes.endp = _endpos__1_;
6833 MenhirLib.EngineTypes.next = _menhir_stack;
6834 };
6835 };
6836 } = _menhir_stack in
6837 let _3 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _3 in
6838 let _2 : (
6839 # 153 "parser_cocci_menhir.mly"
6840 (Data.clt)
6841 # 6815 "parser_cocci_menhir.ml"
6842 ) = Obj.magic _2 in
6843 let _1 : 'tv_dparam = Obj.magic _1 in
6844 let _startpos = _startpos__1_ in
6845 let _endpos = _endpos__3_ in
6846 let _v : 'tv_continue_list_dparam_TEllipsis_ =
6847 # 2132 "parser_cocci_menhir.mly"
6848 ( fun build_dots build_comma ->
6849 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
6850 (_3 build_dots build_comma) )
6851 # 6825 "parser_cocci_menhir.ml"
6852 in
6853 _menhir_env.MenhirLib.EngineTypes.stack <- {
6854 MenhirLib.EngineTypes.state = _menhir_s;
6855 MenhirLib.EngineTypes.semv = Obj.repr _v;
6856 MenhirLib.EngineTypes.startp = _startpos;
6857 MenhirLib.EngineTypes.endp = _endpos;
6858 MenhirLib.EngineTypes.next = _menhir_stack;
6859 });
6860 (fun _menhir_env ->
6861 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6862 let {
6863 MenhirLib.EngineTypes.semv = _2;
6864 MenhirLib.EngineTypes.startp = _startpos__2_;
6865 MenhirLib.EngineTypes.endp = _endpos__2_;
6866 MenhirLib.EngineTypes.next = {
6867 MenhirLib.EngineTypes.state = _menhir_s;
6868 MenhirLib.EngineTypes.startp = _startpos__1_;
6869 MenhirLib.EngineTypes.endp = _endpos__1_;
6870 MenhirLib.EngineTypes.next = _menhir_stack;
6871 };
6872 } = _menhir_stack in
6873 let _2 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _2 in
6874 let _startpos = _startpos__1_ in
6875 let _endpos = _endpos__2_ in
6876 let _v : 'tv_continue_list_dparam_TEllipsis_ =
6877 # 2135 "parser_cocci_menhir.mly"
6878 ( _2 )
6879 # 6853 "parser_cocci_menhir.ml"
6880 in
6881 _menhir_env.MenhirLib.EngineTypes.stack <- {
6882 MenhirLib.EngineTypes.state = _menhir_s;
6883 MenhirLib.EngineTypes.semv = Obj.repr _v;
6884 MenhirLib.EngineTypes.startp = _startpos;
6885 MenhirLib.EngineTypes.endp = _endpos;
6886 MenhirLib.EngineTypes.next = _menhir_stack;
6887 });
6888 (fun _menhir_env ->
6889 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6890 let {
6891 MenhirLib.EngineTypes.state = _menhir_s;
6892 MenhirLib.EngineTypes.semv = _1;
6893 MenhirLib.EngineTypes.startp = _startpos__1_;
6894 MenhirLib.EngineTypes.endp = _endpos__1_;
6895 MenhirLib.EngineTypes.next = _menhir_stack;
6896 } = _menhir_stack in
6897 let _1 : 'tv_enum_decl_one = Obj.magic _1 in
6898 let _startpos = _startpos__1_ in
6899 let _endpos = _endpos__1_ in
6900 let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
6901 # 2127 "parser_cocci_menhir.mly"
6902 ( fun build_dots build_comma -> [_1] )
6903 # 6877 "parser_cocci_menhir.ml"
6904 in
6905 _menhir_env.MenhirLib.EngineTypes.stack <- {
6906 MenhirLib.EngineTypes.state = _menhir_s;
6907 MenhirLib.EngineTypes.semv = Obj.repr _v;
6908 MenhirLib.EngineTypes.startp = _startpos;
6909 MenhirLib.EngineTypes.endp = _endpos;
6910 MenhirLib.EngineTypes.next = _menhir_stack;
6911 });
6912 (fun _menhir_env ->
6913 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6914 let {
6915 MenhirLib.EngineTypes.semv = _2;
6916 MenhirLib.EngineTypes.startp = _startpos__2_;
6917 MenhirLib.EngineTypes.endp = _endpos__2_;
6918 MenhirLib.EngineTypes.next = {
6919 MenhirLib.EngineTypes.state = _menhir_s;
6920 MenhirLib.EngineTypes.semv = _1;
6921 MenhirLib.EngineTypes.startp = _startpos__1_;
6922 MenhirLib.EngineTypes.endp = _endpos__1_;
6923 MenhirLib.EngineTypes.next = _menhir_stack;
6924 };
6925 } = _menhir_stack in
6926 let _2 : (
6927 # 153 "parser_cocci_menhir.mly"
6928 (Data.clt)
6929 # 6903 "parser_cocci_menhir.ml"
6930 ) = Obj.magic _2 in
6931 let _1 : 'tv_enum_decl_one = Obj.magic _1 in
6932 let _startpos = _startpos__1_ in
6933 let _endpos = _endpos__2_ in
6934 let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
6935 # 2129 "parser_cocci_menhir.mly"
6936 ( fun build_dots build_comma ->
6937 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
6938 # 6912 "parser_cocci_menhir.ml"
6939 in
6940 _menhir_env.MenhirLib.EngineTypes.stack <- {
6941 MenhirLib.EngineTypes.state = _menhir_s;
6942 MenhirLib.EngineTypes.semv = Obj.repr _v;
6943 MenhirLib.EngineTypes.startp = _startpos;
6944 MenhirLib.EngineTypes.endp = _endpos;
6945 MenhirLib.EngineTypes.next = _menhir_stack;
6946 });
6947 (fun _menhir_env ->
6948 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6949 let {
6950 MenhirLib.EngineTypes.semv = _3;
6951 MenhirLib.EngineTypes.startp = _startpos__3_;
6952 MenhirLib.EngineTypes.endp = _endpos__3_;
6953 MenhirLib.EngineTypes.next = {
6954 MenhirLib.EngineTypes.semv = _2;
6955 MenhirLib.EngineTypes.startp = _startpos__2_;
6956 MenhirLib.EngineTypes.endp = _endpos__2_;
6957 MenhirLib.EngineTypes.next = {
6958 MenhirLib.EngineTypes.state = _menhir_s;
6959 MenhirLib.EngineTypes.semv = _1;
6960 MenhirLib.EngineTypes.startp = _startpos__1_;
6961 MenhirLib.EngineTypes.endp = _endpos__1_;
6962 MenhirLib.EngineTypes.next = _menhir_stack;
6963 };
6964 };
6965 } = _menhir_stack in
6966 let _3 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _3 in
6967 let _2 : (
6968 # 153 "parser_cocci_menhir.mly"
6969 (Data.clt)
6970 # 6944 "parser_cocci_menhir.ml"
6971 ) = Obj.magic _2 in
6972 let _1 : 'tv_enum_decl_one = Obj.magic _1 in
6973 let _startpos = _startpos__1_ in
6974 let _endpos = _endpos__3_ in
6975 let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
6976 # 2132 "parser_cocci_menhir.mly"
6977 ( fun build_dots build_comma ->
6978 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
6979 (_3 build_dots build_comma) )
6980 # 6954 "parser_cocci_menhir.ml"
6981 in
6982 _menhir_env.MenhirLib.EngineTypes.stack <- {
6983 MenhirLib.EngineTypes.state = _menhir_s;
6984 MenhirLib.EngineTypes.semv = Obj.repr _v;
6985 MenhirLib.EngineTypes.startp = _startpos;
6986 MenhirLib.EngineTypes.endp = _endpos;
6987 MenhirLib.EngineTypes.next = _menhir_stack;
6988 });
6989 (fun _menhir_env ->
6990 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
6991 let {
6992 MenhirLib.EngineTypes.semv = _2;
6993 MenhirLib.EngineTypes.startp = _startpos__2_;
6994 MenhirLib.EngineTypes.endp = _endpos__2_;
6995 MenhirLib.EngineTypes.next = {
6996 MenhirLib.EngineTypes.state = _menhir_s;
6997 MenhirLib.EngineTypes.startp = _startpos__1_;
6998 MenhirLib.EngineTypes.endp = _endpos__1_;
6999 MenhirLib.EngineTypes.next = _menhir_stack;
7000 };
7001 } = _menhir_stack in
7002 let _2 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _2 in
7003 let _startpos = _startpos__1_ in
7004 let _endpos = _endpos__2_ in
7005 let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
7006 # 2135 "parser_cocci_menhir.mly"
7007 ( _2 )
7008 # 6982 "parser_cocci_menhir.ml"
7009 in
7010 _menhir_env.MenhirLib.EngineTypes.stack <- {
7011 MenhirLib.EngineTypes.state = _menhir_s;
7012 MenhirLib.EngineTypes.semv = Obj.repr _v;
7013 MenhirLib.EngineTypes.startp = _startpos;
7014 MenhirLib.EngineTypes.endp = _endpos;
7015 MenhirLib.EngineTypes.next = _menhir_stack;
7016 });
7017 (fun _menhir_env ->
7018 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7019 let {
7020 MenhirLib.EngineTypes.state = _menhir_s;
7021 MenhirLib.EngineTypes.semv = _1;
7022 MenhirLib.EngineTypes.startp = _startpos__1_;
7023 MenhirLib.EngineTypes.endp = _endpos__1_;
7024 MenhirLib.EngineTypes.next = _menhir_stack;
7025 } = _menhir_stack in
7026 let _1 : 'tv_initialize2 = Obj.magic _1 in
7027 let _startpos = _startpos__1_ in
7028 let _endpos = _endpos__1_ in
7029 let _v : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ =
7030 # 2127 "parser_cocci_menhir.mly"
7031 ( fun build_dots build_comma -> [_1] )
7032 # 7006 "parser_cocci_menhir.ml"
7033 in
7034 _menhir_env.MenhirLib.EngineTypes.stack <- {
7035 MenhirLib.EngineTypes.state = _menhir_s;
7036 MenhirLib.EngineTypes.semv = Obj.repr _v;
7037 MenhirLib.EngineTypes.startp = _startpos;
7038 MenhirLib.EngineTypes.endp = _endpos;
7039 MenhirLib.EngineTypes.next = _menhir_stack;
7040 });
7041 (fun _menhir_env ->
7042 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7043 let {
7044 MenhirLib.EngineTypes.semv = _2;
7045 MenhirLib.EngineTypes.startp = _startpos__2_;
7046 MenhirLib.EngineTypes.endp = _endpos__2_;
7047 MenhirLib.EngineTypes.next = {
7048 MenhirLib.EngineTypes.state = _menhir_s;
7049 MenhirLib.EngineTypes.semv = _1;
7050 MenhirLib.EngineTypes.startp = _startpos__1_;
7051 MenhirLib.EngineTypes.endp = _endpos__1_;
7052 MenhirLib.EngineTypes.next = _menhir_stack;
7053 };
7054 } = _menhir_stack in
7055 let _2 : (
7056 # 153 "parser_cocci_menhir.mly"
7057 (Data.clt)
7058 # 7032 "parser_cocci_menhir.ml"
7059 ) = Obj.magic _2 in
7060 let _1 : 'tv_initialize2 = Obj.magic _1 in
7061 let _startpos = _startpos__1_ in
7062 let _endpos = _endpos__2_ in
7063 let _v : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ =
7064 # 2129 "parser_cocci_menhir.mly"
7065 ( fun build_dots build_comma ->
7066 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
7067 # 7041 "parser_cocci_menhir.ml"
7068 in
7069 _menhir_env.MenhirLib.EngineTypes.stack <- {
7070 MenhirLib.EngineTypes.state = _menhir_s;
7071 MenhirLib.EngineTypes.semv = Obj.repr _v;
7072 MenhirLib.EngineTypes.startp = _startpos;
7073 MenhirLib.EngineTypes.endp = _endpos;
7074 MenhirLib.EngineTypes.next = _menhir_stack;
7075 });
7076 (fun _menhir_env ->
7077 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7078 let {
7079 MenhirLib.EngineTypes.semv = _3;
7080 MenhirLib.EngineTypes.startp = _startpos__3_;
7081 MenhirLib.EngineTypes.endp = _endpos__3_;
7082 MenhirLib.EngineTypes.next = {
7083 MenhirLib.EngineTypes.semv = _2;
7084 MenhirLib.EngineTypes.startp = _startpos__2_;
7085 MenhirLib.EngineTypes.endp = _endpos__2_;
7086 MenhirLib.EngineTypes.next = {
7087 MenhirLib.EngineTypes.state = _menhir_s;
7088 MenhirLib.EngineTypes.semv = _1;
7089 MenhirLib.EngineTypes.startp = _startpos__1_;
7090 MenhirLib.EngineTypes.endp = _endpos__1_;
7091 MenhirLib.EngineTypes.next = _menhir_stack;
7092 };
7093 };
7094 } = _menhir_stack in
7095 let _3 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _3 in
7096 let _2 : (
7097 # 153 "parser_cocci_menhir.mly"
7098 (Data.clt)
7099 # 7073 "parser_cocci_menhir.ml"
7100 ) = Obj.magic _2 in
7101 let _1 : 'tv_initialize2 = Obj.magic _1 in
7102 let _startpos = _startpos__1_ in
7103 let _endpos = _endpos__3_ in
7104 let _v : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ =
7105 # 2132 "parser_cocci_menhir.mly"
7106 ( fun build_dots build_comma ->
7107 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
7108 (_3 build_dots build_comma) )
7109 # 7083 "parser_cocci_menhir.ml"
7110 in
7111 _menhir_env.MenhirLib.EngineTypes.stack <- {
7112 MenhirLib.EngineTypes.state = _menhir_s;
7113 MenhirLib.EngineTypes.semv = Obj.repr _v;
7114 MenhirLib.EngineTypes.startp = _startpos;
7115 MenhirLib.EngineTypes.endp = _endpos;
7116 MenhirLib.EngineTypes.next = _menhir_stack;
7117 });
7118 (fun _menhir_env ->
7119 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7120 let {
7121 MenhirLib.EngineTypes.semv = _2;
7122 MenhirLib.EngineTypes.startp = _startpos__2_;
7123 MenhirLib.EngineTypes.endp = _endpos__2_;
7124 MenhirLib.EngineTypes.next = {
7125 MenhirLib.EngineTypes.state = _menhir_s;
7126 MenhirLib.EngineTypes.startp = _startpos__1_;
7127 MenhirLib.EngineTypes.endp = _endpos__1_;
7128 MenhirLib.EngineTypes.next = _menhir_stack;
7129 };
7130 } = _menhir_stack in
7131 let _2 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _2 in
7132 let _startpos = _startpos__1_ in
7133 let _endpos = _endpos__2_ in
7134 let _v : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ =
7135 # 2135 "parser_cocci_menhir.mly"
7136 ( _2 )
7137 # 7111 "parser_cocci_menhir.ml"
7138 in
7139 _menhir_env.MenhirLib.EngineTypes.stack <- {
7140 MenhirLib.EngineTypes.state = _menhir_s;
7141 MenhirLib.EngineTypes.semv = Obj.repr _v;
7142 MenhirLib.EngineTypes.startp = _startpos;
7143 MenhirLib.EngineTypes.endp = _endpos;
7144 MenhirLib.EngineTypes.next = _menhir_stack;
7145 });
7146 (fun _menhir_env ->
7147 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7148 let {
7149 MenhirLib.EngineTypes.state = _menhir_s;
7150 MenhirLib.EngineTypes.semv = _1;
7151 MenhirLib.EngineTypes.startp = _startpos__1_;
7152 MenhirLib.EngineTypes.endp = _endpos__1_;
7153 MenhirLib.EngineTypes.next = _menhir_stack;
7154 } = _menhir_stack in
7155 let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
7156 let _startpos = _startpos__1_ in
7157 let _endpos = _endpos__1_ in
7158 let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ =
7159 # 2127 "parser_cocci_menhir.mly"
7160 ( fun build_dots build_comma -> [_1] )
7161 # 7135 "parser_cocci_menhir.ml"
7162 in
7163 _menhir_env.MenhirLib.EngineTypes.stack <- {
7164 MenhirLib.EngineTypes.state = _menhir_s;
7165 MenhirLib.EngineTypes.semv = Obj.repr _v;
7166 MenhirLib.EngineTypes.startp = _startpos;
7167 MenhirLib.EngineTypes.endp = _endpos;
7168 MenhirLib.EngineTypes.next = _menhir_stack;
7169 });
7170 (fun _menhir_env ->
7171 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7172 let {
7173 MenhirLib.EngineTypes.semv = _2;
7174 MenhirLib.EngineTypes.startp = _startpos__2_;
7175 MenhirLib.EngineTypes.endp = _endpos__2_;
7176 MenhirLib.EngineTypes.next = {
7177 MenhirLib.EngineTypes.state = _menhir_s;
7178 MenhirLib.EngineTypes.semv = _1;
7179 MenhirLib.EngineTypes.startp = _startpos__1_;
7180 MenhirLib.EngineTypes.endp = _endpos__1_;
7181 MenhirLib.EngineTypes.next = _menhir_stack;
7182 };
7183 } = _menhir_stack in
7184 let _2 : (
7185 # 153 "parser_cocci_menhir.mly"
7186 (Data.clt)
7187 # 7161 "parser_cocci_menhir.ml"
7188 ) = Obj.magic _2 in
7189 let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
7190 let _startpos = _startpos__1_ in
7191 let _endpos = _endpos__2_ in
7192 let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ =
7193 # 2129 "parser_cocci_menhir.mly"
7194 ( fun build_dots build_comma ->
7195 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
7196 # 7170 "parser_cocci_menhir.ml"
7197 in
7198 _menhir_env.MenhirLib.EngineTypes.stack <- {
7199 MenhirLib.EngineTypes.state = _menhir_s;
7200 MenhirLib.EngineTypes.semv = Obj.repr _v;
7201 MenhirLib.EngineTypes.startp = _startpos;
7202 MenhirLib.EngineTypes.endp = _endpos;
7203 MenhirLib.EngineTypes.next = _menhir_stack;
7204 });
7205 (fun _menhir_env ->
7206 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7207 let {
7208 MenhirLib.EngineTypes.semv = _3;
7209 MenhirLib.EngineTypes.startp = _startpos__3_;
7210 MenhirLib.EngineTypes.endp = _endpos__3_;
7211 MenhirLib.EngineTypes.next = {
7212 MenhirLib.EngineTypes.semv = _2;
7213 MenhirLib.EngineTypes.startp = _startpos__2_;
7214 MenhirLib.EngineTypes.endp = _endpos__2_;
7215 MenhirLib.EngineTypes.next = {
7216 MenhirLib.EngineTypes.state = _menhir_s;
7217 MenhirLib.EngineTypes.semv = _1;
7218 MenhirLib.EngineTypes.startp = _startpos__1_;
7219 MenhirLib.EngineTypes.endp = _endpos__1_;
7220 MenhirLib.EngineTypes.next = _menhir_stack;
7221 };
7222 };
7223 } = _menhir_stack in
7224 let _3 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _3 in
7225 let _2 : (
7226 # 153 "parser_cocci_menhir.mly"
7227 (Data.clt)
7228 # 7202 "parser_cocci_menhir.ml"
7229 ) = Obj.magic _2 in
7230 let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
7231 let _startpos = _startpos__1_ in
7232 let _endpos = _endpos__3_ in
7233 let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ =
7234 # 2132 "parser_cocci_menhir.mly"
7235 ( fun build_dots build_comma ->
7236 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
7237 (_3 build_dots build_comma) )
7238 # 7212 "parser_cocci_menhir.ml"
7239 in
7240 _menhir_env.MenhirLib.EngineTypes.stack <- {
7241 MenhirLib.EngineTypes.state = _menhir_s;
7242 MenhirLib.EngineTypes.semv = Obj.repr _v;
7243 MenhirLib.EngineTypes.startp = _startpos;
7244 MenhirLib.EngineTypes.endp = _endpos;
7245 MenhirLib.EngineTypes.next = _menhir_stack;
7246 });
7247 (fun _menhir_env ->
7248 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7249 let {
7250 MenhirLib.EngineTypes.semv = _2;
7251 MenhirLib.EngineTypes.startp = _startpos__2_;
7252 MenhirLib.EngineTypes.endp = _endpos__2_;
7253 MenhirLib.EngineTypes.next = {
7254 MenhirLib.EngineTypes.state = _menhir_s;
7255 MenhirLib.EngineTypes.startp = _startpos__1_;
7256 MenhirLib.EngineTypes.endp = _endpos__1_;
7257 MenhirLib.EngineTypes.next = _menhir_stack;
7258 };
7259 } = _menhir_stack in
7260 let _2 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _2 in
7261 let _startpos = _startpos__1_ in
7262 let _endpos = _endpos__2_ in
7263 let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ =
7264 # 2135 "parser_cocci_menhir.mly"
7265 ( _2 )
7266 # 7240 "parser_cocci_menhir.ml"
7267 in
7268 _menhir_env.MenhirLib.EngineTypes.stack <- {
7269 MenhirLib.EngineTypes.state = _menhir_s;
7270 MenhirLib.EngineTypes.semv = Obj.repr _v;
7271 MenhirLib.EngineTypes.startp = _startpos;
7272 MenhirLib.EngineTypes.endp = _endpos;
7273 MenhirLib.EngineTypes.next = _menhir_stack;
7274 });
7275 (fun _menhir_env ->
7276 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7277 let {
7278 MenhirLib.EngineTypes.state = _menhir_s;
7279 MenhirLib.EngineTypes.semv = _1;
7280 MenhirLib.EngineTypes.startp = _startpos__1_;
7281 MenhirLib.EngineTypes.endp = _endpos__1_;
7282 MenhirLib.EngineTypes.next = _menhir_stack;
7283 } = _menhir_stack in
7284 let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
7285 let _startpos = _startpos__1_ in
7286 let _endpos = _endpos__1_ in
7287 let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ =
7288 # 2127 "parser_cocci_menhir.mly"
7289 ( fun build_dots build_comma -> [_1] )
7290 # 7264 "parser_cocci_menhir.ml"
7291 in
7292 _menhir_env.MenhirLib.EngineTypes.stack <- {
7293 MenhirLib.EngineTypes.state = _menhir_s;
7294 MenhirLib.EngineTypes.semv = Obj.repr _v;
7295 MenhirLib.EngineTypes.startp = _startpos;
7296 MenhirLib.EngineTypes.endp = _endpos;
7297 MenhirLib.EngineTypes.next = _menhir_stack;
7298 });
7299 (fun _menhir_env ->
7300 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7301 let {
7302 MenhirLib.EngineTypes.semv = _2;
7303 MenhirLib.EngineTypes.startp = _startpos__2_;
7304 MenhirLib.EngineTypes.endp = _endpos__2_;
7305 MenhirLib.EngineTypes.next = {
7306 MenhirLib.EngineTypes.state = _menhir_s;
7307 MenhirLib.EngineTypes.semv = _1;
7308 MenhirLib.EngineTypes.startp = _startpos__1_;
7309 MenhirLib.EngineTypes.endp = _endpos__1_;
7310 MenhirLib.EngineTypes.next = _menhir_stack;
7311 };
7312 } = _menhir_stack in
7313 let _2 : (
7314 # 153 "parser_cocci_menhir.mly"
7315 (Data.clt)
7316 # 7290 "parser_cocci_menhir.ml"
7317 ) = Obj.magic _2 in
7318 let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
7319 let _startpos = _startpos__1_ in
7320 let _endpos = _endpos__2_ in
7321 let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ =
7322 # 2129 "parser_cocci_menhir.mly"
7323 ( fun build_dots build_comma ->
7324 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
7325 # 7299 "parser_cocci_menhir.ml"
7326 in
7327 _menhir_env.MenhirLib.EngineTypes.stack <- {
7328 MenhirLib.EngineTypes.state = _menhir_s;
7329 MenhirLib.EngineTypes.semv = Obj.repr _v;
7330 MenhirLib.EngineTypes.startp = _startpos;
7331 MenhirLib.EngineTypes.endp = _endpos;
7332 MenhirLib.EngineTypes.next = _menhir_stack;
7333 });
7334 (fun _menhir_env ->
7335 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7336 let {
7337 MenhirLib.EngineTypes.semv = _3;
7338 MenhirLib.EngineTypes.startp = _startpos__3_;
7339 MenhirLib.EngineTypes.endp = _endpos__3_;
7340 MenhirLib.EngineTypes.next = {
7341 MenhirLib.EngineTypes.semv = _2;
7342 MenhirLib.EngineTypes.startp = _startpos__2_;
7343 MenhirLib.EngineTypes.endp = _endpos__2_;
7344 MenhirLib.EngineTypes.next = {
7345 MenhirLib.EngineTypes.state = _menhir_s;
7346 MenhirLib.EngineTypes.semv = _1;
7347 MenhirLib.EngineTypes.startp = _startpos__1_;
7348 MenhirLib.EngineTypes.endp = _endpos__1_;
7349 MenhirLib.EngineTypes.next = _menhir_stack;
7350 };
7351 };
7352 } = _menhir_stack in
7353 let _3 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _3 in
7354 let _2 : (
7355 # 153 "parser_cocci_menhir.mly"
7356 (Data.clt)
7357 # 7331 "parser_cocci_menhir.ml"
7358 ) = Obj.magic _2 in
7359 let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
7360 let _startpos = _startpos__1_ in
7361 let _endpos = _endpos__3_ in
7362 let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ =
7363 # 2132 "parser_cocci_menhir.mly"
7364 ( fun build_dots build_comma ->
7365 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
7366 (_3 build_dots build_comma) )
7367 # 7341 "parser_cocci_menhir.ml"
7368 in
7369 _menhir_env.MenhirLib.EngineTypes.stack <- {
7370 MenhirLib.EngineTypes.state = _menhir_s;
7371 MenhirLib.EngineTypes.semv = Obj.repr _v;
7372 MenhirLib.EngineTypes.startp = _startpos;
7373 MenhirLib.EngineTypes.endp = _endpos;
7374 MenhirLib.EngineTypes.next = _menhir_stack;
7375 });
7376 (fun _menhir_env ->
7377 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7378 let {
7379 MenhirLib.EngineTypes.semv = _2;
7380 MenhirLib.EngineTypes.startp = _startpos__2_;
7381 MenhirLib.EngineTypes.endp = _endpos__2_;
7382 MenhirLib.EngineTypes.next = {
7383 MenhirLib.EngineTypes.state = _menhir_s;
7384 MenhirLib.EngineTypes.startp = _startpos__1_;
7385 MenhirLib.EngineTypes.endp = _endpos__1_;
7386 MenhirLib.EngineTypes.next = _menhir_stack;
7387 };
7388 } = _menhir_stack in
7389 let _2 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _2 in
7390 let _startpos = _startpos__1_ in
7391 let _endpos = _endpos__2_ in
7392 let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ =
7393 # 2135 "parser_cocci_menhir.mly"
7394 ( _2 )
7395 # 7369 "parser_cocci_menhir.ml"
7396 in
7397 _menhir_env.MenhirLib.EngineTypes.stack <- {
7398 MenhirLib.EngineTypes.state = _menhir_s;
7399 MenhirLib.EngineTypes.semv = Obj.repr _v;
7400 MenhirLib.EngineTypes.startp = _startpos;
7401 MenhirLib.EngineTypes.endp = _endpos;
7402 MenhirLib.EngineTypes.next = _menhir_stack;
7403 });
7404 (fun _menhir_env ->
7405 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7406 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
7407 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
7408 let _endpos = _startpos in
7409 let _v : 'tv_continue_struct_decl_list =
7410 # 789 "parser_cocci_menhir.mly"
7411 ( [] )
7412 # 7386 "parser_cocci_menhir.ml"
7413 in
7414 _menhir_env.MenhirLib.EngineTypes.stack <- {
7415 MenhirLib.EngineTypes.state = _menhir_s;
7416 MenhirLib.EngineTypes.semv = Obj.repr _v;
7417 MenhirLib.EngineTypes.startp = _startpos;
7418 MenhirLib.EngineTypes.endp = _endpos;
7419 MenhirLib.EngineTypes.next = _menhir_stack;
7420 });
7421 (fun _menhir_env ->
7422 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7423 let {
7424 MenhirLib.EngineTypes.semv = _2;
7425 MenhirLib.EngineTypes.startp = _startpos__2_;
7426 MenhirLib.EngineTypes.endp = _endpos__2_;
7427 MenhirLib.EngineTypes.next = {
7428 MenhirLib.EngineTypes.state = _menhir_s;
7429 MenhirLib.EngineTypes.semv = _1;
7430 MenhirLib.EngineTypes.startp = _startpos__1_;
7431 MenhirLib.EngineTypes.endp = _endpos__1_;
7432 MenhirLib.EngineTypes.next = _menhir_stack;
7433 };
7434 } = _menhir_stack in
7435 let _2 : 'tv_struct_decl_list_start = Obj.magic _2 in
7436 let _1 : 'tv_struct_decl = Obj.magic _1 in
7437 let _startpos = _startpos__1_ in
7438 let _endpos = _endpos__2_ in
7439 let _v : 'tv_continue_struct_decl_list =
7440 # 790 "parser_cocci_menhir.mly"
7441 ( _1@_2 )
7442 # 7416 "parser_cocci_menhir.ml"
7443 in
7444 _menhir_env.MenhirLib.EngineTypes.stack <- {
7445 MenhirLib.EngineTypes.state = _menhir_s;
7446 MenhirLib.EngineTypes.semv = Obj.repr _v;
7447 MenhirLib.EngineTypes.startp = _startpos;
7448 MenhirLib.EngineTypes.endp = _endpos;
7449 MenhirLib.EngineTypes.next = _menhir_stack;
7450 });
7451 (fun _menhir_env ->
7452 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7453 let {
7454 MenhirLib.EngineTypes.state = _menhir_s;
7455 MenhirLib.EngineTypes.semv = _1;
7456 MenhirLib.EngineTypes.startp = _startpos__1_;
7457 MenhirLib.EngineTypes.endp = _endpos__1_;
7458 MenhirLib.EngineTypes.next = _menhir_stack;
7459 } = _menhir_stack in
7460 let _1 : 'tv_struct_decl = Obj.magic _1 in
7461 let _startpos = _startpos__1_ in
7462 let _endpos = _endpos__1_ in
7463 let _v : 'tv_continue_struct_decl_list =
7464 # 791 "parser_cocci_menhir.mly"
7465 ( _1 )
7466 # 7440 "parser_cocci_menhir.ml"
7467 in
7468 _menhir_env.MenhirLib.EngineTypes.stack <- {
7469 MenhirLib.EngineTypes.state = _menhir_s;
7470 MenhirLib.EngineTypes.semv = Obj.repr _v;
7471 MenhirLib.EngineTypes.startp = _startpos;
7472 MenhirLib.EngineTypes.endp = _endpos;
7473 MenhirLib.EngineTypes.next = _menhir_stack;
7474 });
7475 (fun _menhir_env ->
7476 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7477 let {
7478 MenhirLib.EngineTypes.semv = m;
7479 MenhirLib.EngineTypes.startp = _startpos_m_;
7480 MenhirLib.EngineTypes.endp = _endpos_m_;
7481 MenhirLib.EngineTypes.next = {
7482 MenhirLib.EngineTypes.state = _menhir_s;
7483 MenhirLib.EngineTypes.semv = ty;
7484 MenhirLib.EngineTypes.startp = _startpos_ty_;
7485 MenhirLib.EngineTypes.endp = _endpos_ty_;
7486 MenhirLib.EngineTypes.next = _menhir_stack;
7487 };
7488 } = _menhir_stack in
7489 let m : 'tv_list_mul_ = Obj.magic m in
7490 let ty : 'tv_all_basic_types = Obj.magic ty in
7491 let _startpos = _startpos_ty_ in
7492 let _endpos = _endpos_m_ in
7493 let _v : 'tv_ctype = let cv =
7494
7495 # 39 "standard.mly"
7496 ( None )
7497 # 7471 "parser_cocci_menhir.ml"
7498
7499 in
7500
7501 # 714 "parser_cocci_menhir.mly"
7502 ( List.fold_left
7503 (function prev ->
7504 function (star,cv) ->
7505 P.make_cv cv (P.pointerify prev [star]))
7506 (P.make_cv cv ty) m )
7507 # 7481 "parser_cocci_menhir.ml"
7508 in
7509 _menhir_env.MenhirLib.EngineTypes.stack <- {
7510 MenhirLib.EngineTypes.state = _menhir_s;
7511 MenhirLib.EngineTypes.semv = Obj.repr _v;
7512 MenhirLib.EngineTypes.startp = _startpos;
7513 MenhirLib.EngineTypes.endp = _endpos;
7514 MenhirLib.EngineTypes.next = _menhir_stack;
7515 });
7516 (fun _menhir_env ->
7517 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7518 let {
7519 MenhirLib.EngineTypes.semv = m;
7520 MenhirLib.EngineTypes.startp = _startpos_m_;
7521 MenhirLib.EngineTypes.endp = _endpos_m_;
7522 MenhirLib.EngineTypes.next = {
7523 MenhirLib.EngineTypes.semv = ty;
7524 MenhirLib.EngineTypes.startp = _startpos_ty_;
7525 MenhirLib.EngineTypes.endp = _endpos_ty_;
7526 MenhirLib.EngineTypes.next = {
7527 MenhirLib.EngineTypes.state = _menhir_s;
7528 MenhirLib.EngineTypes.semv = x0;
7529 MenhirLib.EngineTypes.startp = _startpos_x0_;
7530 MenhirLib.EngineTypes.endp = _endpos_x0_;
7531 MenhirLib.EngineTypes.next = _menhir_stack;
7532 };
7533 };
7534 } = _menhir_stack in
7535 let m : 'tv_list_mul_ = Obj.magic m in
7536 let ty : 'tv_all_basic_types = Obj.magic ty in
7537 let x0 : 'tv_const_vol = Obj.magic x0 in
7538 let _startpos = _startpos_x0_ in
7539 let _endpos = _endpos_m_ in
7540 let _v : 'tv_ctype = let cv =
7541 let x = x0 in
7542
7543 # 41 "standard.mly"
7544 ( Some x )
7545 # 7519 "parser_cocci_menhir.ml"
7546
7547 in
7548
7549 # 714 "parser_cocci_menhir.mly"
7550 ( List.fold_left
7551 (function prev ->
7552 function (star,cv) ->
7553 P.make_cv cv (P.pointerify prev [star]))
7554 (P.make_cv cv ty) m )
7555 # 7529 "parser_cocci_menhir.ml"
7556 in
7557 _menhir_env.MenhirLib.EngineTypes.stack <- {
7558 MenhirLib.EngineTypes.state = _menhir_s;
7559 MenhirLib.EngineTypes.semv = Obj.repr _v;
7560 MenhirLib.EngineTypes.startp = _startpos;
7561 MenhirLib.EngineTypes.endp = _endpos;
7562 MenhirLib.EngineTypes.next = _menhir_stack;
7563 });
7564 (fun _menhir_env ->
7565 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7566 let {
7567 MenhirLib.EngineTypes.state = _menhir_s;
7568 MenhirLib.EngineTypes.semv = r;
7569 MenhirLib.EngineTypes.startp = _startpos_r_;
7570 MenhirLib.EngineTypes.endp = _endpos_r_;
7571 MenhirLib.EngineTypes.next = _menhir_stack;
7572 } = _menhir_stack in
7573 let r : (
7574 # 93 "parser_cocci_menhir.mly"
7575 (Data.clt)
7576 # 7550 "parser_cocci_menhir.ml"
7577 ) = Obj.magic r in
7578 let _startpos = _startpos_r_ in
7579 let _endpos = _endpos_r_ in
7580 let _v : 'tv_ctype =
7581 # 720 "parser_cocci_menhir.mly"
7582 ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,None)) )
7583 # 7557 "parser_cocci_menhir.ml"
7584 in
7585 _menhir_env.MenhirLib.EngineTypes.stack <- {
7586 MenhirLib.EngineTypes.state = _menhir_s;
7587 MenhirLib.EngineTypes.semv = Obj.repr _v;
7588 MenhirLib.EngineTypes.startp = _startpos;
7589 MenhirLib.EngineTypes.endp = _endpos;
7590 MenhirLib.EngineTypes.next = _menhir_stack;
7591 });
7592 (fun _menhir_env ->
7593 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7594 let {
7595 MenhirLib.EngineTypes.state = _menhir_s;
7596 MenhirLib.EngineTypes.semv = r;
7597 MenhirLib.EngineTypes.startp = _startpos_r_;
7598 MenhirLib.EngineTypes.endp = _endpos_r_;
7599 MenhirLib.EngineTypes.next = _menhir_stack;
7600 } = _menhir_stack in
7601 let r : (
7602 # 93 "parser_cocci_menhir.mly"
7603 (Data.clt)
7604 # 7578 "parser_cocci_menhir.ml"
7605 ) = Obj.magic r in
7606 let _startpos = _startpos_r_ in
7607 let _endpos = _endpos_r_ in
7608 let _v : 'tv_ctype =
7609 # 722 "parser_cocci_menhir.mly"
7610 ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,None)) )
7611 # 7585 "parser_cocci_menhir.ml"
7612 in
7613 _menhir_env.MenhirLib.EngineTypes.stack <- {
7614 MenhirLib.EngineTypes.state = _menhir_s;
7615 MenhirLib.EngineTypes.semv = Obj.repr _v;
7616 MenhirLib.EngineTypes.startp = _startpos;
7617 MenhirLib.EngineTypes.endp = _endpos;
7618 MenhirLib.EngineTypes.next = _menhir_stack;
7619 });
7620 (fun _menhir_env ->
7621 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7622 let {
7623 MenhirLib.EngineTypes.semv = rp;
7624 MenhirLib.EngineTypes.startp = _startpos_rp_;
7625 MenhirLib.EngineTypes.endp = _endpos_rp_;
7626 MenhirLib.EngineTypes.next = {
7627 MenhirLib.EngineTypes.semv = t;
7628 MenhirLib.EngineTypes.startp = _startpos_t_;
7629 MenhirLib.EngineTypes.endp = _endpos_t_;
7630 MenhirLib.EngineTypes.next = {
7631 MenhirLib.EngineTypes.state = _menhir_s;
7632 MenhirLib.EngineTypes.semv = lp;
7633 MenhirLib.EngineTypes.startp = _startpos_lp_;
7634 MenhirLib.EngineTypes.endp = _endpos_lp_;
7635 MenhirLib.EngineTypes.next = _menhir_stack;
7636 };
7637 };
7638 } = _menhir_stack in
7639 let rp : (
7640 # 123 "parser_cocci_menhir.mly"
7641 (Data.clt)
7642 # 7616 "parser_cocci_menhir.ml"
7643 ) = Obj.magic rp in
7644 let t : 'tv_midzero_list_ctype_ctype_ = Obj.magic t in
7645 let lp : (
7646 # 122 "parser_cocci_menhir.mly"
7647 (Data.clt)
7648 # 7622 "parser_cocci_menhir.ml"
7649 ) = Obj.magic lp in
7650 let _startpos = _startpos_lp_ in
7651 let _endpos = _endpos_rp_ in
7652 let _v : 'tv_ctype =
7653 # 724 "parser_cocci_menhir.mly"
7654 ( let (mids,code) = t in
7655 Ast0.wrap
7656 (Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) )
7657 # 7631 "parser_cocci_menhir.ml"
7658 in
7659 _menhir_env.MenhirLib.EngineTypes.stack <- {
7660 MenhirLib.EngineTypes.state = _menhir_s;
7661 MenhirLib.EngineTypes.semv = Obj.repr _v;
7662 MenhirLib.EngineTypes.startp = _startpos;
7663 MenhirLib.EngineTypes.endp = _endpos;
7664 MenhirLib.EngineTypes.next = _menhir_stack;
7665 });
7666 (fun _menhir_env ->
7667 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7668 let {
7669 MenhirLib.EngineTypes.semv = _2;
7670 MenhirLib.EngineTypes.startp = _startpos__2_;
7671 MenhirLib.EngineTypes.endp = _endpos__2_;
7672 MenhirLib.EngineTypes.next = {
7673 MenhirLib.EngineTypes.state = _menhir_s;
7674 MenhirLib.EngineTypes.semv = _1;
7675 MenhirLib.EngineTypes.startp = _startpos__1_;
7676 MenhirLib.EngineTypes.endp = _endpos__1_;
7677 MenhirLib.EngineTypes.next = _menhir_stack;
7678 };
7679 } = _menhir_stack in
7680 let _2 : 'tv_list_array_dec_ = Obj.magic _2 in
7681 let _1 : 'tv_disj_ident = Obj.magic _1 in
7682 let _startpos = _startpos__1_ in
7683 let _endpos = _endpos__2_ in
7684 let _v : 'tv_d_ident =
7685 # 1334 "parser_cocci_menhir.mly"
7686 ( (_1, function t -> P.arrayify t _2) )
7687 # 7661 "parser_cocci_menhir.ml"
7688 in
7689 _menhir_env.MenhirLib.EngineTypes.stack <- {
7690 MenhirLib.EngineTypes.state = _menhir_s;
7691 MenhirLib.EngineTypes.semv = Obj.repr _v;
7692 MenhirLib.EngineTypes.startp = _startpos;
7693 MenhirLib.EngineTypes.endp = _endpos;
7694 MenhirLib.EngineTypes.next = _menhir_stack;
7695 });
7696 (fun _menhir_env ->
7697 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7698 let {
7699 MenhirLib.EngineTypes.state = _menhir_s;
7700 MenhirLib.EngineTypes.semv = _1;
7701 MenhirLib.EngineTypes.startp = _startpos__1_;
7702 MenhirLib.EngineTypes.endp = _endpos__1_;
7703 MenhirLib.EngineTypes.next = _menhir_stack;
7704 } = _menhir_stack in
7705 let _1 : 'tv_basic_expr_eexpr_nest_expressions_ = Obj.magic _1 in
7706 let _startpos = _startpos__1_ in
7707 let _endpos = _endpos__1_ in
7708 let _v : 'tv_dargexpr =
7709 # 1472 "parser_cocci_menhir.mly"
7710 ( _1 )
7711 # 7685 "parser_cocci_menhir.ml"
7712 in
7713 _menhir_env.MenhirLib.EngineTypes.stack <- {
7714 MenhirLib.EngineTypes.state = _menhir_s;
7715 MenhirLib.EngineTypes.semv = Obj.repr _v;
7716 MenhirLib.EngineTypes.startp = _startpos;
7717 MenhirLib.EngineTypes.endp = _endpos;
7718 MenhirLib.EngineTypes.next = _menhir_stack;
7719 });
7720 (fun _menhir_env ->
7721 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7722 let {
7723 MenhirLib.EngineTypes.semv = a;
7724 MenhirLib.EngineTypes.startp = _startpos_a_;
7725 MenhirLib.EngineTypes.endp = _endpos_a_;
7726 MenhirLib.EngineTypes.next = {
7727 MenhirLib.EngineTypes.semv = i;
7728 MenhirLib.EngineTypes.startp = _startpos_i_;
7729 MenhirLib.EngineTypes.endp = _endpos_i_;
7730 MenhirLib.EngineTypes.next = {
7731 MenhirLib.EngineTypes.state = _menhir_s;
7732 MenhirLib.EngineTypes.semv = t;
7733 MenhirLib.EngineTypes.startp = _startpos_t_;
7734 MenhirLib.EngineTypes.endp = _endpos_t_;
7735 MenhirLib.EngineTypes.next = _menhir_stack;
7736 };
7737 };
7738 } = _menhir_stack in
7739 let a : 'tv_list_array_dec_ = Obj.magic a in
7740 let i : 'tv_disj_ident = Obj.magic i in
7741 let t : 'tv_ctype = Obj.magic t in
7742 let _startpos = _startpos_t_ in
7743 let _endpos = _endpos_a_ in
7744 let _v : 'tv_decl =
7745 # 1062 "parser_cocci_menhir.mly"
7746 ( let t = P.arrayify t a in Ast0.wrap(Ast0.Param(t, Some i)) )
7747 # 7721 "parser_cocci_menhir.ml"
7748 in
7749 _menhir_env.MenhirLib.EngineTypes.stack <- {
7750 MenhirLib.EngineTypes.state = _menhir_s;
7751 MenhirLib.EngineTypes.semv = Obj.repr _v;
7752 MenhirLib.EngineTypes.startp = _startpos;
7753 MenhirLib.EngineTypes.endp = _endpos;
7754 MenhirLib.EngineTypes.next = _menhir_stack;
7755 });
7756 (fun _menhir_env ->
7757 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7758 let {
7759 MenhirLib.EngineTypes.state = _menhir_s;
7760 MenhirLib.EngineTypes.semv = t;
7761 MenhirLib.EngineTypes.startp = _startpos_t_;
7762 MenhirLib.EngineTypes.endp = _endpos_t_;
7763 MenhirLib.EngineTypes.next = _menhir_stack;
7764 } = _menhir_stack in
7765 let t : 'tv_ctype = Obj.magic t in
7766 let _startpos = _startpos_t_ in
7767 let _endpos = _endpos_t_ in
7768 let _v : 'tv_decl =
7769 # 1063 "parser_cocci_menhir.mly"
7770 ( (*verify in FunDecl*) Ast0.wrap(Ast0.Param(t, None)) )
7771 # 7745 "parser_cocci_menhir.ml"
7772 in
7773 _menhir_env.MenhirLib.EngineTypes.stack <- {
7774 MenhirLib.EngineTypes.state = _menhir_s;
7775 MenhirLib.EngineTypes.semv = Obj.repr _v;
7776 MenhirLib.EngineTypes.startp = _startpos;
7777 MenhirLib.EngineTypes.endp = _endpos;
7778 MenhirLib.EngineTypes.next = _menhir_stack;
7779 });
7780 (fun _menhir_env ->
7781 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7782 let {
7783 MenhirLib.EngineTypes.semv = rp1;
7784 MenhirLib.EngineTypes.startp = _startpos_rp1_;
7785 MenhirLib.EngineTypes.endp = _endpos_rp1_;
7786 MenhirLib.EngineTypes.next = {
7787 MenhirLib.EngineTypes.semv = d;
7788 MenhirLib.EngineTypes.startp = _startpos_d_;
7789 MenhirLib.EngineTypes.endp = _endpos_d_;
7790 MenhirLib.EngineTypes.next = {
7791 MenhirLib.EngineTypes.semv = lp1;
7792 MenhirLib.EngineTypes.startp = _startpos_lp1_;
7793 MenhirLib.EngineTypes.endp = _endpos_lp1_;
7794 MenhirLib.EngineTypes.next = {
7795 MenhirLib.EngineTypes.semv = rp;
7796 MenhirLib.EngineTypes.startp = _startpos_rp_;
7797 MenhirLib.EngineTypes.endp = _endpos_rp_;
7798 MenhirLib.EngineTypes.next = {
7799 MenhirLib.EngineTypes.semv = i;
7800 MenhirLib.EngineTypes.startp = _startpos_i_;
7801 MenhirLib.EngineTypes.endp = _endpos_i_;
7802 MenhirLib.EngineTypes.next = {
7803 MenhirLib.EngineTypes.semv = s;
7804 MenhirLib.EngineTypes.startp = _startpos_s_;
7805 MenhirLib.EngineTypes.endp = _endpos_s_;
7806 MenhirLib.EngineTypes.next = {
7807 MenhirLib.EngineTypes.semv = lp;
7808 MenhirLib.EngineTypes.startp = _startpos_lp_;
7809 MenhirLib.EngineTypes.endp = _endpos_lp_;
7810 MenhirLib.EngineTypes.next = {
7811 MenhirLib.EngineTypes.state = _menhir_s;
7812 MenhirLib.EngineTypes.semv = t;
7813 MenhirLib.EngineTypes.startp = _startpos_t_;
7814 MenhirLib.EngineTypes.endp = _endpos_t_;
7815 MenhirLib.EngineTypes.next = _menhir_stack;
7816 };
7817 };
7818 };
7819 };
7820 };
7821 };
7822 };
7823 } = _menhir_stack in
7824 let rp1 : (
7825 # 123 "parser_cocci_menhir.mly"
7826 (Data.clt)
7827 # 7801 "parser_cocci_menhir.ml"
7828 ) = Obj.magic rp1 in
7829 let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
7830 let lp1 : (
7831 # 122 "parser_cocci_menhir.mly"
7832 (Data.clt)
7833 # 7807 "parser_cocci_menhir.ml"
7834 ) = Obj.magic lp1 in
7835 let rp : (
7836 # 123 "parser_cocci_menhir.mly"
7837 (Data.clt)
7838 # 7812 "parser_cocci_menhir.ml"
7839 ) = Obj.magic rp in
7840 let i : 'tv_disj_ident = Obj.magic i in
7841 let s : (
7842 # 145 "parser_cocci_menhir.mly"
7843 (Data.clt)
7844 # 7818 "parser_cocci_menhir.ml"
7845 ) = Obj.magic s in
7846 let lp : (
7847 # 122 "parser_cocci_menhir.mly"
7848 (Data.clt)
7849 # 7823 "parser_cocci_menhir.ml"
7850 ) = Obj.magic lp in
7851 let t : 'tv_ctype = Obj.magic t in
7852 let _startpos = _startpos_t_ in
7853 let _endpos = _endpos_rp1_ in
7854 let _v : 'tv_decl =
7855 # 1066 "parser_cocci_menhir.mly"
7856 ( let fnptr =
7857 Ast0.wrap
7858 (Ast0.FunctionPointer
7859 (t,P.clt2mcode "(" lp,P.clt2mcode "*" s,P.clt2mcode ")" rp,
7860 P.clt2mcode "(" lp1,d,P.clt2mcode ")" rp1)) in
7861 Ast0.wrap(Ast0.Param(fnptr, Some i)) )
7862 # 7836 "parser_cocci_menhir.ml"
7863 in
7864 _menhir_env.MenhirLib.EngineTypes.stack <- {
7865 MenhirLib.EngineTypes.state = _menhir_s;
7866 MenhirLib.EngineTypes.semv = Obj.repr _v;
7867 MenhirLib.EngineTypes.startp = _startpos;
7868 MenhirLib.EngineTypes.endp = _endpos;
7869 MenhirLib.EngineTypes.next = _menhir_stack;
7870 });
7871 (fun _menhir_env ->
7872 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7873 let {
7874 MenhirLib.EngineTypes.state = _menhir_s;
7875 MenhirLib.EngineTypes.semv = _1;
7876 MenhirLib.EngineTypes.startp = _startpos__1_;
7877 MenhirLib.EngineTypes.endp = _endpos__1_;
7878 MenhirLib.EngineTypes.next = _menhir_stack;
7879 } = _menhir_stack in
7880 let _1 : (
7881 # 108 "parser_cocci_menhir.mly"
7882 (Parse_aux.info)
7883 # 7857 "parser_cocci_menhir.ml"
7884 ) = Obj.magic _1 in
7885 let _startpos = _startpos__1_ in
7886 let _endpos = _endpos__1_ in
7887 let _v : 'tv_decl =
7888 # 1073 "parser_cocci_menhir.mly"
7889 ( let (nm,pure,clt) = _1 in
7890 Ast0.wrap(Ast0.MetaParam(P.clt2mcode nm clt,pure)) )
7891 # 7865 "parser_cocci_menhir.ml"
7892 in
7893 _menhir_env.MenhirLib.EngineTypes.stack <- {
7894 MenhirLib.EngineTypes.state = _menhir_s;
7895 MenhirLib.EngineTypes.semv = Obj.repr _v;
7896 MenhirLib.EngineTypes.startp = _startpos;
7897 MenhirLib.EngineTypes.endp = _endpos;
7898 MenhirLib.EngineTypes.next = _menhir_stack;
7899 });
7900 (fun _menhir_env ->
7901 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7902 let {
7903 MenhirLib.EngineTypes.state = _menhir_s;
7904 MenhirLib.EngineTypes.semv = _1;
7905 MenhirLib.EngineTypes.startp = _startpos__1_;
7906 MenhirLib.EngineTypes.endp = _endpos__1_;
7907 MenhirLib.EngineTypes.next = _menhir_stack;
7908 } = _menhir_stack in
7909 let _1 : (
7910 # 109 "parser_cocci_menhir.mly"
7911 (Parse_aux.info)
7912 # 7886 "parser_cocci_menhir.ml"
7913 ) = Obj.magic _1 in
7914 let _startpos = _startpos__1_ in
7915 let _endpos = _endpos__1_ in
7916 let _v : 'tv_decl =
7917 # 1075 "parser_cocci_menhir.mly"
7918 ( tmeta_to_param _1 )
7919 # 7893 "parser_cocci_menhir.ml"
7920 in
7921 _menhir_env.MenhirLib.EngineTypes.stack <- {
7922 MenhirLib.EngineTypes.state = _menhir_s;
7923 MenhirLib.EngineTypes.semv = Obj.repr _v;
7924 MenhirLib.EngineTypes.startp = _startpos;
7925 MenhirLib.EngineTypes.endp = _endpos;
7926 MenhirLib.EngineTypes.next = _menhir_stack;
7927 });
7928 (fun _menhir_env ->
7929 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7930 let {
7931 MenhirLib.EngineTypes.state = _menhir_s;
7932 MenhirLib.EngineTypes.semv = _1;
7933 MenhirLib.EngineTypes.startp = _startpos__1_;
7934 MenhirLib.EngineTypes.endp = _endpos__1_;
7935 MenhirLib.EngineTypes.next = _menhir_stack;
7936 } = _menhir_stack in
7937 let _1 : (
7938 # 101 "parser_cocci_menhir.mly"
7939 (string * Data.clt)
7940 # 7914 "parser_cocci_menhir.ml"
7941 ) = Obj.magic _1 in
7942 let _startpos = _startpos__1_ in
7943 let _endpos = _endpos__1_ in
7944 let _v : 'tv_decl_ident =
7945 # 2051 "parser_cocci_menhir.mly"
7946 ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
7947 # 7921 "parser_cocci_menhir.ml"
7948 in
7949 _menhir_env.MenhirLib.EngineTypes.stack <- {
7950 MenhirLib.EngineTypes.state = _menhir_s;
7951 MenhirLib.EngineTypes.semv = Obj.repr _v;
7952 MenhirLib.EngineTypes.startp = _startpos;
7953 MenhirLib.EngineTypes.endp = _endpos;
7954 MenhirLib.EngineTypes.next = _menhir_stack;
7955 });
7956 (fun _menhir_env ->
7957 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7958 let {
7959 MenhirLib.EngineTypes.state = _menhir_s;
7960 MenhirLib.EngineTypes.semv = _1;
7961 MenhirLib.EngineTypes.startp = _startpos__1_;
7962 MenhirLib.EngineTypes.endp = _endpos__1_;
7963 MenhirLib.EngineTypes.next = _menhir_stack;
7964 } = _menhir_stack in
7965 let _1 : (
7966 # 106 "parser_cocci_menhir.mly"
7967 (Parse_aux.idinfo)
7968 # 7942 "parser_cocci_menhir.ml"
7969 ) = Obj.magic _1 in
7970 let _startpos = _startpos__1_ in
7971 let _endpos = _endpos__1_ in
7972 let _v : 'tv_decl_ident =
7973 # 2053 "parser_cocci_menhir.mly"
7974 ( let (nm,constraints,pure,clt) = _1 in
7975 Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,Ast.NoVal,pure)) )
7976 # 7950 "parser_cocci_menhir.ml"
7977 in
7978 _menhir_env.MenhirLib.EngineTypes.stack <- {
7979 MenhirLib.EngineTypes.state = _menhir_s;
7980 MenhirLib.EngineTypes.semv = Obj.repr _v;
7981 MenhirLib.EngineTypes.startp = _startpos;
7982 MenhirLib.EngineTypes.endp = _endpos;
7983 MenhirLib.EngineTypes.next = _menhir_stack;
7984 });
7985 (fun _menhir_env ->
7986 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
7987 let {
7988 MenhirLib.EngineTypes.state = _menhir_s;
7989 MenhirLib.EngineTypes.semv = _1;
7990 MenhirLib.EngineTypes.startp = _startpos__1_;
7991 MenhirLib.EngineTypes.endp = _endpos__1_;
7992 MenhirLib.EngineTypes.next = _menhir_stack;
7993 } = _menhir_stack in
7994 let _1 : 'tv_empty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _1 in
7995 let _startpos = _startpos__1_ in
7996 let _endpos = _endpos__1_ in
7997 let _v : 'tv_decl_list_decl_ =
7998 # 2075 "parser_cocci_menhir.mly"
7999 ( Ast0.wrap
8000 (Ast0.DOTS
8001 (_1
8002 (fun _ d -> Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." d)))
8003 (fun c -> Ast0.PComma c))) )
8004 # 7978 "parser_cocci_menhir.ml"
8005 in
8006 _menhir_env.MenhirLib.EngineTypes.stack <- {
8007 MenhirLib.EngineTypes.state = _menhir_s;
8008 MenhirLib.EngineTypes.semv = Obj.repr _v;
8009 MenhirLib.EngineTypes.startp = _startpos;
8010 MenhirLib.EngineTypes.endp = _endpos;
8011 MenhirLib.EngineTypes.next = _menhir_stack;
8012 });
8013 (fun _menhir_env ->
8014 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8015 let {
8016 MenhirLib.EngineTypes.state = _menhir_s;
8017 MenhirLib.EngineTypes.semv = _1;
8018 MenhirLib.EngineTypes.startp = _startpos__1_;
8019 MenhirLib.EngineTypes.endp = _endpos__1_;
8020 MenhirLib.EngineTypes.next = _menhir_stack;
8021 } = _menhir_stack in
8022 let _1 : 'tv_empty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _1 in
8023 let _startpos = _startpos__1_ in
8024 let _endpos = _endpos__1_ in
8025 let _v : 'tv_decl_list_name_opt_decl_ =
8026 # 2075 "parser_cocci_menhir.mly"
8027 ( Ast0.wrap
8028 (Ast0.DOTS
8029 (_1
8030 (fun _ d -> Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." d)))
8031 (fun c -> Ast0.PComma c))) )
8032 # 8006 "parser_cocci_menhir.ml"
8033 in
8034 _menhir_env.MenhirLib.EngineTypes.stack <- {
8035 MenhirLib.EngineTypes.state = _menhir_s;
8036 MenhirLib.EngineTypes.semv = Obj.repr _v;
8037 MenhirLib.EngineTypes.startp = _startpos;
8038 MenhirLib.EngineTypes.endp = _endpos;
8039 MenhirLib.EngineTypes.next = _menhir_stack;
8040 });
8041 (fun _menhir_env ->
8042 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8043 let {
8044 MenhirLib.EngineTypes.state = _menhir_s;
8045 MenhirLib.EngineTypes.semv = _1;
8046 MenhirLib.EngineTypes.startp = _startpos__1_;
8047 MenhirLib.EngineTypes.endp = _endpos__1_;
8048 MenhirLib.EngineTypes.next = _menhir_stack;
8049 } = _menhir_stack in
8050 let _1 : (
8051 # 108 "parser_cocci_menhir.mly"
8052 (Parse_aux.info)
8053 # 8027 "parser_cocci_menhir.ml"
8054 ) = Obj.magic _1 in
8055 let _startpos = _startpos__1_ in
8056 let _endpos = _endpos__1_ in
8057 let _v : 'tv_decl_statement =
8058 # 1398 "parser_cocci_menhir.mly"
8059 ( let (nm,pure,clt) = _1 in
8060 [Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] )
8061 # 8035 "parser_cocci_menhir.ml"
8062 in
8063 _menhir_env.MenhirLib.EngineTypes.stack <- {
8064 MenhirLib.EngineTypes.state = _menhir_s;
8065 MenhirLib.EngineTypes.semv = Obj.repr _v;
8066 MenhirLib.EngineTypes.startp = _startpos;
8067 MenhirLib.EngineTypes.endp = _endpos;
8068 MenhirLib.EngineTypes.next = _menhir_stack;
8069 });
8070 (fun _menhir_env ->
8071 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8072 let {
8073 MenhirLib.EngineTypes.state = _menhir_s;
8074 MenhirLib.EngineTypes.semv = _1;
8075 MenhirLib.EngineTypes.startp = _startpos__1_;
8076 MenhirLib.EngineTypes.endp = _endpos__1_;
8077 MenhirLib.EngineTypes.next = _menhir_stack;
8078 } = _menhir_stack in
8079 let _1 : 'tv_decl_var = Obj.magic _1 in
8080 let _startpos = _startpos__1_ in
8081 let _endpos = _endpos__1_ in
8082 let _v : 'tv_decl_statement =
8083 # 1401 "parser_cocci_menhir.mly"
8084 ( List.map
8085 (function x ->
8086 Ast0.wrap
8087 (Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),x)))
8088 _1 )
8089 # 8063 "parser_cocci_menhir.ml"
8090 in
8091 _menhir_env.MenhirLib.EngineTypes.stack <- {
8092 MenhirLib.EngineTypes.state = _menhir_s;
8093 MenhirLib.EngineTypes.semv = Obj.repr _v;
8094 MenhirLib.EngineTypes.startp = _startpos;
8095 MenhirLib.EngineTypes.endp = _endpos;
8096 MenhirLib.EngineTypes.next = _menhir_stack;
8097 });
8098 (fun _menhir_env ->
8099 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8100 let {
8101 MenhirLib.EngineTypes.state = _menhir_s;
8102 MenhirLib.EngineTypes.semv = _1;
8103 MenhirLib.EngineTypes.startp = _startpos__1_;
8104 MenhirLib.EngineTypes.endp = _endpos__1_;
8105 MenhirLib.EngineTypes.next = _menhir_stack;
8106 } = _menhir_stack in
8107 let _1 : 'tv_statement = Obj.magic _1 in
8108 let _startpos = _startpos__1_ in
8109 let _endpos = _endpos__1_ in
8110 let _v : 'tv_decl_statement =
8111 # 1406 "parser_cocci_menhir.mly"
8112 ( [_1] )
8113 # 8087 "parser_cocci_menhir.ml"
8114 in
8115 _menhir_env.MenhirLib.EngineTypes.stack <- {
8116 MenhirLib.EngineTypes.state = _menhir_s;
8117 MenhirLib.EngineTypes.semv = Obj.repr _v;
8118 MenhirLib.EngineTypes.startp = _startpos;
8119 MenhirLib.EngineTypes.endp = _endpos;
8120 MenhirLib.EngineTypes.next = _menhir_stack;
8121 });
8122 (fun _menhir_env ->
8123 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8124 let {
8125 MenhirLib.EngineTypes.semv = _3;
8126 MenhirLib.EngineTypes.startp = _startpos__3_;
8127 MenhirLib.EngineTypes.endp = _endpos__3_;
8128 MenhirLib.EngineTypes.next = {
8129 MenhirLib.EngineTypes.semv = t;
8130 MenhirLib.EngineTypes.startp = _startpos_t_;
8131 MenhirLib.EngineTypes.endp = _endpos_t_;
8132 MenhirLib.EngineTypes.next = {
8133 MenhirLib.EngineTypes.state = _menhir_s;
8134 MenhirLib.EngineTypes.semv = _1;
8135 MenhirLib.EngineTypes.startp = _startpos__1_;
8136 MenhirLib.EngineTypes.endp = _endpos__1_;
8137 MenhirLib.EngineTypes.next = _menhir_stack;
8138 };
8139 };
8140 } = _menhir_stack in
8141 let _3 : (
8142 # 123 "parser_cocci_menhir.mly"
8143 (Data.clt)
8144 # 8118 "parser_cocci_menhir.ml"
8145 ) = Obj.magic _3 in
8146 let t : 'tv_midzero_list_fun_start_fun_start_ = Obj.magic t in
8147 let _1 : (
8148 # 122 "parser_cocci_menhir.mly"
8149 (Data.clt)
8150 # 8124 "parser_cocci_menhir.ml"
8151 ) = Obj.magic _1 in
8152 let _startpos = _startpos__1_ in
8153 let _endpos = _endpos__3_ in
8154 let _v : 'tv_decl_statement =
8155 # 1415 "parser_cocci_menhir.mly"
8156 ( let (mids,code) = t in
8157 if List.for_all
8158 (function x ->
8159 match Ast0.unwrap x with Ast0.DOTS([]) -> true | _ -> false)
8160 code
8161 then []
8162 else
8163 [Ast0.wrap(Ast0.Disj(P.clt2mcode "(" _1, code, mids,
8164 P.clt2mcode ")" _3))] )
8165 # 8139 "parser_cocci_menhir.ml"
8166 in
8167 _menhir_env.MenhirLib.EngineTypes.stack <- {
8168 MenhirLib.EngineTypes.state = _menhir_s;
8169 MenhirLib.EngineTypes.semv = Obj.repr _v;
8170 MenhirLib.EngineTypes.startp = _startpos;
8171 MenhirLib.EngineTypes.endp = _endpos;
8172 MenhirLib.EngineTypes.next = _menhir_stack;
8173 });
8174 (fun _menhir_env ->
8175 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8176 let {
8177 MenhirLib.EngineTypes.state = _menhir_s;
8178 MenhirLib.EngineTypes.semv = _1;
8179 MenhirLib.EngineTypes.startp = _startpos__1_;
8180 MenhirLib.EngineTypes.endp = _endpos__1_;
8181 MenhirLib.EngineTypes.next = _menhir_stack;
8182 } = _menhir_stack in
8183 let _1 : (
8184 # 108 "parser_cocci_menhir.mly"
8185 (Parse_aux.info)
8186 # 8160 "parser_cocci_menhir.ml"
8187 ) = Obj.magic _1 in
8188 let _startpos = _startpos__1_ in
8189 let _endpos = _endpos__1_ in
8190 let _v : 'tv_decl_statement_expr =
8191 # 1428 "parser_cocci_menhir.mly"
8192 ( let (nm,pure,clt) = _1 in
8193 [Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] )
8194 # 8168 "parser_cocci_menhir.ml"
8195 in
8196 _menhir_env.MenhirLib.EngineTypes.stack <- {
8197 MenhirLib.EngineTypes.state = _menhir_s;
8198 MenhirLib.EngineTypes.semv = Obj.repr _v;
8199 MenhirLib.EngineTypes.startp = _startpos;
8200 MenhirLib.EngineTypes.endp = _endpos;
8201 MenhirLib.EngineTypes.next = _menhir_stack;
8202 });
8203 (fun _menhir_env ->
8204 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8205 let {
8206 MenhirLib.EngineTypes.state = _menhir_s;
8207 MenhirLib.EngineTypes.semv = _1;
8208 MenhirLib.EngineTypes.startp = _startpos__1_;
8209 MenhirLib.EngineTypes.endp = _endpos__1_;
8210 MenhirLib.EngineTypes.next = _menhir_stack;
8211 } = _menhir_stack in
8212 let _1 : 'tv_decl_var = Obj.magic _1 in
8213 let _startpos = _startpos__1_ in
8214 let _endpos = _endpos__1_ in
8215 let _v : 'tv_decl_statement_expr =
8216 # 1431 "parser_cocci_menhir.mly"
8217 ( List.map
8218 (function x ->
8219 Ast0.wrap
8220 (Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),x)))
8221 _1 )
8222 # 8196 "parser_cocci_menhir.ml"
8223 in
8224 _menhir_env.MenhirLib.EngineTypes.stack <- {
8225 MenhirLib.EngineTypes.state = _menhir_s;
8226 MenhirLib.EngineTypes.semv = Obj.repr _v;
8227 MenhirLib.EngineTypes.startp = _startpos;
8228 MenhirLib.EngineTypes.endp = _endpos;
8229 MenhirLib.EngineTypes.next = _menhir_stack;
8230 });
8231 (fun _menhir_env ->
8232 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8233 let {
8234 MenhirLib.EngineTypes.state = _menhir_s;
8235 MenhirLib.EngineTypes.semv = _1;
8236 MenhirLib.EngineTypes.startp = _startpos__1_;
8237 MenhirLib.EngineTypes.endp = _endpos__1_;
8238 MenhirLib.EngineTypes.next = _menhir_stack;
8239 } = _menhir_stack in
8240 let _1 : 'tv_statement = Obj.magic _1 in
8241 let _startpos = _startpos__1_ in
8242 let _endpos = _endpos__1_ in
8243 let _v : 'tv_decl_statement_expr =
8244 # 1436 "parser_cocci_menhir.mly"
8245 ( [_1] )
8246 # 8220 "parser_cocci_menhir.ml"
8247 in
8248 _menhir_env.MenhirLib.EngineTypes.stack <- {
8249 MenhirLib.EngineTypes.state = _menhir_s;
8250 MenhirLib.EngineTypes.semv = Obj.repr _v;
8251 MenhirLib.EngineTypes.startp = _startpos;
8252 MenhirLib.EngineTypes.endp = _endpos;
8253 MenhirLib.EngineTypes.next = _menhir_stack;
8254 });
8255 (fun _menhir_env ->
8256 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8257 let {
8258 MenhirLib.EngineTypes.semv = _3;
8259 MenhirLib.EngineTypes.startp = _startpos__3_;
8260 MenhirLib.EngineTypes.endp = _endpos__3_;
8261 MenhirLib.EngineTypes.next = {
8262 MenhirLib.EngineTypes.semv = t;
8263 MenhirLib.EngineTypes.startp = _startpos_t_;
8264 MenhirLib.EngineTypes.endp = _endpos_t_;
8265 MenhirLib.EngineTypes.next = {
8266 MenhirLib.EngineTypes.state = _menhir_s;
8267 MenhirLib.EngineTypes.semv = _1;
8268 MenhirLib.EngineTypes.startp = _startpos__1_;
8269 MenhirLib.EngineTypes.endp = _endpos__1_;
8270 MenhirLib.EngineTypes.next = _menhir_stack;
8271 };
8272 };
8273 } = _menhir_stack in
8274 let _3 : (
8275 # 123 "parser_cocci_menhir.mly"
8276 (Data.clt)
8277 # 8251 "parser_cocci_menhir.ml"
8278 ) = Obj.magic _3 in
8279 let t : 'tv_midzero_list_fun_after_stm_fun_after_dots_or_ = Obj.magic t in
8280 let _1 : (
8281 # 122 "parser_cocci_menhir.mly"
8282 (Data.clt)
8283 # 8257 "parser_cocci_menhir.ml"
8284 ) = Obj.magic _1 in
8285 let _startpos = _startpos__1_ in
8286 let _endpos = _endpos__3_ in
8287 let _v : 'tv_decl_statement_expr =
8288 # 1445 "parser_cocci_menhir.mly"
8289 ( let (mids,code) = t in
8290 if List.for_all (function [] -> true | _ -> false) code
8291 then []
8292 else
8293 let dot_code =
8294 List.map (function x -> Ast0.wrap(Ast0.DOTS x)) code in
8295 [Ast0.wrap(Ast0.Disj(P.clt2mcode "(" _1, dot_code, mids,
8296 P.clt2mcode ")" _3))] )
8297 # 8271 "parser_cocci_menhir.ml"
8298 in
8299 _menhir_env.MenhirLib.EngineTypes.stack <- {
8300 MenhirLib.EngineTypes.state = _menhir_s;
8301 MenhirLib.EngineTypes.semv = Obj.repr _v;
8302 MenhirLib.EngineTypes.startp = _startpos;
8303 MenhirLib.EngineTypes.endp = _endpos;
8304 MenhirLib.EngineTypes.next = _menhir_stack;
8305 });
8306 (fun _menhir_env ->
8307 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8308 let {
8309 MenhirLib.EngineTypes.semv = pv;
8310 MenhirLib.EngineTypes.startp = _startpos_pv_;
8311 MenhirLib.EngineTypes.endp = _endpos_pv_;
8312 MenhirLib.EngineTypes.next = {
8313 MenhirLib.EngineTypes.state = _menhir_s;
8314 MenhirLib.EngineTypes.semv = t;
8315 MenhirLib.EngineTypes.startp = _startpos_t_;
8316 MenhirLib.EngineTypes.endp = _endpos_t_;
8317 MenhirLib.EngineTypes.next = _menhir_stack;
8318 };
8319 } = _menhir_stack in
8320 let pv : (
8321 # 153 "parser_cocci_menhir.mly"
8322 (Data.clt)
8323 # 8297 "parser_cocci_menhir.ml"
8324 ) = Obj.magic pv in
8325 let t : 'tv_ctype = Obj.magic t in
8326 let _startpos = _startpos_t_ in
8327 let _endpos = _endpos_pv_ in
8328 let _v : 'tv_decl_var =
8329 # 1208 "parser_cocci_menhir.mly"
8330 ( [Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv))] )
8331 # 8305 "parser_cocci_menhir.ml"
8332 in
8333 _menhir_env.MenhirLib.EngineTypes.stack <- {
8334 MenhirLib.EngineTypes.state = _menhir_s;
8335 MenhirLib.EngineTypes.semv = Obj.repr _v;
8336 MenhirLib.EngineTypes.startp = _startpos;
8337 MenhirLib.EngineTypes.endp = _endpos;
8338 MenhirLib.EngineTypes.next = _menhir_stack;
8339 });
8340 (fun _menhir_env ->
8341 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8342 let {
8343 MenhirLib.EngineTypes.state = _menhir_s;
8344 MenhirLib.EngineTypes.semv = _1;
8345 MenhirLib.EngineTypes.startp = _startpos__1_;
8346 MenhirLib.EngineTypes.endp = _endpos__1_;
8347 MenhirLib.EngineTypes.next = _menhir_stack;
8348 } = _menhir_stack in
8349 let _1 : (
8350 # 109 "parser_cocci_menhir.mly"
8351 (Parse_aux.info)
8352 # 8326 "parser_cocci_menhir.ml"
8353 ) = Obj.magic _1 in
8354 let _startpos = _startpos__1_ in
8355 let _endpos = _endpos__1_ in
8356 let _v : 'tv_decl_var =
8357 # 1209 "parser_cocci_menhir.mly"
8358 ( [P.meta_decl _1] )
8359 # 8333 "parser_cocci_menhir.ml"
8360 in
8361 _menhir_env.MenhirLib.EngineTypes.stack <- {
8362 MenhirLib.EngineTypes.state = _menhir_s;
8363 MenhirLib.EngineTypes.semv = Obj.repr _v;
8364 MenhirLib.EngineTypes.startp = _startpos;
8365 MenhirLib.EngineTypes.endp = _endpos;
8366 MenhirLib.EngineTypes.next = _menhir_stack;
8367 });
8368 (fun _menhir_env ->
8369 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8370 let {
8371 MenhirLib.EngineTypes.semv = pv;
8372 MenhirLib.EngineTypes.startp = _startpos_pv_;
8373 MenhirLib.EngineTypes.endp = _endpos_pv_;
8374 MenhirLib.EngineTypes.next = {
8375 MenhirLib.EngineTypes.semv = d;
8376 MenhirLib.EngineTypes.startp = _startpos_d_;
8377 MenhirLib.EngineTypes.endp = _endpos_d_;
8378 MenhirLib.EngineTypes.next = {
8379 MenhirLib.EngineTypes.state = _menhir_s;
8380 MenhirLib.EngineTypes.semv = t;
8381 MenhirLib.EngineTypes.startp = _startpos_t_;
8382 MenhirLib.EngineTypes.endp = _endpos_t_;
8383 MenhirLib.EngineTypes.next = _menhir_stack;
8384 };
8385 };
8386 } = _menhir_stack in
8387 let pv : (
8388 # 153 "parser_cocci_menhir.mly"
8389 (Data.clt)
8390 # 8364 "parser_cocci_menhir.ml"
8391 ) = Obj.magic pv in
8392 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
8393 let t : 'tv_ctype = Obj.magic t in
8394 let _startpos = _startpos_t_ in
8395 let _endpos = _endpos_pv_ in
8396 let _v : 'tv_decl_var = let s =
8397
8398 # 39 "standard.mly"
8399 ( None )
8400 # 8374 "parser_cocci_menhir.ml"
8401
8402 in
8403
8404 # 1211 "parser_cocci_menhir.mly"
8405 ( List.map
8406 (function (id,fn) ->
8407 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)))
8408 d )
8409 # 8383 "parser_cocci_menhir.ml"
8410 in
8411 _menhir_env.MenhirLib.EngineTypes.stack <- {
8412 MenhirLib.EngineTypes.state = _menhir_s;
8413 MenhirLib.EngineTypes.semv = Obj.repr _v;
8414 MenhirLib.EngineTypes.startp = _startpos;
8415 MenhirLib.EngineTypes.endp = _endpos;
8416 MenhirLib.EngineTypes.next = _menhir_stack;
8417 });
8418 (fun _menhir_env ->
8419 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8420 let {
8421 MenhirLib.EngineTypes.semv = pv;
8422 MenhirLib.EngineTypes.startp = _startpos_pv_;
8423 MenhirLib.EngineTypes.endp = _endpos_pv_;
8424 MenhirLib.EngineTypes.next = {
8425 MenhirLib.EngineTypes.semv = d;
8426 MenhirLib.EngineTypes.startp = _startpos_d_;
8427 MenhirLib.EngineTypes.endp = _endpos_d_;
8428 MenhirLib.EngineTypes.next = {
8429 MenhirLib.EngineTypes.semv = t;
8430 MenhirLib.EngineTypes.startp = _startpos_t_;
8431 MenhirLib.EngineTypes.endp = _endpos_t_;
8432 MenhirLib.EngineTypes.next = {
8433 MenhirLib.EngineTypes.state = _menhir_s;
8434 MenhirLib.EngineTypes.semv = x0;
8435 MenhirLib.EngineTypes.startp = _startpos_x0_;
8436 MenhirLib.EngineTypes.endp = _endpos_x0_;
8437 MenhirLib.EngineTypes.next = _menhir_stack;
8438 };
8439 };
8440 };
8441 } = _menhir_stack in
8442 let pv : (
8443 # 153 "parser_cocci_menhir.mly"
8444 (Data.clt)
8445 # 8419 "parser_cocci_menhir.ml"
8446 ) = Obj.magic pv in
8447 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
8448 let t : 'tv_ctype = Obj.magic t in
8449 let x0 : 'tv_storage = Obj.magic x0 in
8450 let _startpos = _startpos_x0_ in
8451 let _endpos = _endpos_pv_ in
8452 let _v : 'tv_decl_var = let s =
8453 let x = x0 in
8454
8455 # 41 "standard.mly"
8456 ( Some x )
8457 # 8431 "parser_cocci_menhir.ml"
8458
8459 in
8460
8461 # 1211 "parser_cocci_menhir.mly"
8462 ( List.map
8463 (function (id,fn) ->
8464 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)))
8465 d )
8466 # 8440 "parser_cocci_menhir.ml"
8467 in
8468 _menhir_env.MenhirLib.EngineTypes.stack <- {
8469 MenhirLib.EngineTypes.state = _menhir_s;
8470 MenhirLib.EngineTypes.semv = Obj.repr _v;
8471 MenhirLib.EngineTypes.startp = _startpos;
8472 MenhirLib.EngineTypes.endp = _endpos;
8473 MenhirLib.EngineTypes.next = _menhir_stack;
8474 });
8475 (fun _menhir_env ->
8476 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8477 let {
8478 MenhirLib.EngineTypes.state = _menhir_s;
8479 MenhirLib.EngineTypes.semv = f;
8480 MenhirLib.EngineTypes.startp = _startpos_f_;
8481 MenhirLib.EngineTypes.endp = _endpos_f_;
8482 MenhirLib.EngineTypes.next = _menhir_stack;
8483 } = _menhir_stack in
8484 let f : 'tv_funproto = Obj.magic f in
8485 let _startpos = _startpos_f_ in
8486 let _endpos = _endpos_f_ in
8487 let _v : 'tv_decl_var =
8488 # 1215 "parser_cocci_menhir.mly"
8489 ( [f] )
8490 # 8464 "parser_cocci_menhir.ml"
8491 in
8492 _menhir_env.MenhirLib.EngineTypes.stack <- {
8493 MenhirLib.EngineTypes.state = _menhir_s;
8494 MenhirLib.EngineTypes.semv = Obj.repr _v;
8495 MenhirLib.EngineTypes.startp = _startpos;
8496 MenhirLib.EngineTypes.endp = _endpos;
8497 MenhirLib.EngineTypes.next = _menhir_stack;
8498 });
8499 (fun _menhir_env ->
8500 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8501 let {
8502 MenhirLib.EngineTypes.semv = pv;
8503 MenhirLib.EngineTypes.startp = _startpos_pv_;
8504 MenhirLib.EngineTypes.endp = _endpos_pv_;
8505 MenhirLib.EngineTypes.next = {
8506 MenhirLib.EngineTypes.semv = e;
8507 MenhirLib.EngineTypes.startp = _startpos_e_;
8508 MenhirLib.EngineTypes.endp = _endpos_e_;
8509 MenhirLib.EngineTypes.next = {
8510 MenhirLib.EngineTypes.semv = q;
8511 MenhirLib.EngineTypes.startp = _startpos_q_;
8512 MenhirLib.EngineTypes.endp = _endpos_q_;
8513 MenhirLib.EngineTypes.next = {
8514 MenhirLib.EngineTypes.semv = d;
8515 MenhirLib.EngineTypes.startp = _startpos_d_;
8516 MenhirLib.EngineTypes.endp = _endpos_d_;
8517 MenhirLib.EngineTypes.next = {
8518 MenhirLib.EngineTypes.state = _menhir_s;
8519 MenhirLib.EngineTypes.semv = t;
8520 MenhirLib.EngineTypes.startp = _startpos_t_;
8521 MenhirLib.EngineTypes.endp = _endpos_t_;
8522 MenhirLib.EngineTypes.next = _menhir_stack;
8523 };
8524 };
8525 };
8526 };
8527 } = _menhir_stack in
8528 let pv : (
8529 # 153 "parser_cocci_menhir.mly"
8530 (Data.clt)
8531 # 8505 "parser_cocci_menhir.ml"
8532 ) = Obj.magic pv in
8533 let e : 'tv_initialize = Obj.magic e in
8534 let q : (
8535 # 153 "parser_cocci_menhir.mly"
8536 (Data.clt)
8537 # 8511 "parser_cocci_menhir.ml"
8538 ) = Obj.magic q in
8539 let d : 'tv_d_ident = Obj.magic d in
8540 let t : 'tv_ctype = Obj.magic t in
8541 let _startpos = _startpos_t_ in
8542 let _endpos = _endpos_pv_ in
8543 let _v : 'tv_decl_var = let s =
8544
8545 # 39 "standard.mly"
8546 ( None )
8547 # 8521 "parser_cocci_menhir.ml"
8548
8549 in
8550
8551 # 1217 "parser_cocci_menhir.mly"
8552 (let (id,fn) = d in
8553 [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
8554 # 8528 "parser_cocci_menhir.ml"
8555 in
8556 _menhir_env.MenhirLib.EngineTypes.stack <- {
8557 MenhirLib.EngineTypes.state = _menhir_s;
8558 MenhirLib.EngineTypes.semv = Obj.repr _v;
8559 MenhirLib.EngineTypes.startp = _startpos;
8560 MenhirLib.EngineTypes.endp = _endpos;
8561 MenhirLib.EngineTypes.next = _menhir_stack;
8562 });
8563 (fun _menhir_env ->
8564 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8565 let {
8566 MenhirLib.EngineTypes.semv = pv;
8567 MenhirLib.EngineTypes.startp = _startpos_pv_;
8568 MenhirLib.EngineTypes.endp = _endpos_pv_;
8569 MenhirLib.EngineTypes.next = {
8570 MenhirLib.EngineTypes.semv = e;
8571 MenhirLib.EngineTypes.startp = _startpos_e_;
8572 MenhirLib.EngineTypes.endp = _endpos_e_;
8573 MenhirLib.EngineTypes.next = {
8574 MenhirLib.EngineTypes.semv = q;
8575 MenhirLib.EngineTypes.startp = _startpos_q_;
8576 MenhirLib.EngineTypes.endp = _endpos_q_;
8577 MenhirLib.EngineTypes.next = {
8578 MenhirLib.EngineTypes.semv = d;
8579 MenhirLib.EngineTypes.startp = _startpos_d_;
8580 MenhirLib.EngineTypes.endp = _endpos_d_;
8581 MenhirLib.EngineTypes.next = {
8582 MenhirLib.EngineTypes.semv = t;
8583 MenhirLib.EngineTypes.startp = _startpos_t_;
8584 MenhirLib.EngineTypes.endp = _endpos_t_;
8585 MenhirLib.EngineTypes.next = {
8586 MenhirLib.EngineTypes.state = _menhir_s;
8587 MenhirLib.EngineTypes.semv = x0;
8588 MenhirLib.EngineTypes.startp = _startpos_x0_;
8589 MenhirLib.EngineTypes.endp = _endpos_x0_;
8590 MenhirLib.EngineTypes.next = _menhir_stack;
8591 };
8592 };
8593 };
8594 };
8595 };
8596 } = _menhir_stack in
8597 let pv : (
8598 # 153 "parser_cocci_menhir.mly"
8599 (Data.clt)
8600 # 8574 "parser_cocci_menhir.ml"
8601 ) = Obj.magic pv in
8602 let e : 'tv_initialize = Obj.magic e in
8603 let q : (
8604 # 153 "parser_cocci_menhir.mly"
8605 (Data.clt)
8606 # 8580 "parser_cocci_menhir.ml"
8607 ) = Obj.magic q in
8608 let d : 'tv_d_ident = Obj.magic d in
8609 let t : 'tv_ctype = Obj.magic t in
8610 let x0 : 'tv_storage = Obj.magic x0 in
8611 let _startpos = _startpos_x0_ in
8612 let _endpos = _endpos_pv_ in
8613 let _v : 'tv_decl_var = let s =
8614 let x = x0 in
8615
8616 # 41 "standard.mly"
8617 ( Some x )
8618 # 8592 "parser_cocci_menhir.ml"
8619
8620 in
8621
8622 # 1217 "parser_cocci_menhir.mly"
8623 (let (id,fn) = d in
8624 [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
8625 # 8599 "parser_cocci_menhir.ml"
8626 in
8627 _menhir_env.MenhirLib.EngineTypes.stack <- {
8628 MenhirLib.EngineTypes.state = _menhir_s;
8629 MenhirLib.EngineTypes.semv = Obj.repr _v;
8630 MenhirLib.EngineTypes.startp = _startpos;
8631 MenhirLib.EngineTypes.endp = _endpos;
8632 MenhirLib.EngineTypes.next = _menhir_stack;
8633 });
8634 (fun _menhir_env ->
8635 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8636 let {
8637 MenhirLib.EngineTypes.semv = pv;
8638 MenhirLib.EngineTypes.startp = _startpos_pv_;
8639 MenhirLib.EngineTypes.endp = _endpos_pv_;
8640 MenhirLib.EngineTypes.next = {
8641 MenhirLib.EngineTypes.semv = d;
8642 MenhirLib.EngineTypes.startp = _startpos_d_;
8643 MenhirLib.EngineTypes.endp = _endpos_d_;
8644 MenhirLib.EngineTypes.next = {
8645 MenhirLib.EngineTypes.state = _menhir_s;
8646 MenhirLib.EngineTypes.semv = i;
8647 MenhirLib.EngineTypes.startp = _startpos_i_;
8648 MenhirLib.EngineTypes.endp = _endpos_i_;
8649 MenhirLib.EngineTypes.next = _menhir_stack;
8650 };
8651 };
8652 } = _menhir_stack in
8653 let pv : (
8654 # 153 "parser_cocci_menhir.mly"
8655 (Data.clt)
8656 # 8630 "parser_cocci_menhir.ml"
8657 ) = Obj.magic pv in
8658 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
8659 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
8660 let _startpos = _startpos_i_ in
8661 let _endpos = _endpos_pv_ in
8662 let _v : 'tv_decl_var = let cv =
8663
8664 # 39 "standard.mly"
8665 ( None )
8666 # 8640 "parser_cocci_menhir.ml"
8667
8668 in
8669 let s =
8670
8671 # 39 "standard.mly"
8672 ( None )
8673 # 8647 "parser_cocci_menhir.ml"
8674
8675 in
8676
8677 # 1222 "parser_cocci_menhir.mly"
8678 ( List.map
8679 (function (id,fn) ->
8680 let idtype =
8681 P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
8682 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
8683 d )
8684 # 8658 "parser_cocci_menhir.ml"
8685 in
8686 _menhir_env.MenhirLib.EngineTypes.stack <- {
8687 MenhirLib.EngineTypes.state = _menhir_s;
8688 MenhirLib.EngineTypes.semv = Obj.repr _v;
8689 MenhirLib.EngineTypes.startp = _startpos;
8690 MenhirLib.EngineTypes.endp = _endpos;
8691 MenhirLib.EngineTypes.next = _menhir_stack;
8692 });
8693 (fun _menhir_env ->
8694 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8695 let {
8696 MenhirLib.EngineTypes.semv = pv;
8697 MenhirLib.EngineTypes.startp = _startpos_pv_;
8698 MenhirLib.EngineTypes.endp = _endpos_pv_;
8699 MenhirLib.EngineTypes.next = {
8700 MenhirLib.EngineTypes.semv = d;
8701 MenhirLib.EngineTypes.startp = _startpos_d_;
8702 MenhirLib.EngineTypes.endp = _endpos_d_;
8703 MenhirLib.EngineTypes.next = {
8704 MenhirLib.EngineTypes.semv = i;
8705 MenhirLib.EngineTypes.startp = _startpos_i_;
8706 MenhirLib.EngineTypes.endp = _endpos_i_;
8707 MenhirLib.EngineTypes.next = {
8708 MenhirLib.EngineTypes.state = _menhir_s;
8709 MenhirLib.EngineTypes.semv = x0;
8710 MenhirLib.EngineTypes.startp = _startpos_x0_;
8711 MenhirLib.EngineTypes.endp = _endpos_x0_;
8712 MenhirLib.EngineTypes.next = _menhir_stack;
8713 };
8714 };
8715 };
8716 } = _menhir_stack in
8717 let pv : (
8718 # 153 "parser_cocci_menhir.mly"
8719 (Data.clt)
8720 # 8694 "parser_cocci_menhir.ml"
8721 ) = Obj.magic pv in
8722 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
8723 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
8724 let x0 : 'tv_const_vol = Obj.magic x0 in
8725 let _startpos = _startpos_x0_ in
8726 let _endpos = _endpos_pv_ in
8727 let _v : 'tv_decl_var = let cv =
8728 let x = x0 in
8729
8730 # 41 "standard.mly"
8731 ( Some x )
8732 # 8706 "parser_cocci_menhir.ml"
8733
8734 in
8735 let s =
8736
8737 # 39 "standard.mly"
8738 ( None )
8739 # 8713 "parser_cocci_menhir.ml"
8740
8741 in
8742
8743 # 1222 "parser_cocci_menhir.mly"
8744 ( List.map
8745 (function (id,fn) ->
8746 let idtype =
8747 P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
8748 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
8749 d )
8750 # 8724 "parser_cocci_menhir.ml"
8751 in
8752 _menhir_env.MenhirLib.EngineTypes.stack <- {
8753 MenhirLib.EngineTypes.state = _menhir_s;
8754 MenhirLib.EngineTypes.semv = Obj.repr _v;
8755 MenhirLib.EngineTypes.startp = _startpos;
8756 MenhirLib.EngineTypes.endp = _endpos;
8757 MenhirLib.EngineTypes.next = _menhir_stack;
8758 });
8759 (fun _menhir_env ->
8760 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8761 let {
8762 MenhirLib.EngineTypes.semv = pv;
8763 MenhirLib.EngineTypes.startp = _startpos_pv_;
8764 MenhirLib.EngineTypes.endp = _endpos_pv_;
8765 MenhirLib.EngineTypes.next = {
8766 MenhirLib.EngineTypes.semv = d;
8767 MenhirLib.EngineTypes.startp = _startpos_d_;
8768 MenhirLib.EngineTypes.endp = _endpos_d_;
8769 MenhirLib.EngineTypes.next = {
8770 MenhirLib.EngineTypes.semv = i;
8771 MenhirLib.EngineTypes.startp = _startpos_i_;
8772 MenhirLib.EngineTypes.endp = _endpos_i_;
8773 MenhirLib.EngineTypes.next = {
8774 MenhirLib.EngineTypes.state = _menhir_s;
8775 MenhirLib.EngineTypes.semv = x0;
8776 MenhirLib.EngineTypes.startp = _startpos_x0_;
8777 MenhirLib.EngineTypes.endp = _endpos_x0_;
8778 MenhirLib.EngineTypes.next = _menhir_stack;
8779 };
8780 };
8781 };
8782 } = _menhir_stack in
8783 let pv : (
8784 # 153 "parser_cocci_menhir.mly"
8785 (Data.clt)
8786 # 8760 "parser_cocci_menhir.ml"
8787 ) = Obj.magic pv in
8788 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
8789 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
8790 let x0 : 'tv_storage = Obj.magic x0 in
8791 let _startpos = _startpos_x0_ in
8792 let _endpos = _endpos_pv_ in
8793 let _v : 'tv_decl_var = let cv =
8794
8795 # 39 "standard.mly"
8796 ( None )
8797 # 8771 "parser_cocci_menhir.ml"
8798
8799 in
8800 let s =
8801 let x = x0 in
8802
8803 # 41 "standard.mly"
8804 ( Some x )
8805 # 8779 "parser_cocci_menhir.ml"
8806
8807 in
8808
8809 # 1222 "parser_cocci_menhir.mly"
8810 ( List.map
8811 (function (id,fn) ->
8812 let idtype =
8813 P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
8814 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
8815 d )
8816 # 8790 "parser_cocci_menhir.ml"
8817 in
8818 _menhir_env.MenhirLib.EngineTypes.stack <- {
8819 MenhirLib.EngineTypes.state = _menhir_s;
8820 MenhirLib.EngineTypes.semv = Obj.repr _v;
8821 MenhirLib.EngineTypes.startp = _startpos;
8822 MenhirLib.EngineTypes.endp = _endpos;
8823 MenhirLib.EngineTypes.next = _menhir_stack;
8824 });
8825 (fun _menhir_env ->
8826 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8827 let {
8828 MenhirLib.EngineTypes.semv = pv;
8829 MenhirLib.EngineTypes.startp = _startpos_pv_;
8830 MenhirLib.EngineTypes.endp = _endpos_pv_;
8831 MenhirLib.EngineTypes.next = {
8832 MenhirLib.EngineTypes.semv = d;
8833 MenhirLib.EngineTypes.startp = _startpos_d_;
8834 MenhirLib.EngineTypes.endp = _endpos_d_;
8835 MenhirLib.EngineTypes.next = {
8836 MenhirLib.EngineTypes.semv = i;
8837 MenhirLib.EngineTypes.startp = _startpos_i_;
8838 MenhirLib.EngineTypes.endp = _endpos_i_;
8839 MenhirLib.EngineTypes.next = {
8840 MenhirLib.EngineTypes.semv = x1;
8841 MenhirLib.EngineTypes.startp = _startpos_x1_;
8842 MenhirLib.EngineTypes.endp = _endpos_x1_;
8843 MenhirLib.EngineTypes.next = {
8844 MenhirLib.EngineTypes.state = _menhir_s;
8845 MenhirLib.EngineTypes.semv = x0;
8846 MenhirLib.EngineTypes.startp = _startpos_x0_;
8847 MenhirLib.EngineTypes.endp = _endpos_x0_;
8848 MenhirLib.EngineTypes.next = _menhir_stack;
8849 };
8850 };
8851 };
8852 };
8853 } = _menhir_stack in
8854 let pv : (
8855 # 153 "parser_cocci_menhir.mly"
8856 (Data.clt)
8857 # 8831 "parser_cocci_menhir.ml"
8858 ) = Obj.magic pv in
8859 let d : 'tv_comma_list_d_ident_ = Obj.magic d in
8860 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
8861 let x1 : 'tv_const_vol = Obj.magic x1 in
8862 let x0 : 'tv_storage = Obj.magic x0 in
8863 let _startpos = _startpos_x0_ in
8864 let _endpos = _endpos_pv_ in
8865 let _v : 'tv_decl_var = let cv =
8866 let x = x1 in
8867
8868 # 41 "standard.mly"
8869 ( Some x )
8870 # 8844 "parser_cocci_menhir.ml"
8871
8872 in
8873 let s =
8874 let x = x0 in
8875
8876 # 41 "standard.mly"
8877 ( Some x )
8878 # 8852 "parser_cocci_menhir.ml"
8879
8880 in
8881
8882 # 1222 "parser_cocci_menhir.mly"
8883 ( List.map
8884 (function (id,fn) ->
8885 let idtype =
8886 P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
8887 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
8888 d )
8889 # 8863 "parser_cocci_menhir.ml"
8890 in
8891 _menhir_env.MenhirLib.EngineTypes.stack <- {
8892 MenhirLib.EngineTypes.state = _menhir_s;
8893 MenhirLib.EngineTypes.semv = Obj.repr _v;
8894 MenhirLib.EngineTypes.startp = _startpos;
8895 MenhirLib.EngineTypes.endp = _endpos;
8896 MenhirLib.EngineTypes.next = _menhir_stack;
8897 });
8898 (fun _menhir_env ->
8899 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8900 let {
8901 MenhirLib.EngineTypes.semv = pv;
8902 MenhirLib.EngineTypes.startp = _startpos_pv_;
8903 MenhirLib.EngineTypes.endp = _endpos_pv_;
8904 MenhirLib.EngineTypes.next = {
8905 MenhirLib.EngineTypes.semv = e;
8906 MenhirLib.EngineTypes.startp = _startpos_e_;
8907 MenhirLib.EngineTypes.endp = _endpos_e_;
8908 MenhirLib.EngineTypes.next = {
8909 MenhirLib.EngineTypes.semv = q;
8910 MenhirLib.EngineTypes.startp = _startpos_q_;
8911 MenhirLib.EngineTypes.endp = _endpos_q_;
8912 MenhirLib.EngineTypes.next = {
8913 MenhirLib.EngineTypes.semv = d;
8914 MenhirLib.EngineTypes.startp = _startpos_d_;
8915 MenhirLib.EngineTypes.endp = _endpos_d_;
8916 MenhirLib.EngineTypes.next = {
8917 MenhirLib.EngineTypes.state = _menhir_s;
8918 MenhirLib.EngineTypes.semv = i;
8919 MenhirLib.EngineTypes.startp = _startpos_i_;
8920 MenhirLib.EngineTypes.endp = _endpos_i_;
8921 MenhirLib.EngineTypes.next = _menhir_stack;
8922 };
8923 };
8924 };
8925 };
8926 } = _menhir_stack in
8927 let pv : (
8928 # 153 "parser_cocci_menhir.mly"
8929 (Data.clt)
8930 # 8904 "parser_cocci_menhir.ml"
8931 ) = Obj.magic pv in
8932 let e : 'tv_initialize = Obj.magic e in
8933 let q : (
8934 # 153 "parser_cocci_menhir.mly"
8935 (Data.clt)
8936 # 8910 "parser_cocci_menhir.ml"
8937 ) = Obj.magic q in
8938 let d : 'tv_d_ident = Obj.magic d in
8939 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
8940 let _startpos = _startpos_i_ in
8941 let _endpos = _endpos_pv_ in
8942 let _v : 'tv_decl_var = let cv =
8943
8944 # 39 "standard.mly"
8945 ( None )
8946 # 8920 "parser_cocci_menhir.ml"
8947
8948 in
8949 let s =
8950
8951 # 39 "standard.mly"
8952 ( None )
8953 # 8927 "parser_cocci_menhir.ml"
8954
8955 in
8956
8957 # 1230 "parser_cocci_menhir.mly"
8958 ( let (id,fn) = d in
8959 !Data.add_type_name (P.id2name i);
8960 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
8961 [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
8962 P.clt2mcode ";" pv))] )
8963 # 8937 "parser_cocci_menhir.ml"
8964 in
8965 _menhir_env.MenhirLib.EngineTypes.stack <- {
8966 MenhirLib.EngineTypes.state = _menhir_s;
8967 MenhirLib.EngineTypes.semv = Obj.repr _v;
8968 MenhirLib.EngineTypes.startp = _startpos;
8969 MenhirLib.EngineTypes.endp = _endpos;
8970 MenhirLib.EngineTypes.next = _menhir_stack;
8971 });
8972 (fun _menhir_env ->
8973 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
8974 let {
8975 MenhirLib.EngineTypes.semv = pv;
8976 MenhirLib.EngineTypes.startp = _startpos_pv_;
8977 MenhirLib.EngineTypes.endp = _endpos_pv_;
8978 MenhirLib.EngineTypes.next = {
8979 MenhirLib.EngineTypes.semv = e;
8980 MenhirLib.EngineTypes.startp = _startpos_e_;
8981 MenhirLib.EngineTypes.endp = _endpos_e_;
8982 MenhirLib.EngineTypes.next = {
8983 MenhirLib.EngineTypes.semv = q;
8984 MenhirLib.EngineTypes.startp = _startpos_q_;
8985 MenhirLib.EngineTypes.endp = _endpos_q_;
8986 MenhirLib.EngineTypes.next = {
8987 MenhirLib.EngineTypes.semv = d;
8988 MenhirLib.EngineTypes.startp = _startpos_d_;
8989 MenhirLib.EngineTypes.endp = _endpos_d_;
8990 MenhirLib.EngineTypes.next = {
8991 MenhirLib.EngineTypes.semv = i;
8992 MenhirLib.EngineTypes.startp = _startpos_i_;
8993 MenhirLib.EngineTypes.endp = _endpos_i_;
8994 MenhirLib.EngineTypes.next = {
8995 MenhirLib.EngineTypes.state = _menhir_s;
8996 MenhirLib.EngineTypes.semv = x0;
8997 MenhirLib.EngineTypes.startp = _startpos_x0_;
8998 MenhirLib.EngineTypes.endp = _endpos_x0_;
8999 MenhirLib.EngineTypes.next = _menhir_stack;
9000 };
9001 };
9002 };
9003 };
9004 };
9005 } = _menhir_stack in
9006 let pv : (
9007 # 153 "parser_cocci_menhir.mly"
9008 (Data.clt)
9009 # 8983 "parser_cocci_menhir.ml"
9010 ) = Obj.magic pv in
9011 let e : 'tv_initialize = Obj.magic e in
9012 let q : (
9013 # 153 "parser_cocci_menhir.mly"
9014 (Data.clt)
9015 # 8989 "parser_cocci_menhir.ml"
9016 ) = Obj.magic q in
9017 let d : 'tv_d_ident = Obj.magic d in
9018 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
9019 let x0 : 'tv_const_vol = Obj.magic x0 in
9020 let _startpos = _startpos_x0_ in
9021 let _endpos = _endpos_pv_ in
9022 let _v : 'tv_decl_var = let cv =
9023 let x = x0 in
9024
9025 # 41 "standard.mly"
9026 ( Some x )
9027 # 9001 "parser_cocci_menhir.ml"
9028
9029 in
9030 let s =
9031
9032 # 39 "standard.mly"
9033 ( None )
9034 # 9008 "parser_cocci_menhir.ml"
9035
9036 in
9037
9038 # 1230 "parser_cocci_menhir.mly"
9039 ( let (id,fn) = d in
9040 !Data.add_type_name (P.id2name i);
9041 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
9042 [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
9043 P.clt2mcode ";" pv))] )
9044 # 9018 "parser_cocci_menhir.ml"
9045 in
9046 _menhir_env.MenhirLib.EngineTypes.stack <- {
9047 MenhirLib.EngineTypes.state = _menhir_s;
9048 MenhirLib.EngineTypes.semv = Obj.repr _v;
9049 MenhirLib.EngineTypes.startp = _startpos;
9050 MenhirLib.EngineTypes.endp = _endpos;
9051 MenhirLib.EngineTypes.next = _menhir_stack;
9052 });
9053 (fun _menhir_env ->
9054 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9055 let {
9056 MenhirLib.EngineTypes.semv = pv;
9057 MenhirLib.EngineTypes.startp = _startpos_pv_;
9058 MenhirLib.EngineTypes.endp = _endpos_pv_;
9059 MenhirLib.EngineTypes.next = {
9060 MenhirLib.EngineTypes.semv = e;
9061 MenhirLib.EngineTypes.startp = _startpos_e_;
9062 MenhirLib.EngineTypes.endp = _endpos_e_;
9063 MenhirLib.EngineTypes.next = {
9064 MenhirLib.EngineTypes.semv = q;
9065 MenhirLib.EngineTypes.startp = _startpos_q_;
9066 MenhirLib.EngineTypes.endp = _endpos_q_;
9067 MenhirLib.EngineTypes.next = {
9068 MenhirLib.EngineTypes.semv = d;
9069 MenhirLib.EngineTypes.startp = _startpos_d_;
9070 MenhirLib.EngineTypes.endp = _endpos_d_;
9071 MenhirLib.EngineTypes.next = {
9072 MenhirLib.EngineTypes.semv = i;
9073 MenhirLib.EngineTypes.startp = _startpos_i_;
9074 MenhirLib.EngineTypes.endp = _endpos_i_;
9075 MenhirLib.EngineTypes.next = {
9076 MenhirLib.EngineTypes.state = _menhir_s;
9077 MenhirLib.EngineTypes.semv = x0;
9078 MenhirLib.EngineTypes.startp = _startpos_x0_;
9079 MenhirLib.EngineTypes.endp = _endpos_x0_;
9080 MenhirLib.EngineTypes.next = _menhir_stack;
9081 };
9082 };
9083 };
9084 };
9085 };
9086 } = _menhir_stack in
9087 let pv : (
9088 # 153 "parser_cocci_menhir.mly"
9089 (Data.clt)
9090 # 9064 "parser_cocci_menhir.ml"
9091 ) = Obj.magic pv in
9092 let e : 'tv_initialize = Obj.magic e in
9093 let q : (
9094 # 153 "parser_cocci_menhir.mly"
9095 (Data.clt)
9096 # 9070 "parser_cocci_menhir.ml"
9097 ) = Obj.magic q in
9098 let d : 'tv_d_ident = Obj.magic d in
9099 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
9100 let x0 : 'tv_storage = Obj.magic x0 in
9101 let _startpos = _startpos_x0_ in
9102 let _endpos = _endpos_pv_ in
9103 let _v : 'tv_decl_var = let cv =
9104
9105 # 39 "standard.mly"
9106 ( None )
9107 # 9081 "parser_cocci_menhir.ml"
9108
9109 in
9110 let s =
9111 let x = x0 in
9112
9113 # 41 "standard.mly"
9114 ( Some x )
9115 # 9089 "parser_cocci_menhir.ml"
9116
9117 in
9118
9119 # 1230 "parser_cocci_menhir.mly"
9120 ( let (id,fn) = d in
9121 !Data.add_type_name (P.id2name i);
9122 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
9123 [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
9124 P.clt2mcode ";" pv))] )
9125 # 9099 "parser_cocci_menhir.ml"
9126 in
9127 _menhir_env.MenhirLib.EngineTypes.stack <- {
9128 MenhirLib.EngineTypes.state = _menhir_s;
9129 MenhirLib.EngineTypes.semv = Obj.repr _v;
9130 MenhirLib.EngineTypes.startp = _startpos;
9131 MenhirLib.EngineTypes.endp = _endpos;
9132 MenhirLib.EngineTypes.next = _menhir_stack;
9133 });
9134 (fun _menhir_env ->
9135 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9136 let {
9137 MenhirLib.EngineTypes.semv = pv;
9138 MenhirLib.EngineTypes.startp = _startpos_pv_;
9139 MenhirLib.EngineTypes.endp = _endpos_pv_;
9140 MenhirLib.EngineTypes.next = {
9141 MenhirLib.EngineTypes.semv = e;
9142 MenhirLib.EngineTypes.startp = _startpos_e_;
9143 MenhirLib.EngineTypes.endp = _endpos_e_;
9144 MenhirLib.EngineTypes.next = {
9145 MenhirLib.EngineTypes.semv = q;
9146 MenhirLib.EngineTypes.startp = _startpos_q_;
9147 MenhirLib.EngineTypes.endp = _endpos_q_;
9148 MenhirLib.EngineTypes.next = {
9149 MenhirLib.EngineTypes.semv = d;
9150 MenhirLib.EngineTypes.startp = _startpos_d_;
9151 MenhirLib.EngineTypes.endp = _endpos_d_;
9152 MenhirLib.EngineTypes.next = {
9153 MenhirLib.EngineTypes.semv = i;
9154 MenhirLib.EngineTypes.startp = _startpos_i_;
9155 MenhirLib.EngineTypes.endp = _endpos_i_;
9156 MenhirLib.EngineTypes.next = {
9157 MenhirLib.EngineTypes.semv = x1;
9158 MenhirLib.EngineTypes.startp = _startpos_x1_;
9159 MenhirLib.EngineTypes.endp = _endpos_x1_;
9160 MenhirLib.EngineTypes.next = {
9161 MenhirLib.EngineTypes.state = _menhir_s;
9162 MenhirLib.EngineTypes.semv = x0;
9163 MenhirLib.EngineTypes.startp = _startpos_x0_;
9164 MenhirLib.EngineTypes.endp = _endpos_x0_;
9165 MenhirLib.EngineTypes.next = _menhir_stack;
9166 };
9167 };
9168 };
9169 };
9170 };
9171 };
9172 } = _menhir_stack in
9173 let pv : (
9174 # 153 "parser_cocci_menhir.mly"
9175 (Data.clt)
9176 # 9150 "parser_cocci_menhir.ml"
9177 ) = Obj.magic pv in
9178 let e : 'tv_initialize = Obj.magic e in
9179 let q : (
9180 # 153 "parser_cocci_menhir.mly"
9181 (Data.clt)
9182 # 9156 "parser_cocci_menhir.ml"
9183 ) = Obj.magic q in
9184 let d : 'tv_d_ident = Obj.magic d in
9185 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
9186 let x1 : 'tv_const_vol = Obj.magic x1 in
9187 let x0 : 'tv_storage = Obj.magic x0 in
9188 let _startpos = _startpos_x0_ in
9189 let _endpos = _endpos_pv_ in
9190 let _v : 'tv_decl_var = let cv =
9191 let x = x1 in
9192
9193 # 41 "standard.mly"
9194 ( Some x )
9195 # 9169 "parser_cocci_menhir.ml"
9196
9197 in
9198 let s =
9199 let x = x0 in
9200
9201 # 41 "standard.mly"
9202 ( Some x )
9203 # 9177 "parser_cocci_menhir.ml"
9204
9205 in
9206
9207 # 1230 "parser_cocci_menhir.mly"
9208 ( let (id,fn) = d in
9209 !Data.add_type_name (P.id2name i);
9210 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
9211 [Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
9212 P.clt2mcode ";" pv))] )
9213 # 9187 "parser_cocci_menhir.ml"
9214 in
9215 _menhir_env.MenhirLib.EngineTypes.stack <- {
9216 MenhirLib.EngineTypes.state = _menhir_s;
9217 MenhirLib.EngineTypes.semv = Obj.repr _v;
9218 MenhirLib.EngineTypes.startp = _startpos;
9219 MenhirLib.EngineTypes.endp = _endpos;
9220 MenhirLib.EngineTypes.next = _menhir_stack;
9221 });
9222 (fun _menhir_env ->
9223 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9224 let {
9225 MenhirLib.EngineTypes.semv = pv;
9226 MenhirLib.EngineTypes.startp = _startpos_pv_;
9227 MenhirLib.EngineTypes.endp = _endpos_pv_;
9228 MenhirLib.EngineTypes.next = {
9229 MenhirLib.EngineTypes.semv = rp2;
9230 MenhirLib.EngineTypes.startp = _startpos_rp2_;
9231 MenhirLib.EngineTypes.endp = _endpos_rp2_;
9232 MenhirLib.EngineTypes.next = {
9233 MenhirLib.EngineTypes.semv = p;
9234 MenhirLib.EngineTypes.startp = _startpos_p_;
9235 MenhirLib.EngineTypes.endp = _endpos_p_;
9236 MenhirLib.EngineTypes.next = {
9237 MenhirLib.EngineTypes.semv = lp2;
9238 MenhirLib.EngineTypes.startp = _startpos_lp2_;
9239 MenhirLib.EngineTypes.endp = _endpos_lp2_;
9240 MenhirLib.EngineTypes.next = {
9241 MenhirLib.EngineTypes.semv = rp1;
9242 MenhirLib.EngineTypes.startp = _startpos_rp1_;
9243 MenhirLib.EngineTypes.endp = _endpos_rp1_;
9244 MenhirLib.EngineTypes.next = {
9245 MenhirLib.EngineTypes.semv = d;
9246 MenhirLib.EngineTypes.startp = _startpos_d_;
9247 MenhirLib.EngineTypes.endp = _endpos_d_;
9248 MenhirLib.EngineTypes.next = {
9249 MenhirLib.EngineTypes.semv = st;
9250 MenhirLib.EngineTypes.startp = _startpos_st_;
9251 MenhirLib.EngineTypes.endp = _endpos_st_;
9252 MenhirLib.EngineTypes.next = {
9253 MenhirLib.EngineTypes.semv = lp1;
9254 MenhirLib.EngineTypes.startp = _startpos_lp1_;
9255 MenhirLib.EngineTypes.endp = _endpos_lp1_;
9256 MenhirLib.EngineTypes.next = {
9257 MenhirLib.EngineTypes.state = _menhir_s;
9258 MenhirLib.EngineTypes.semv = t;
9259 MenhirLib.EngineTypes.startp = _startpos_t_;
9260 MenhirLib.EngineTypes.endp = _endpos_t_;
9261 MenhirLib.EngineTypes.next = _menhir_stack;
9262 };
9263 };
9264 };
9265 };
9266 };
9267 };
9268 };
9269 };
9270 } = _menhir_stack in
9271 let pv : (
9272 # 153 "parser_cocci_menhir.mly"
9273 (Data.clt)
9274 # 9248 "parser_cocci_menhir.ml"
9275 ) = Obj.magic pv in
9276 let rp2 : (
9277 # 123 "parser_cocci_menhir.mly"
9278 (Data.clt)
9279 # 9253 "parser_cocci_menhir.ml"
9280 ) = Obj.magic rp2 in
9281 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
9282 let lp2 : (
9283 # 122 "parser_cocci_menhir.mly"
9284 (Data.clt)
9285 # 9259 "parser_cocci_menhir.ml"
9286 ) = Obj.magic lp2 in
9287 let rp1 : (
9288 # 123 "parser_cocci_menhir.mly"
9289 (Data.clt)
9290 # 9264 "parser_cocci_menhir.ml"
9291 ) = Obj.magic rp1 in
9292 let d : 'tv_d_ident = Obj.magic d in
9293 let st : (
9294 # 145 "parser_cocci_menhir.mly"
9295 (Data.clt)
9296 # 9270 "parser_cocci_menhir.ml"
9297 ) = Obj.magic st in
9298 let lp1 : (
9299 # 122 "parser_cocci_menhir.mly"
9300 (Data.clt)
9301 # 9275 "parser_cocci_menhir.ml"
9302 ) = Obj.magic lp1 in
9303 let t : 'tv_ctype = Obj.magic t in
9304 let _startpos = _startpos_t_ in
9305 let _endpos = _endpos_pv_ in
9306 let _v : 'tv_decl_var = let s =
9307
9308 # 39 "standard.mly"
9309 ( None )
9310 # 9284 "parser_cocci_menhir.ml"
9311
9312 in
9313
9314 # 1240 "parser_cocci_menhir.mly"
9315 ( let (id,fn) = d in
9316 let t =
9317 Ast0.wrap
9318 (Ast0.FunctionPointer
9319 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
9320 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
9321 [Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))] )
9322 # 9296 "parser_cocci_menhir.ml"
9323 in
9324 _menhir_env.MenhirLib.EngineTypes.stack <- {
9325 MenhirLib.EngineTypes.state = _menhir_s;
9326 MenhirLib.EngineTypes.semv = Obj.repr _v;
9327 MenhirLib.EngineTypes.startp = _startpos;
9328 MenhirLib.EngineTypes.endp = _endpos;
9329 MenhirLib.EngineTypes.next = _menhir_stack;
9330 });
9331 (fun _menhir_env ->
9332 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9333 let {
9334 MenhirLib.EngineTypes.semv = pv;
9335 MenhirLib.EngineTypes.startp = _startpos_pv_;
9336 MenhirLib.EngineTypes.endp = _endpos_pv_;
9337 MenhirLib.EngineTypes.next = {
9338 MenhirLib.EngineTypes.semv = rp2;
9339 MenhirLib.EngineTypes.startp = _startpos_rp2_;
9340 MenhirLib.EngineTypes.endp = _endpos_rp2_;
9341 MenhirLib.EngineTypes.next = {
9342 MenhirLib.EngineTypes.semv = p;
9343 MenhirLib.EngineTypes.startp = _startpos_p_;
9344 MenhirLib.EngineTypes.endp = _endpos_p_;
9345 MenhirLib.EngineTypes.next = {
9346 MenhirLib.EngineTypes.semv = lp2;
9347 MenhirLib.EngineTypes.startp = _startpos_lp2_;
9348 MenhirLib.EngineTypes.endp = _endpos_lp2_;
9349 MenhirLib.EngineTypes.next = {
9350 MenhirLib.EngineTypes.semv = rp1;
9351 MenhirLib.EngineTypes.startp = _startpos_rp1_;
9352 MenhirLib.EngineTypes.endp = _endpos_rp1_;
9353 MenhirLib.EngineTypes.next = {
9354 MenhirLib.EngineTypes.semv = d;
9355 MenhirLib.EngineTypes.startp = _startpos_d_;
9356 MenhirLib.EngineTypes.endp = _endpos_d_;
9357 MenhirLib.EngineTypes.next = {
9358 MenhirLib.EngineTypes.semv = st;
9359 MenhirLib.EngineTypes.startp = _startpos_st_;
9360 MenhirLib.EngineTypes.endp = _endpos_st_;
9361 MenhirLib.EngineTypes.next = {
9362 MenhirLib.EngineTypes.semv = lp1;
9363 MenhirLib.EngineTypes.startp = _startpos_lp1_;
9364 MenhirLib.EngineTypes.endp = _endpos_lp1_;
9365 MenhirLib.EngineTypes.next = {
9366 MenhirLib.EngineTypes.semv = t;
9367 MenhirLib.EngineTypes.startp = _startpos_t_;
9368 MenhirLib.EngineTypes.endp = _endpos_t_;
9369 MenhirLib.EngineTypes.next = {
9370 MenhirLib.EngineTypes.state = _menhir_s;
9371 MenhirLib.EngineTypes.semv = x0;
9372 MenhirLib.EngineTypes.startp = _startpos_x0_;
9373 MenhirLib.EngineTypes.endp = _endpos_x0_;
9374 MenhirLib.EngineTypes.next = _menhir_stack;
9375 };
9376 };
9377 };
9378 };
9379 };
9380 };
9381 };
9382 };
9383 };
9384 } = _menhir_stack in
9385 let pv : (
9386 # 153 "parser_cocci_menhir.mly"
9387 (Data.clt)
9388 # 9362 "parser_cocci_menhir.ml"
9389 ) = Obj.magic pv in
9390 let rp2 : (
9391 # 123 "parser_cocci_menhir.mly"
9392 (Data.clt)
9393 # 9367 "parser_cocci_menhir.ml"
9394 ) = Obj.magic rp2 in
9395 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
9396 let lp2 : (
9397 # 122 "parser_cocci_menhir.mly"
9398 (Data.clt)
9399 # 9373 "parser_cocci_menhir.ml"
9400 ) = Obj.magic lp2 in
9401 let rp1 : (
9402 # 123 "parser_cocci_menhir.mly"
9403 (Data.clt)
9404 # 9378 "parser_cocci_menhir.ml"
9405 ) = Obj.magic rp1 in
9406 let d : 'tv_d_ident = Obj.magic d in
9407 let st : (
9408 # 145 "parser_cocci_menhir.mly"
9409 (Data.clt)
9410 # 9384 "parser_cocci_menhir.ml"
9411 ) = Obj.magic st in
9412 let lp1 : (
9413 # 122 "parser_cocci_menhir.mly"
9414 (Data.clt)
9415 # 9389 "parser_cocci_menhir.ml"
9416 ) = Obj.magic lp1 in
9417 let t : 'tv_ctype = Obj.magic t in
9418 let x0 : 'tv_storage = Obj.magic x0 in
9419 let _startpos = _startpos_x0_ in
9420 let _endpos = _endpos_pv_ in
9421 let _v : 'tv_decl_var = let s =
9422 let x = x0 in
9423
9424 # 41 "standard.mly"
9425 ( Some x )
9426 # 9400 "parser_cocci_menhir.ml"
9427
9428 in
9429
9430 # 1240 "parser_cocci_menhir.mly"
9431 ( let (id,fn) = d in
9432 let t =
9433 Ast0.wrap
9434 (Ast0.FunctionPointer
9435 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
9436 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
9437 [Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))] )
9438 # 9412 "parser_cocci_menhir.ml"
9439 in
9440 _menhir_env.MenhirLib.EngineTypes.stack <- {
9441 MenhirLib.EngineTypes.state = _menhir_s;
9442 MenhirLib.EngineTypes.semv = Obj.repr _v;
9443 MenhirLib.EngineTypes.startp = _startpos;
9444 MenhirLib.EngineTypes.endp = _endpos;
9445 MenhirLib.EngineTypes.next = _menhir_stack;
9446 });
9447 (fun _menhir_env ->
9448 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9449 let {
9450 MenhirLib.EngineTypes.semv = _5;
9451 MenhirLib.EngineTypes.startp = _startpos__5_;
9452 MenhirLib.EngineTypes.endp = _endpos__5_;
9453 MenhirLib.EngineTypes.next = {
9454 MenhirLib.EngineTypes.semv = _4;
9455 MenhirLib.EngineTypes.startp = _startpos__4_;
9456 MenhirLib.EngineTypes.endp = _endpos__4_;
9457 MenhirLib.EngineTypes.next = {
9458 MenhirLib.EngineTypes.semv = _3;
9459 MenhirLib.EngineTypes.startp = _startpos__3_;
9460 MenhirLib.EngineTypes.endp = _endpos__3_;
9461 MenhirLib.EngineTypes.next = {
9462 MenhirLib.EngineTypes.semv = _2;
9463 MenhirLib.EngineTypes.startp = _startpos__2_;
9464 MenhirLib.EngineTypes.endp = _endpos__2_;
9465 MenhirLib.EngineTypes.next = {
9466 MenhirLib.EngineTypes.state = _menhir_s;
9467 MenhirLib.EngineTypes.semv = _1;
9468 MenhirLib.EngineTypes.startp = _startpos__1_;
9469 MenhirLib.EngineTypes.endp = _endpos__1_;
9470 MenhirLib.EngineTypes.next = _menhir_stack;
9471 };
9472 };
9473 };
9474 };
9475 } = _menhir_stack in
9476 let _5 : (
9477 # 153 "parser_cocci_menhir.mly"
9478 (Data.clt)
9479 # 9453 "parser_cocci_menhir.ml"
9480 ) = Obj.magic _5 in
9481 let _4 : (
9482 # 123 "parser_cocci_menhir.mly"
9483 (Data.clt)
9484 # 9458 "parser_cocci_menhir.ml"
9485 ) = Obj.magic _4 in
9486 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
9487 let _2 : (
9488 # 122 "parser_cocci_menhir.mly"
9489 (Data.clt)
9490 # 9464 "parser_cocci_menhir.ml"
9491 ) = Obj.magic _2 in
9492 let _1 : 'tv_decl_ident = Obj.magic _1 in
9493 let _startpos = _startpos__1_ in
9494 let _endpos = _endpos__5_ in
9495 let _v : 'tv_decl_var =
9496 # 1248 "parser_cocci_menhir.mly"
9497 ( [Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3,
9498 P.clt2mcode ")" _4,P.clt2mcode ";" _5))] )
9499 # 9473 "parser_cocci_menhir.ml"
9500 in
9501 _menhir_env.MenhirLib.EngineTypes.stack <- {
9502 MenhirLib.EngineTypes.state = _menhir_s;
9503 MenhirLib.EngineTypes.semv = Obj.repr _v;
9504 MenhirLib.EngineTypes.startp = _startpos;
9505 MenhirLib.EngineTypes.endp = _endpos;
9506 MenhirLib.EngineTypes.next = _menhir_stack;
9507 });
9508 (fun _menhir_env ->
9509 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9510 let {
9511 MenhirLib.EngineTypes.semv = _7;
9512 MenhirLib.EngineTypes.startp = _startpos__7_;
9513 MenhirLib.EngineTypes.endp = _endpos__7_;
9514 MenhirLib.EngineTypes.next = {
9515 MenhirLib.EngineTypes.semv = e;
9516 MenhirLib.EngineTypes.startp = _startpos_e_;
9517 MenhirLib.EngineTypes.endp = _endpos_e_;
9518 MenhirLib.EngineTypes.next = {
9519 MenhirLib.EngineTypes.semv = q;
9520 MenhirLib.EngineTypes.startp = _startpos_q_;
9521 MenhirLib.EngineTypes.endp = _endpos_q_;
9522 MenhirLib.EngineTypes.next = {
9523 MenhirLib.EngineTypes.semv = _4;
9524 MenhirLib.EngineTypes.startp = _startpos__4_;
9525 MenhirLib.EngineTypes.endp = _endpos__4_;
9526 MenhirLib.EngineTypes.next = {
9527 MenhirLib.EngineTypes.semv = _3;
9528 MenhirLib.EngineTypes.startp = _startpos__3_;
9529 MenhirLib.EngineTypes.endp = _endpos__3_;
9530 MenhirLib.EngineTypes.next = {
9531 MenhirLib.EngineTypes.semv = _2;
9532 MenhirLib.EngineTypes.startp = _startpos__2_;
9533 MenhirLib.EngineTypes.endp = _endpos__2_;
9534 MenhirLib.EngineTypes.next = {
9535 MenhirLib.EngineTypes.state = _menhir_s;
9536 MenhirLib.EngineTypes.semv = _1;
9537 MenhirLib.EngineTypes.startp = _startpos__1_;
9538 MenhirLib.EngineTypes.endp = _endpos__1_;
9539 MenhirLib.EngineTypes.next = _menhir_stack;
9540 };
9541 };
9542 };
9543 };
9544 };
9545 };
9546 } = _menhir_stack in
9547 let _7 : (
9548 # 153 "parser_cocci_menhir.mly"
9549 (Data.clt)
9550 # 9524 "parser_cocci_menhir.ml"
9551 ) = Obj.magic _7 in
9552 let e : 'tv_initialize = Obj.magic e in
9553 let q : (
9554 # 153 "parser_cocci_menhir.mly"
9555 (Data.clt)
9556 # 9530 "parser_cocci_menhir.ml"
9557 ) = Obj.magic q in
9558 let _4 : (
9559 # 123 "parser_cocci_menhir.mly"
9560 (Data.clt)
9561 # 9535 "parser_cocci_menhir.ml"
9562 ) = Obj.magic _4 in
9563 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
9564 let _2 : (
9565 # 122 "parser_cocci_menhir.mly"
9566 (Data.clt)
9567 # 9541 "parser_cocci_menhir.ml"
9568 ) = Obj.magic _2 in
9569 let _1 : 'tv_decl_ident = Obj.magic _1 in
9570 let _startpos = _startpos__1_ in
9571 let _endpos = _endpos__7_ in
9572 let _v : 'tv_decl_var =
9573 # 1251 "parser_cocci_menhir.mly"
9574 ( [Ast0.wrap
9575 (Ast0.MacroDeclInit
9576 (_1,P.clt2mcode "(" _2,_3,
9577 P.clt2mcode ")" _4,P.clt2mcode "=" q,e,
9578 P.clt2mcode ";" _7))] )
9579 # 9553 "parser_cocci_menhir.ml"
9580 in
9581 _menhir_env.MenhirLib.EngineTypes.stack <- {
9582 MenhirLib.EngineTypes.state = _menhir_s;
9583 MenhirLib.EngineTypes.semv = Obj.repr _v;
9584 MenhirLib.EngineTypes.startp = _startpos;
9585 MenhirLib.EngineTypes.endp = _endpos;
9586 MenhirLib.EngineTypes.next = _menhir_stack;
9587 });
9588 (fun _menhir_env ->
9589 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9590 let {
9591 MenhirLib.EngineTypes.semv = pv;
9592 MenhirLib.EngineTypes.startp = _startpos_pv_;
9593 MenhirLib.EngineTypes.endp = _endpos_pv_;
9594 MenhirLib.EngineTypes.next = {
9595 MenhirLib.EngineTypes.semv = e;
9596 MenhirLib.EngineTypes.startp = _startpos_e_;
9597 MenhirLib.EngineTypes.endp = _endpos_e_;
9598 MenhirLib.EngineTypes.next = {
9599 MenhirLib.EngineTypes.semv = q;
9600 MenhirLib.EngineTypes.startp = _startpos_q_;
9601 MenhirLib.EngineTypes.endp = _endpos_q_;
9602 MenhirLib.EngineTypes.next = {
9603 MenhirLib.EngineTypes.semv = rp2;
9604 MenhirLib.EngineTypes.startp = _startpos_rp2_;
9605 MenhirLib.EngineTypes.endp = _endpos_rp2_;
9606 MenhirLib.EngineTypes.next = {
9607 MenhirLib.EngineTypes.semv = p;
9608 MenhirLib.EngineTypes.startp = _startpos_p_;
9609 MenhirLib.EngineTypes.endp = _endpos_p_;
9610 MenhirLib.EngineTypes.next = {
9611 MenhirLib.EngineTypes.semv = lp2;
9612 MenhirLib.EngineTypes.startp = _startpos_lp2_;
9613 MenhirLib.EngineTypes.endp = _endpos_lp2_;
9614 MenhirLib.EngineTypes.next = {
9615 MenhirLib.EngineTypes.semv = rp1;
9616 MenhirLib.EngineTypes.startp = _startpos_rp1_;
9617 MenhirLib.EngineTypes.endp = _endpos_rp1_;
9618 MenhirLib.EngineTypes.next = {
9619 MenhirLib.EngineTypes.semv = d;
9620 MenhirLib.EngineTypes.startp = _startpos_d_;
9621 MenhirLib.EngineTypes.endp = _endpos_d_;
9622 MenhirLib.EngineTypes.next = {
9623 MenhirLib.EngineTypes.semv = st;
9624 MenhirLib.EngineTypes.startp = _startpos_st_;
9625 MenhirLib.EngineTypes.endp = _endpos_st_;
9626 MenhirLib.EngineTypes.next = {
9627 MenhirLib.EngineTypes.semv = lp1;
9628 MenhirLib.EngineTypes.startp = _startpos_lp1_;
9629 MenhirLib.EngineTypes.endp = _endpos_lp1_;
9630 MenhirLib.EngineTypes.next = {
9631 MenhirLib.EngineTypes.state = _menhir_s;
9632 MenhirLib.EngineTypes.semv = t;
9633 MenhirLib.EngineTypes.startp = _startpos_t_;
9634 MenhirLib.EngineTypes.endp = _endpos_t_;
9635 MenhirLib.EngineTypes.next = _menhir_stack;
9636 };
9637 };
9638 };
9639 };
9640 };
9641 };
9642 };
9643 };
9644 };
9645 };
9646 } = _menhir_stack in
9647 let pv : (
9648 # 153 "parser_cocci_menhir.mly"
9649 (Data.clt)
9650 # 9624 "parser_cocci_menhir.ml"
9651 ) = Obj.magic pv in
9652 let e : 'tv_initialize = Obj.magic e in
9653 let q : (
9654 # 153 "parser_cocci_menhir.mly"
9655 (Data.clt)
9656 # 9630 "parser_cocci_menhir.ml"
9657 ) = Obj.magic q in
9658 let rp2 : (
9659 # 123 "parser_cocci_menhir.mly"
9660 (Data.clt)
9661 # 9635 "parser_cocci_menhir.ml"
9662 ) = Obj.magic rp2 in
9663 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
9664 let lp2 : (
9665 # 122 "parser_cocci_menhir.mly"
9666 (Data.clt)
9667 # 9641 "parser_cocci_menhir.ml"
9668 ) = Obj.magic lp2 in
9669 let rp1 : (
9670 # 123 "parser_cocci_menhir.mly"
9671 (Data.clt)
9672 # 9646 "parser_cocci_menhir.ml"
9673 ) = Obj.magic rp1 in
9674 let d : 'tv_d_ident = Obj.magic d in
9675 let st : (
9676 # 145 "parser_cocci_menhir.mly"
9677 (Data.clt)
9678 # 9652 "parser_cocci_menhir.ml"
9679 ) = Obj.magic st in
9680 let lp1 : (
9681 # 122 "parser_cocci_menhir.mly"
9682 (Data.clt)
9683 # 9657 "parser_cocci_menhir.ml"
9684 ) = Obj.magic lp1 in
9685 let t : 'tv_ctype = Obj.magic t in
9686 let _startpos = _startpos_t_ in
9687 let _endpos = _endpos_pv_ in
9688 let _v : 'tv_decl_var = let s =
9689
9690 # 39 "standard.mly"
9691 ( None )
9692 # 9666 "parser_cocci_menhir.ml"
9693
9694 in
9695
9696 # 1260 "parser_cocci_menhir.mly"
9697 ( let (id,fn) = d in
9698 let t =
9699 Ast0.wrap
9700 (Ast0.FunctionPointer
9701 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
9702 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
9703 [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
9704 # 9678 "parser_cocci_menhir.ml"
9705 in
9706 _menhir_env.MenhirLib.EngineTypes.stack <- {
9707 MenhirLib.EngineTypes.state = _menhir_s;
9708 MenhirLib.EngineTypes.semv = Obj.repr _v;
9709 MenhirLib.EngineTypes.startp = _startpos;
9710 MenhirLib.EngineTypes.endp = _endpos;
9711 MenhirLib.EngineTypes.next = _menhir_stack;
9712 });
9713 (fun _menhir_env ->
9714 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9715 let {
9716 MenhirLib.EngineTypes.semv = pv;
9717 MenhirLib.EngineTypes.startp = _startpos_pv_;
9718 MenhirLib.EngineTypes.endp = _endpos_pv_;
9719 MenhirLib.EngineTypes.next = {
9720 MenhirLib.EngineTypes.semv = e;
9721 MenhirLib.EngineTypes.startp = _startpos_e_;
9722 MenhirLib.EngineTypes.endp = _endpos_e_;
9723 MenhirLib.EngineTypes.next = {
9724 MenhirLib.EngineTypes.semv = q;
9725 MenhirLib.EngineTypes.startp = _startpos_q_;
9726 MenhirLib.EngineTypes.endp = _endpos_q_;
9727 MenhirLib.EngineTypes.next = {
9728 MenhirLib.EngineTypes.semv = rp2;
9729 MenhirLib.EngineTypes.startp = _startpos_rp2_;
9730 MenhirLib.EngineTypes.endp = _endpos_rp2_;
9731 MenhirLib.EngineTypes.next = {
9732 MenhirLib.EngineTypes.semv = p;
9733 MenhirLib.EngineTypes.startp = _startpos_p_;
9734 MenhirLib.EngineTypes.endp = _endpos_p_;
9735 MenhirLib.EngineTypes.next = {
9736 MenhirLib.EngineTypes.semv = lp2;
9737 MenhirLib.EngineTypes.startp = _startpos_lp2_;
9738 MenhirLib.EngineTypes.endp = _endpos_lp2_;
9739 MenhirLib.EngineTypes.next = {
9740 MenhirLib.EngineTypes.semv = rp1;
9741 MenhirLib.EngineTypes.startp = _startpos_rp1_;
9742 MenhirLib.EngineTypes.endp = _endpos_rp1_;
9743 MenhirLib.EngineTypes.next = {
9744 MenhirLib.EngineTypes.semv = d;
9745 MenhirLib.EngineTypes.startp = _startpos_d_;
9746 MenhirLib.EngineTypes.endp = _endpos_d_;
9747 MenhirLib.EngineTypes.next = {
9748 MenhirLib.EngineTypes.semv = st;
9749 MenhirLib.EngineTypes.startp = _startpos_st_;
9750 MenhirLib.EngineTypes.endp = _endpos_st_;
9751 MenhirLib.EngineTypes.next = {
9752 MenhirLib.EngineTypes.semv = lp1;
9753 MenhirLib.EngineTypes.startp = _startpos_lp1_;
9754 MenhirLib.EngineTypes.endp = _endpos_lp1_;
9755 MenhirLib.EngineTypes.next = {
9756 MenhirLib.EngineTypes.semv = t;
9757 MenhirLib.EngineTypes.startp = _startpos_t_;
9758 MenhirLib.EngineTypes.endp = _endpos_t_;
9759 MenhirLib.EngineTypes.next = {
9760 MenhirLib.EngineTypes.state = _menhir_s;
9761 MenhirLib.EngineTypes.semv = x0;
9762 MenhirLib.EngineTypes.startp = _startpos_x0_;
9763 MenhirLib.EngineTypes.endp = _endpos_x0_;
9764 MenhirLib.EngineTypes.next = _menhir_stack;
9765 };
9766 };
9767 };
9768 };
9769 };
9770 };
9771 };
9772 };
9773 };
9774 };
9775 };
9776 } = _menhir_stack in
9777 let pv : (
9778 # 153 "parser_cocci_menhir.mly"
9779 (Data.clt)
9780 # 9754 "parser_cocci_menhir.ml"
9781 ) = Obj.magic pv in
9782 let e : 'tv_initialize = Obj.magic e in
9783 let q : (
9784 # 153 "parser_cocci_menhir.mly"
9785 (Data.clt)
9786 # 9760 "parser_cocci_menhir.ml"
9787 ) = Obj.magic q in
9788 let rp2 : (
9789 # 123 "parser_cocci_menhir.mly"
9790 (Data.clt)
9791 # 9765 "parser_cocci_menhir.ml"
9792 ) = Obj.magic rp2 in
9793 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
9794 let lp2 : (
9795 # 122 "parser_cocci_menhir.mly"
9796 (Data.clt)
9797 # 9771 "parser_cocci_menhir.ml"
9798 ) = Obj.magic lp2 in
9799 let rp1 : (
9800 # 123 "parser_cocci_menhir.mly"
9801 (Data.clt)
9802 # 9776 "parser_cocci_menhir.ml"
9803 ) = Obj.magic rp1 in
9804 let d : 'tv_d_ident = Obj.magic d in
9805 let st : (
9806 # 145 "parser_cocci_menhir.mly"
9807 (Data.clt)
9808 # 9782 "parser_cocci_menhir.ml"
9809 ) = Obj.magic st in
9810 let lp1 : (
9811 # 122 "parser_cocci_menhir.mly"
9812 (Data.clt)
9813 # 9787 "parser_cocci_menhir.ml"
9814 ) = Obj.magic lp1 in
9815 let t : 'tv_ctype = Obj.magic t in
9816 let x0 : 'tv_storage = Obj.magic x0 in
9817 let _startpos = _startpos_x0_ in
9818 let _endpos = _endpos_pv_ in
9819 let _v : 'tv_decl_var = let s =
9820 let x = x0 in
9821
9822 # 41 "standard.mly"
9823 ( Some x )
9824 # 9798 "parser_cocci_menhir.ml"
9825
9826 in
9827
9828 # 1260 "parser_cocci_menhir.mly"
9829 ( let (id,fn) = d in
9830 let t =
9831 Ast0.wrap
9832 (Ast0.FunctionPointer
9833 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
9834 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
9835 [Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
9836 # 9810 "parser_cocci_menhir.ml"
9837 in
9838 _menhir_env.MenhirLib.EngineTypes.stack <- {
9839 MenhirLib.EngineTypes.state = _menhir_s;
9840 MenhirLib.EngineTypes.semv = Obj.repr _v;
9841 MenhirLib.EngineTypes.startp = _startpos;
9842 MenhirLib.EngineTypes.endp = _endpos;
9843 MenhirLib.EngineTypes.next = _menhir_stack;
9844 });
9845 (fun _menhir_env ->
9846 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9847 let {
9848 MenhirLib.EngineTypes.semv = pv;
9849 MenhirLib.EngineTypes.startp = _startpos_pv_;
9850 MenhirLib.EngineTypes.endp = _endpos_pv_;
9851 MenhirLib.EngineTypes.next = {
9852 MenhirLib.EngineTypes.semv = id;
9853 MenhirLib.EngineTypes.startp = _startpos_id_;
9854 MenhirLib.EngineTypes.endp = _endpos_id_;
9855 MenhirLib.EngineTypes.next = {
9856 MenhirLib.EngineTypes.semv = t;
9857 MenhirLib.EngineTypes.startp = _startpos_t_;
9858 MenhirLib.EngineTypes.endp = _endpos_t_;
9859 MenhirLib.EngineTypes.next = {
9860 MenhirLib.EngineTypes.state = _menhir_s;
9861 MenhirLib.EngineTypes.semv = s;
9862 MenhirLib.EngineTypes.startp = _startpos_s_;
9863 MenhirLib.EngineTypes.endp = _endpos_s_;
9864 MenhirLib.EngineTypes.next = _menhir_stack;
9865 };
9866 };
9867 };
9868 } = _menhir_stack in
9869 let pv : (
9870 # 153 "parser_cocci_menhir.mly"
9871 (Data.clt)
9872 # 9846 "parser_cocci_menhir.ml"
9873 ) = Obj.magic pv in
9874 let id : 'tv_comma_list_typedef_ident_ = Obj.magic id in
9875 let t : 'tv_typedef_ctype = Obj.magic t in
9876 let s : (
9877 # 95 "parser_cocci_menhir.mly"
9878 (Data.clt)
9879 # 9853 "parser_cocci_menhir.ml"
9880 ) = Obj.magic s in
9881 let _startpos = _startpos_s_ in
9882 let _endpos = _endpos_pv_ in
9883 let _v : 'tv_decl_var =
9884 # 1268 "parser_cocci_menhir.mly"
9885 ( let s = P.clt2mcode "typedef" s in
9886 List.map
9887 (function id ->
9888 Ast0.wrap(Ast0.Typedef(s,t,id,P.clt2mcode ";" pv)))
9889 id )
9890 # 9864 "parser_cocci_menhir.ml"
9891 in
9892 _menhir_env.MenhirLib.EngineTypes.stack <- {
9893 MenhirLib.EngineTypes.state = _menhir_s;
9894 MenhirLib.EngineTypes.semv = Obj.repr _v;
9895 MenhirLib.EngineTypes.startp = _startpos;
9896 MenhirLib.EngineTypes.endp = _endpos;
9897 MenhirLib.EngineTypes.next = _menhir_stack;
9898 });
9899 (fun _menhir_env ->
9900 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9901 let {
9902 MenhirLib.EngineTypes.state = _menhir_s;
9903 MenhirLib.EngineTypes.semv = _1;
9904 MenhirLib.EngineTypes.startp = _startpos__1_;
9905 MenhirLib.EngineTypes.endp = _endpos__1_;
9906 MenhirLib.EngineTypes.next = _menhir_stack;
9907 } = _menhir_stack in
9908 let _1 : 'tv_empty_list_start_dparam_TEllipsis_ = Obj.magic _1 in
9909 let _startpos = _startpos__1_ in
9910 let _endpos = _endpos__1_ in
9911 let _v : 'tv_define_param_list_option =
9912 # 985 "parser_cocci_menhir.mly"
9913 ( Ast0.wrap
9914 (Ast0.DOTS
9915 (_1
9916 (fun _ d -> Ast0.wrap(Ast0.DPdots(P.clt2mcode "," d)))
9917 (fun c -> Ast0.DPComma c))) )
9918 # 9892 "parser_cocci_menhir.ml"
9919 in
9920 _menhir_env.MenhirLib.EngineTypes.stack <- {
9921 MenhirLib.EngineTypes.state = _menhir_s;
9922 MenhirLib.EngineTypes.semv = Obj.repr _v;
9923 MenhirLib.EngineTypes.startp = _startpos;
9924 MenhirLib.EngineTypes.endp = _endpos;
9925 MenhirLib.EngineTypes.next = _menhir_stack;
9926 });
9927 (fun _menhir_env ->
9928 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9929 let {
9930 MenhirLib.EngineTypes.state = _menhir_s;
9931 MenhirLib.EngineTypes.semv = _1;
9932 MenhirLib.EngineTypes.startp = _startpos__1_;
9933 MenhirLib.EngineTypes.endp = _endpos__1_;
9934 MenhirLib.EngineTypes.next = _menhir_stack;
9935 } = _menhir_stack in
9936 let _1 : (
9937 # 127 "parser_cocci_menhir.mly"
9938 (Data.clt * token)
9939 # 9913 "parser_cocci_menhir.ml"
9940 ) = Obj.magic _1 in
9941 let _startpos = _startpos__1_ in
9942 let _endpos = _endpos__1_ in
9943 let _v : 'tv_defineop =
9944 # 929 "parser_cocci_menhir.mly"
9945 ( let (clt,ident) = _1 in
9946 let aft = P.get_aft clt in (* move stuff after the define to the ident *)
9947 function body ->
9948 Ast0.wrap
9949 (Ast0.Define
9950 (P.clt2mcode "#define" (P.drop_aft clt),
9951 (match ident with
9952 TMetaId((nm,constraints,seed,pure,clt)) ->
9953 let clt = P.set_aft aft clt in
9954 Ast0.wrap
9955 (Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure))
9956 | TIdent((nm,clt)) ->
9957 let clt = P.set_aft aft clt in
9958 Ast0.wrap(Ast0.Id(P.clt2mcode nm clt))
9959 | TSymId(nm,clt) ->
9960 let clt = P.set_aft aft clt in
9961 Ast0.wrap(Ast0.Id(P.clt2mcode nm clt))
9962 | _ ->
9963 raise
9964 (Semantic_cocci.Semantic
9965 "unexpected name for a #define")),
9966 Ast0.wrap Ast0.NoParams,
9967 body)) )
9968 # 9942 "parser_cocci_menhir.ml"
9969 in
9970 _menhir_env.MenhirLib.EngineTypes.stack <- {
9971 MenhirLib.EngineTypes.state = _menhir_s;
9972 MenhirLib.EngineTypes.semv = Obj.repr _v;
9973 MenhirLib.EngineTypes.startp = _startpos;
9974 MenhirLib.EngineTypes.endp = _endpos;
9975 MenhirLib.EngineTypes.next = _menhir_stack;
9976 });
9977 (fun _menhir_env ->
9978 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
9979 let {
9980 MenhirLib.EngineTypes.semv = _3;
9981 MenhirLib.EngineTypes.startp = _startpos__3_;
9982 MenhirLib.EngineTypes.endp = _endpos__3_;
9983 MenhirLib.EngineTypes.next = {
9984 MenhirLib.EngineTypes.semv = _2;
9985 MenhirLib.EngineTypes.startp = _startpos__2_;
9986 MenhirLib.EngineTypes.endp = _endpos__2_;
9987 MenhirLib.EngineTypes.next = {
9988 MenhirLib.EngineTypes.state = _menhir_s;
9989 MenhirLib.EngineTypes.semv = _1;
9990 MenhirLib.EngineTypes.startp = _startpos__1_;
9991 MenhirLib.EngineTypes.endp = _endpos__1_;
9992 MenhirLib.EngineTypes.next = _menhir_stack;
9993 };
9994 };
9995 } = _menhir_stack in
9996 let _3 : (
9997 # 123 "parser_cocci_menhir.mly"
9998 (Data.clt)
9999 # 9973 "parser_cocci_menhir.ml"
10000 ) = Obj.magic _3 in
10001 let _2 : 'tv_define_param_list_option = Obj.magic _2 in
10002 let _1 : (
10003 # 128 "parser_cocci_menhir.mly"
10004 (Data.clt * token * int * int)
10005 # 9979 "parser_cocci_menhir.ml"
10006 ) = Obj.magic _1 in
10007 let _startpos = _startpos__1_ in
10008 let _endpos = _endpos__3_ in
10009 let _v : 'tv_defineop =
10010 # 953 "parser_cocci_menhir.mly"
10011 ( let (clt,ident,parenoff,parencol) = _1 in
10012 let aft = P.get_aft clt in (* move stuff after the define to the ( *)
10013 (* clt is the start of the #define itself *)
10014 let (arity,line,lline,offset,col,strbef,straft,pos) = clt in
10015 let lp =
10016 P.clt2mcode "("
10017 (arity,line,lline,parenoff,parencol,[],[],[]) in
10018 function body ->
10019 Ast0.wrap
10020 (Ast0.Define
10021 (P.clt2mcode "#define" (P.drop_aft clt),
10022 (match ident with
10023 TMetaId((nm,constraints,seed,pure,clt)) ->
10024 Ast0.wrap
10025 (Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure))
10026 | TIdent((nm,clt)) ->
10027 Ast0.wrap(Ast0.Id(P.clt2mcode nm clt))
10028 | TSymId(nm,clt) ->
10029 Ast0.wrap(Ast0.Id(P.clt2mcode nm clt))
10030 | _ ->
10031 raise
10032 (Semantic_cocci.Semantic
10033 "unexpected name for a #define")),
10034 (let clt = P.set_aft aft _3 in
10035 Ast0.wrap (Ast0.DParams (lp,_2,P.clt2mcode ")" clt))),body)) )
10036 # 10010 "parser_cocci_menhir.ml"
10037 in
10038 _menhir_env.MenhirLib.EngineTypes.stack <- {
10039 MenhirLib.EngineTypes.state = _menhir_s;
10040 MenhirLib.EngineTypes.semv = Obj.repr _v;
10041 MenhirLib.EngineTypes.startp = _startpos;
10042 MenhirLib.EngineTypes.endp = _endpos;
10043 MenhirLib.EngineTypes.next = _menhir_stack;
10044 });
10045 (fun _menhir_env ->
10046 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10047 let {
10048 MenhirLib.EngineTypes.state = _menhir_s;
10049 MenhirLib.EngineTypes.semv = _1;
10050 MenhirLib.EngineTypes.startp = _startpos__1_;
10051 MenhirLib.EngineTypes.endp = _endpos__1_;
10052 MenhirLib.EngineTypes.next = _menhir_stack;
10053 } = _menhir_stack in
10054 let _1 : (
10055 # 88 "parser_cocci_menhir.mly"
10056 (string)
10057 # 10031 "parser_cocci_menhir.ml"
10058 ) = Obj.magic _1 in
10059 let _startpos = _startpos__1_ in
10060 let _endpos = _endpos__1_ in
10061 let _v : 'tv_dep =
10062 # 273 "parser_cocci_menhir.mly"
10063 ( Ast0.Dep _1 )
10064 # 10038 "parser_cocci_menhir.ml"
10065 in
10066 _menhir_env.MenhirLib.EngineTypes.stack <- {
10067 MenhirLib.EngineTypes.state = _menhir_s;
10068 MenhirLib.EngineTypes.semv = Obj.repr _v;
10069 MenhirLib.EngineTypes.startp = _startpos;
10070 MenhirLib.EngineTypes.endp = _endpos;
10071 MenhirLib.EngineTypes.next = _menhir_stack;
10072 });
10073 (fun _menhir_env ->
10074 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10075 let {
10076 MenhirLib.EngineTypes.semv = _2;
10077 MenhirLib.EngineTypes.startp = _startpos__2_;
10078 MenhirLib.EngineTypes.endp = _endpos__2_;
10079 MenhirLib.EngineTypes.next = {
10080 MenhirLib.EngineTypes.state = _menhir_s;
10081 MenhirLib.EngineTypes.startp = _startpos__1_;
10082 MenhirLib.EngineTypes.endp = _endpos__1_;
10083 MenhirLib.EngineTypes.next = _menhir_stack;
10084 };
10085 } = _menhir_stack in
10086 let _2 : (
10087 # 88 "parser_cocci_menhir.mly"
10088 (string)
10089 # 10063 "parser_cocci_menhir.ml"
10090 ) = Obj.magic _2 in
10091 let _startpos = _startpos__1_ in
10092 let _endpos = _endpos__2_ in
10093 let _v : 'tv_dep =
10094 # 274 "parser_cocci_menhir.mly"
10095 ( Ast0.AntiDep (Ast0.Dep _2) )
10096 # 10070 "parser_cocci_menhir.ml"
10097 in
10098 _menhir_env.MenhirLib.EngineTypes.stack <- {
10099 MenhirLib.EngineTypes.state = _menhir_s;
10100 MenhirLib.EngineTypes.semv = Obj.repr _v;
10101 MenhirLib.EngineTypes.startp = _startpos;
10102 MenhirLib.EngineTypes.endp = _endpos;
10103 MenhirLib.EngineTypes.next = _menhir_stack;
10104 });
10105 (fun _menhir_env ->
10106 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10107 let {
10108 MenhirLib.EngineTypes.startp = _startpos__4_;
10109 MenhirLib.EngineTypes.endp = _endpos__4_;
10110 MenhirLib.EngineTypes.next = {
10111 MenhirLib.EngineTypes.semv = _3;
10112 MenhirLib.EngineTypes.startp = _startpos__3_;
10113 MenhirLib.EngineTypes.endp = _endpos__3_;
10114 MenhirLib.EngineTypes.next = {
10115 MenhirLib.EngineTypes.startp = _startpos__2_;
10116 MenhirLib.EngineTypes.endp = _endpos__2_;
10117 MenhirLib.EngineTypes.next = {
10118 MenhirLib.EngineTypes.state = _menhir_s;
10119 MenhirLib.EngineTypes.startp = _startpos__1_;
10120 MenhirLib.EngineTypes.endp = _endpos__1_;
10121 MenhirLib.EngineTypes.next = _menhir_stack;
10122 };
10123 };
10124 };
10125 } = _menhir_stack in
10126 let _3 : 'tv_dep = Obj.magic _3 in
10127 let _startpos = _startpos__1_ in
10128 let _endpos = _endpos__4_ in
10129 let _v : 'tv_dep =
10130 # 276 "parser_cocci_menhir.mly"
10131 ( Ast0.AntiDep _3 )
10132 # 10106 "parser_cocci_menhir.ml"
10133 in
10134 _menhir_env.MenhirLib.EngineTypes.stack <- {
10135 MenhirLib.EngineTypes.state = _menhir_s;
10136 MenhirLib.EngineTypes.semv = Obj.repr _v;
10137 MenhirLib.EngineTypes.startp = _startpos;
10138 MenhirLib.EngineTypes.endp = _endpos;
10139 MenhirLib.EngineTypes.next = _menhir_stack;
10140 });
10141 (fun _menhir_env ->
10142 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10143 let {
10144 MenhirLib.EngineTypes.semv = _2;
10145 MenhirLib.EngineTypes.startp = _startpos__2_;
10146 MenhirLib.EngineTypes.endp = _endpos__2_;
10147 MenhirLib.EngineTypes.next = {
10148 MenhirLib.EngineTypes.state = _menhir_s;
10149 MenhirLib.EngineTypes.startp = _startpos__1_;
10150 MenhirLib.EngineTypes.endp = _endpos__1_;
10151 MenhirLib.EngineTypes.next = _menhir_stack;
10152 };
10153 } = _menhir_stack in
10154 let _2 : (
10155 # 88 "parser_cocci_menhir.mly"
10156 (string)
10157 # 10131 "parser_cocci_menhir.ml"
10158 ) = Obj.magic _2 in
10159 let _startpos = _startpos__1_ in
10160 let _endpos = _endpos__2_ in
10161 let _v : 'tv_dep =
10162 # 277 "parser_cocci_menhir.mly"
10163 ( Ast0.EverDep _2 )
10164 # 10138 "parser_cocci_menhir.ml"
10165 in
10166 _menhir_env.MenhirLib.EngineTypes.stack <- {
10167 MenhirLib.EngineTypes.state = _menhir_s;
10168 MenhirLib.EngineTypes.semv = Obj.repr _v;
10169 MenhirLib.EngineTypes.startp = _startpos;
10170 MenhirLib.EngineTypes.endp = _endpos;
10171 MenhirLib.EngineTypes.next = _menhir_stack;
10172 });
10173 (fun _menhir_env ->
10174 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10175 let {
10176 MenhirLib.EngineTypes.semv = _2;
10177 MenhirLib.EngineTypes.startp = _startpos__2_;
10178 MenhirLib.EngineTypes.endp = _endpos__2_;
10179 MenhirLib.EngineTypes.next = {
10180 MenhirLib.EngineTypes.state = _menhir_s;
10181 MenhirLib.EngineTypes.startp = _startpos__1_;
10182 MenhirLib.EngineTypes.endp = _endpos__1_;
10183 MenhirLib.EngineTypes.next = _menhir_stack;
10184 };
10185 } = _menhir_stack in
10186 let _2 : (
10187 # 88 "parser_cocci_menhir.mly"
10188 (string)
10189 # 10163 "parser_cocci_menhir.ml"
10190 ) = Obj.magic _2 in
10191 let _startpos = _startpos__1_ in
10192 let _endpos = _endpos__2_ in
10193 let _v : 'tv_dep =
10194 # 278 "parser_cocci_menhir.mly"
10195 ( Ast0.NeverDep _2 )
10196 # 10170 "parser_cocci_menhir.ml"
10197 in
10198 _menhir_env.MenhirLib.EngineTypes.stack <- {
10199 MenhirLib.EngineTypes.state = _menhir_s;
10200 MenhirLib.EngineTypes.semv = Obj.repr _v;
10201 MenhirLib.EngineTypes.startp = _startpos;
10202 MenhirLib.EngineTypes.endp = _endpos;
10203 MenhirLib.EngineTypes.next = _menhir_stack;
10204 });
10205 (fun _menhir_env ->
10206 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10207 let {
10208 MenhirLib.EngineTypes.semv = _3;
10209 MenhirLib.EngineTypes.startp = _startpos__3_;
10210 MenhirLib.EngineTypes.endp = _endpos__3_;
10211 MenhirLib.EngineTypes.next = {
10212 MenhirLib.EngineTypes.startp = _startpos__2_;
10213 MenhirLib.EngineTypes.endp = _endpos__2_;
10214 MenhirLib.EngineTypes.next = {
10215 MenhirLib.EngineTypes.state = _menhir_s;
10216 MenhirLib.EngineTypes.semv = _1;
10217 MenhirLib.EngineTypes.startp = _startpos__1_;
10218 MenhirLib.EngineTypes.endp = _endpos__1_;
10219 MenhirLib.EngineTypes.next = _menhir_stack;
10220 };
10221 };
10222 } = _menhir_stack in
10223 let _3 : 'tv_dep = Obj.magic _3 in
10224 let _1 : 'tv_dep = Obj.magic _1 in
10225 let _startpos = _startpos__1_ in
10226 let _endpos = _endpos__3_ in
10227 let _v : 'tv_dep =
10228 # 279 "parser_cocci_menhir.mly"
10229 ( Ast0.AndDep(_1, _3) )
10230 # 10204 "parser_cocci_menhir.ml"
10231 in
10232 _menhir_env.MenhirLib.EngineTypes.stack <- {
10233 MenhirLib.EngineTypes.state = _menhir_s;
10234 MenhirLib.EngineTypes.semv = Obj.repr _v;
10235 MenhirLib.EngineTypes.startp = _startpos;
10236 MenhirLib.EngineTypes.endp = _endpos;
10237 MenhirLib.EngineTypes.next = _menhir_stack;
10238 });
10239 (fun _menhir_env ->
10240 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10241 let {
10242 MenhirLib.EngineTypes.semv = _3;
10243 MenhirLib.EngineTypes.startp = _startpos__3_;
10244 MenhirLib.EngineTypes.endp = _endpos__3_;
10245 MenhirLib.EngineTypes.next = {
10246 MenhirLib.EngineTypes.startp = _startpos__2_;
10247 MenhirLib.EngineTypes.endp = _endpos__2_;
10248 MenhirLib.EngineTypes.next = {
10249 MenhirLib.EngineTypes.state = _menhir_s;
10250 MenhirLib.EngineTypes.semv = _1;
10251 MenhirLib.EngineTypes.startp = _startpos__1_;
10252 MenhirLib.EngineTypes.endp = _endpos__1_;
10253 MenhirLib.EngineTypes.next = _menhir_stack;
10254 };
10255 };
10256 } = _menhir_stack in
10257 let _3 : 'tv_dep = Obj.magic _3 in
10258 let _1 : 'tv_dep = Obj.magic _1 in
10259 let _startpos = _startpos__1_ in
10260 let _endpos = _endpos__3_ in
10261 let _v : 'tv_dep =
10262 # 280 "parser_cocci_menhir.mly"
10263 ( Ast0.OrDep (_1, _3) )
10264 # 10238 "parser_cocci_menhir.ml"
10265 in
10266 _menhir_env.MenhirLib.EngineTypes.stack <- {
10267 MenhirLib.EngineTypes.state = _menhir_s;
10268 MenhirLib.EngineTypes.semv = Obj.repr _v;
10269 MenhirLib.EngineTypes.startp = _startpos;
10270 MenhirLib.EngineTypes.endp = _endpos;
10271 MenhirLib.EngineTypes.next = _menhir_stack;
10272 });
10273 (fun _menhir_env ->
10274 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10275 let {
10276 MenhirLib.EngineTypes.startp = _startpos__3_;
10277 MenhirLib.EngineTypes.endp = _endpos__3_;
10278 MenhirLib.EngineTypes.next = {
10279 MenhirLib.EngineTypes.semv = _2;
10280 MenhirLib.EngineTypes.startp = _startpos__2_;
10281 MenhirLib.EngineTypes.endp = _endpos__2_;
10282 MenhirLib.EngineTypes.next = {
10283 MenhirLib.EngineTypes.state = _menhir_s;
10284 MenhirLib.EngineTypes.startp = _startpos__1_;
10285 MenhirLib.EngineTypes.endp = _endpos__1_;
10286 MenhirLib.EngineTypes.next = _menhir_stack;
10287 };
10288 };
10289 } = _menhir_stack in
10290 let _2 : 'tv_dep = Obj.magic _2 in
10291 let _startpos = _startpos__1_ in
10292 let _endpos = _endpos__3_ in
10293 let _v : 'tv_dep =
10294 # 281 "parser_cocci_menhir.mly"
10295 ( _2 )
10296 # 10270 "parser_cocci_menhir.ml"
10297 in
10298 _menhir_env.MenhirLib.EngineTypes.stack <- {
10299 MenhirLib.EngineTypes.state = _menhir_s;
10300 MenhirLib.EngineTypes.semv = Obj.repr _v;
10301 MenhirLib.EngineTypes.startp = _startpos;
10302 MenhirLib.EngineTypes.endp = _endpos;
10303 MenhirLib.EngineTypes.next = _menhir_stack;
10304 });
10305 (fun _menhir_env ->
10306 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10307 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
10308 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
10309 let _endpos = _startpos in
10310 let _v : 'tv_depends =
10311 # 269 "parser_cocci_menhir.mly"
10312 ( Ast0.NoDep )
10313 # 10287 "parser_cocci_menhir.ml"
10314 in
10315 _menhir_env.MenhirLib.EngineTypes.stack <- {
10316 MenhirLib.EngineTypes.state = _menhir_s;
10317 MenhirLib.EngineTypes.semv = Obj.repr _v;
10318 MenhirLib.EngineTypes.startp = _startpos;
10319 MenhirLib.EngineTypes.endp = _endpos;
10320 MenhirLib.EngineTypes.next = _menhir_stack;
10321 });
10322 (fun _menhir_env ->
10323 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10324 let {
10325 MenhirLib.EngineTypes.semv = parents;
10326 MenhirLib.EngineTypes.startp = _startpos_parents_;
10327 MenhirLib.EngineTypes.endp = _endpos_parents_;
10328 MenhirLib.EngineTypes.next = {
10329 MenhirLib.EngineTypes.startp = _startpos__2_;
10330 MenhirLib.EngineTypes.endp = _endpos__2_;
10331 MenhirLib.EngineTypes.next = {
10332 MenhirLib.EngineTypes.state = _menhir_s;
10333 MenhirLib.EngineTypes.startp = _startpos__1_;
10334 MenhirLib.EngineTypes.endp = _endpos__1_;
10335 MenhirLib.EngineTypes.next = _menhir_stack;
10336 };
10337 };
10338 } = _menhir_stack in
10339 let parents : 'tv_dep = Obj.magic parents in
10340 let _startpos = _startpos__1_ in
10341 let _endpos = _endpos_parents_ in
10342 let _v : 'tv_depends =
10343 # 270 "parser_cocci_menhir.mly"
10344 ( parents )
10345 # 10319 "parser_cocci_menhir.ml"
10346 in
10347 _menhir_env.MenhirLib.EngineTypes.stack <- {
10348 MenhirLib.EngineTypes.state = _menhir_s;
10349 MenhirLib.EngineTypes.semv = Obj.repr _v;
10350 MenhirLib.EngineTypes.startp = _startpos;
10351 MenhirLib.EngineTypes.endp = _endpos;
10352 MenhirLib.EngineTypes.next = _menhir_stack;
10353 });
10354 (fun _menhir_env ->
10355 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10356 let {
10357 MenhirLib.EngineTypes.semv = _2;
10358 MenhirLib.EngineTypes.startp = _startpos__2_;
10359 MenhirLib.EngineTypes.endp = _endpos__2_;
10360 MenhirLib.EngineTypes.next = {
10361 MenhirLib.EngineTypes.state = _menhir_s;
10362 MenhirLib.EngineTypes.semv = _1;
10363 MenhirLib.EngineTypes.startp = _startpos__1_;
10364 MenhirLib.EngineTypes.endp = _endpos__1_;
10365 MenhirLib.EngineTypes.next = _menhir_stack;
10366 };
10367 } = _menhir_stack in
10368 let _2 : 'tv_disj_ident = Obj.magic _2 in
10369 let _1 : (
10370 # 153 "parser_cocci_menhir.mly"
10371 (Data.clt)
10372 # 10346 "parser_cocci_menhir.ml"
10373 ) = Obj.magic _1 in
10374 let _startpos = _startpos__1_ in
10375 let _endpos = _endpos__2_ in
10376 let _v : 'tv_designator =
10377 # 1384 "parser_cocci_menhir.mly"
10378 ( Ast0.DesignatorField (P.clt2mcode "." _1,_2) )
10379 # 10353 "parser_cocci_menhir.ml"
10380 in
10381 _menhir_env.MenhirLib.EngineTypes.stack <- {
10382 MenhirLib.EngineTypes.state = _menhir_s;
10383 MenhirLib.EngineTypes.semv = Obj.repr _v;
10384 MenhirLib.EngineTypes.startp = _startpos;
10385 MenhirLib.EngineTypes.endp = _endpos;
10386 MenhirLib.EngineTypes.next = _menhir_stack;
10387 });
10388 (fun _menhir_env ->
10389 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10390 let {
10391 MenhirLib.EngineTypes.semv = _3;
10392 MenhirLib.EngineTypes.startp = _startpos__3_;
10393 MenhirLib.EngineTypes.endp = _endpos__3_;
10394 MenhirLib.EngineTypes.next = {
10395 MenhirLib.EngineTypes.semv = _2;
10396 MenhirLib.EngineTypes.startp = _startpos__2_;
10397 MenhirLib.EngineTypes.endp = _endpos__2_;
10398 MenhirLib.EngineTypes.next = {
10399 MenhirLib.EngineTypes.state = _menhir_s;
10400 MenhirLib.EngineTypes.semv = _1;
10401 MenhirLib.EngineTypes.startp = _startpos__1_;
10402 MenhirLib.EngineTypes.endp = _endpos__1_;
10403 MenhirLib.EngineTypes.next = _menhir_stack;
10404 };
10405 };
10406 } = _menhir_stack in
10407 let _3 : (
10408 # 148 "parser_cocci_menhir.mly"
10409 (Data.clt)
10410 # 10384 "parser_cocci_menhir.ml"
10411 ) = Obj.magic _3 in
10412 let _2 : 'tv_eexpr = Obj.magic _2 in
10413 let _1 : (
10414 # 148 "parser_cocci_menhir.mly"
10415 (Data.clt)
10416 # 10390 "parser_cocci_menhir.ml"
10417 ) = Obj.magic _1 in
10418 let _startpos = _startpos__1_ in
10419 let _endpos = _endpos__3_ in
10420 let _v : 'tv_designator =
10421 # 1386 "parser_cocci_menhir.mly"
10422 ( Ast0.DesignatorIndex (P.clt2mcode "[" _1,_2,P.clt2mcode "]" _3) )
10423 # 10397 "parser_cocci_menhir.ml"
10424 in
10425 _menhir_env.MenhirLib.EngineTypes.stack <- {
10426 MenhirLib.EngineTypes.state = _menhir_s;
10427 MenhirLib.EngineTypes.semv = Obj.repr _v;
10428 MenhirLib.EngineTypes.startp = _startpos;
10429 MenhirLib.EngineTypes.endp = _endpos;
10430 MenhirLib.EngineTypes.next = _menhir_stack;
10431 });
10432 (fun _menhir_env ->
10433 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10434 let {
10435 MenhirLib.EngineTypes.semv = _5;
10436 MenhirLib.EngineTypes.startp = _startpos__5_;
10437 MenhirLib.EngineTypes.endp = _endpos__5_;
10438 MenhirLib.EngineTypes.next = {
10439 MenhirLib.EngineTypes.semv = _4;
10440 MenhirLib.EngineTypes.startp = _startpos__4_;
10441 MenhirLib.EngineTypes.endp = _endpos__4_;
10442 MenhirLib.EngineTypes.next = {
10443 MenhirLib.EngineTypes.semv = _3;
10444 MenhirLib.EngineTypes.startp = _startpos__3_;
10445 MenhirLib.EngineTypes.endp = _endpos__3_;
10446 MenhirLib.EngineTypes.next = {
10447 MenhirLib.EngineTypes.semv = _2;
10448 MenhirLib.EngineTypes.startp = _startpos__2_;
10449 MenhirLib.EngineTypes.endp = _endpos__2_;
10450 MenhirLib.EngineTypes.next = {
10451 MenhirLib.EngineTypes.state = _menhir_s;
10452 MenhirLib.EngineTypes.semv = _1;
10453 MenhirLib.EngineTypes.startp = _startpos__1_;
10454 MenhirLib.EngineTypes.endp = _endpos__1_;
10455 MenhirLib.EngineTypes.next = _menhir_stack;
10456 };
10457 };
10458 };
10459 };
10460 } = _menhir_stack in
10461 let _5 : (
10462 # 148 "parser_cocci_menhir.mly"
10463 (Data.clt)
10464 # 10438 "parser_cocci_menhir.ml"
10465 ) = Obj.magic _5 in
10466 let _4 : 'tv_eexpr = Obj.magic _4 in
10467 let _3 : (
10468 # 119 "parser_cocci_menhir.mly"
10469 (Data.clt)
10470 # 10444 "parser_cocci_menhir.ml"
10471 ) = Obj.magic _3 in
10472 let _2 : 'tv_eexpr = Obj.magic _2 in
10473 let _1 : (
10474 # 148 "parser_cocci_menhir.mly"
10475 (Data.clt)
10476 # 10450 "parser_cocci_menhir.ml"
10477 ) = Obj.magic _1 in
10478 let _startpos = _startpos__1_ in
10479 let _endpos = _endpos__5_ in
10480 let _v : 'tv_designator =
10481 # 1388 "parser_cocci_menhir.mly"
10482 ( Ast0.DesignatorRange (P.clt2mcode "[" _1,_2,P.clt2mcode "..." _3,
10483 _4,P.clt2mcode "]" _5) )
10484 # 10458 "parser_cocci_menhir.ml"
10485 in
10486 _menhir_env.MenhirLib.EngineTypes.stack <- {
10487 MenhirLib.EngineTypes.state = _menhir_s;
10488 MenhirLib.EngineTypes.semv = Obj.repr _v;
10489 MenhirLib.EngineTypes.startp = _startpos;
10490 MenhirLib.EngineTypes.endp = _endpos;
10491 MenhirLib.EngineTypes.next = _menhir_stack;
10492 });
10493 (fun _menhir_env ->
10494 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10495 let {
10496 MenhirLib.EngineTypes.state = _menhir_s;
10497 MenhirLib.EngineTypes.semv = _1;
10498 MenhirLib.EngineTypes.startp = _startpos__1_;
10499 MenhirLib.EngineTypes.endp = _endpos__1_;
10500 MenhirLib.EngineTypes.next = _menhir_stack;
10501 } = _menhir_stack in
10502 let _1 : 'tv_pre_basic_expr_eexpr_nest_expressions_ = Obj.magic _1 in
10503 let _startpos = _startpos__1_ in
10504 let _endpos = _endpos__1_ in
10505 let _v : 'tv_dexpr =
10506 # 1471 "parser_cocci_menhir.mly"
10507 ( _1 )
10508 # 10482 "parser_cocci_menhir.ml"
10509 in
10510 _menhir_env.MenhirLib.EngineTypes.stack <- {
10511 MenhirLib.EngineTypes.state = _menhir_s;
10512 MenhirLib.EngineTypes.semv = Obj.repr _v;
10513 MenhirLib.EngineTypes.startp = _startpos;
10514 MenhirLib.EngineTypes.endp = _endpos;
10515 MenhirLib.EngineTypes.next = _menhir_stack;
10516 });
10517 (fun _menhir_env ->
10518 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10519 let {
10520 MenhirLib.EngineTypes.semv = _2;
10521 MenhirLib.EngineTypes.startp = _startpos__2_;
10522 MenhirLib.EngineTypes.endp = _endpos__2_;
10523 MenhirLib.EngineTypes.next = {
10524 MenhirLib.EngineTypes.state = _menhir_s;
10525 MenhirLib.EngineTypes.startp = _startpos__1_;
10526 MenhirLib.EngineTypes.endp = _endpos__1_;
10527 MenhirLib.EngineTypes.next = _menhir_stack;
10528 };
10529 } = _menhir_stack in
10530 let _2 : 'tv_separated_nonempty_list_TComma_pure_ident_ = Obj.magic _2 in
10531 let _startpos = _startpos__1_ in
10532 let _endpos = _endpos__2_ in
10533 let _v : 'tv_disable =
10534 # 287 "parser_cocci_menhir.mly"
10535 ( List.map P.id2name _2 )
10536 # 10510 "parser_cocci_menhir.ml"
10537 in
10538 _menhir_env.MenhirLib.EngineTypes.stack <- {
10539 MenhirLib.EngineTypes.state = _menhir_s;
10540 MenhirLib.EngineTypes.semv = Obj.repr _v;
10541 MenhirLib.EngineTypes.startp = _startpos;
10542 MenhirLib.EngineTypes.endp = _endpos;
10543 MenhirLib.EngineTypes.next = _menhir_stack;
10544 });
10545 (fun _menhir_env ->
10546 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10547 let {
10548 MenhirLib.EngineTypes.state = _menhir_s;
10549 MenhirLib.EngineTypes.semv = _1;
10550 MenhirLib.EngineTypes.startp = _startpos__1_;
10551 MenhirLib.EngineTypes.endp = _endpos__1_;
10552 MenhirLib.EngineTypes.next = _menhir_stack;
10553 } = _menhir_stack in
10554 let _1 : 'tv_mident = Obj.magic _1 in
10555 let _startpos = _startpos__1_ in
10556 let _endpos = _endpos__1_ in
10557 let _v : 'tv_disj_ident =
10558 # 2039 "parser_cocci_menhir.mly"
10559 ( _1 )
10560 # 10534 "parser_cocci_menhir.ml"
10561 in
10562 _menhir_env.MenhirLib.EngineTypes.stack <- {
10563 MenhirLib.EngineTypes.state = _menhir_s;
10564 MenhirLib.EngineTypes.semv = Obj.repr _v;
10565 MenhirLib.EngineTypes.startp = _startpos;
10566 MenhirLib.EngineTypes.endp = _endpos;
10567 MenhirLib.EngineTypes.next = _menhir_stack;
10568 });
10569 (fun _menhir_env ->
10570 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10571 let {
10572 MenhirLib.EngineTypes.semv = rp;
10573 MenhirLib.EngineTypes.startp = _startpos_rp_;
10574 MenhirLib.EngineTypes.endp = _endpos_rp_;
10575 MenhirLib.EngineTypes.next = {
10576 MenhirLib.EngineTypes.semv = t;
10577 MenhirLib.EngineTypes.startp = _startpos_t_;
10578 MenhirLib.EngineTypes.endp = _endpos_t_;
10579 MenhirLib.EngineTypes.next = {
10580 MenhirLib.EngineTypes.state = _menhir_s;
10581 MenhirLib.EngineTypes.semv = lp;
10582 MenhirLib.EngineTypes.startp = _startpos_lp_;
10583 MenhirLib.EngineTypes.endp = _endpos_lp_;
10584 MenhirLib.EngineTypes.next = _menhir_stack;
10585 };
10586 };
10587 } = _menhir_stack in
10588 let rp : (
10589 # 123 "parser_cocci_menhir.mly"
10590 (Data.clt)
10591 # 10565 "parser_cocci_menhir.ml"
10592 ) = Obj.magic rp in
10593 let t : 'tv_midzero_list_disj_ident_disj_ident_ = Obj.magic t in
10594 let lp : (
10595 # 122 "parser_cocci_menhir.mly"
10596 (Data.clt)
10597 # 10571 "parser_cocci_menhir.ml"
10598 ) = Obj.magic lp in
10599 let _startpos = _startpos_lp_ in
10600 let _endpos = _endpos_rp_ in
10601 let _v : 'tv_disj_ident =
10602 # 2041 "parser_cocci_menhir.mly"
10603 ( let (mids,code) = t in
10604 Ast0.wrap
10605 (Ast0.DisjId(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) )
10606 # 10580 "parser_cocci_menhir.ml"
10607 in
10608 _menhir_env.MenhirLib.EngineTypes.stack <- {
10609 MenhirLib.EngineTypes.state = _menhir_s;
10610 MenhirLib.EngineTypes.semv = Obj.repr _v;
10611 MenhirLib.EngineTypes.startp = _startpos;
10612 MenhirLib.EngineTypes.endp = _endpos;
10613 MenhirLib.EngineTypes.next = _menhir_stack;
10614 });
10615 (fun _menhir_env ->
10616 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10617 let {
10618 MenhirLib.EngineTypes.state = _menhir_s;
10619 MenhirLib.EngineTypes.semv = _1;
10620 MenhirLib.EngineTypes.startp = _startpos__1_;
10621 MenhirLib.EngineTypes.endp = _endpos__1_;
10622 MenhirLib.EngineTypes.next = _menhir_stack;
10623 } = _menhir_stack in
10624 let _1 : (
10625 # 119 "parser_cocci_menhir.mly"
10626 (Data.clt)
10627 # 10601 "parser_cocci_menhir.ml"
10628 ) = Obj.magic _1 in
10629 let _startpos = _startpos__1_ in
10630 let _endpos = _endpos__1_ in
10631 let _v : 'tv_dot_expressions =
10632 # 1481 "parser_cocci_menhir.mly"
10633 ( Ast0.wrap(Ast0.Edots(P.clt2mcode "..." _1,None)) )
10634 # 10608 "parser_cocci_menhir.ml"
10635 in
10636 _menhir_env.MenhirLib.EngineTypes.stack <- {
10637 MenhirLib.EngineTypes.state = _menhir_s;
10638 MenhirLib.EngineTypes.semv = Obj.repr _v;
10639 MenhirLib.EngineTypes.startp = _startpos;
10640 MenhirLib.EngineTypes.endp = _endpos;
10641 MenhirLib.EngineTypes.next = _menhir_stack;
10642 });
10643 (fun _menhir_env ->
10644 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10645 let {
10646 MenhirLib.EngineTypes.state = _menhir_s;
10647 MenhirLib.EngineTypes.semv = _1;
10648 MenhirLib.EngineTypes.startp = _startpos__1_;
10649 MenhirLib.EngineTypes.endp = _endpos__1_;
10650 MenhirLib.EngineTypes.next = _menhir_stack;
10651 } = _menhir_stack in
10652 let _1 : 'tv_nest_expressions = Obj.magic _1 in
10653 let _startpos = _startpos__1_ in
10654 let _endpos = _endpos__1_ in
10655 let _v : 'tv_dot_expressions =
10656 # 1482 "parser_cocci_menhir.mly"
10657 ( _1 )
10658 # 10632 "parser_cocci_menhir.ml"
10659 in
10660 _menhir_env.MenhirLib.EngineTypes.stack <- {
10661 MenhirLib.EngineTypes.state = _menhir_s;
10662 MenhirLib.EngineTypes.semv = Obj.repr _v;
10663 MenhirLib.EngineTypes.startp = _startpos;
10664 MenhirLib.EngineTypes.endp = _endpos;
10665 MenhirLib.EngineTypes.next = _menhir_stack;
10666 });
10667 (fun _menhir_env ->
10668 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10669 let {
10670 MenhirLib.EngineTypes.state = _menhir_s;
10671 MenhirLib.EngineTypes.semv = _1;
10672 MenhirLib.EngineTypes.startp = _startpos__1_;
10673 MenhirLib.EngineTypes.endp = _endpos__1_;
10674 MenhirLib.EngineTypes.next = _menhir_stack;
10675 } = _menhir_stack in
10676 let _1 : 'tv_mident = Obj.magic _1 in
10677 let _startpos = _startpos__1_ in
10678 let _endpos = _endpos__1_ in
10679 let _v : 'tv_dparam =
10680 # 981 "parser_cocci_menhir.mly"
10681 ( Ast0.wrap(Ast0.DParam _1) )
10682 # 10656 "parser_cocci_menhir.ml"
10683 in
10684 _menhir_env.MenhirLib.EngineTypes.stack <- {
10685 MenhirLib.EngineTypes.state = _menhir_s;
10686 MenhirLib.EngineTypes.semv = Obj.repr _v;
10687 MenhirLib.EngineTypes.startp = _startpos;
10688 MenhirLib.EngineTypes.endp = _endpos;
10689 MenhirLib.EngineTypes.next = _menhir_stack;
10690 });
10691 (fun _menhir_env ->
10692 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10693 let {
10694 MenhirLib.EngineTypes.state = _menhir_s;
10695 MenhirLib.EngineTypes.semv = _1;
10696 MenhirLib.EngineTypes.startp = _startpos__1_;
10697 MenhirLib.EngineTypes.endp = _endpos__1_;
10698 MenhirLib.EngineTypes.next = _menhir_stack;
10699 } = _menhir_stack in
10700 let _1 : 'tv_basic_expr_eexpr_dot_expressions_ = Obj.magic _1 in
10701 let _startpos = _startpos__1_ in
10702 let _endpos = _endpos__1_ in
10703 let _v : 'tv_eargexpr =
10704 # 1469 "parser_cocci_menhir.mly"
10705 ( _1 )
10706 # 10680 "parser_cocci_menhir.ml"
10707 in
10708 _menhir_env.MenhirLib.EngineTypes.stack <- {
10709 MenhirLib.EngineTypes.state = _menhir_s;
10710 MenhirLib.EngineTypes.semv = Obj.repr _v;
10711 MenhirLib.EngineTypes.startp = _startpos;
10712 MenhirLib.EngineTypes.endp = _endpos;
10713 MenhirLib.EngineTypes.next = _menhir_stack;
10714 });
10715 (fun _menhir_env ->
10716 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10717 let {
10718 MenhirLib.EngineTypes.state = _menhir_s;
10719 MenhirLib.EngineTypes.semv = d;
10720 MenhirLib.EngineTypes.startp = _startpos_d_;
10721 MenhirLib.EngineTypes.endp = _endpos_d_;
10722 MenhirLib.EngineTypes.next = _menhir_stack;
10723 } = _menhir_stack in
10724 let d : (
10725 # 119 "parser_cocci_menhir.mly"
10726 (Data.clt)
10727 # 10701 "parser_cocci_menhir.ml"
10728 ) = Obj.magic d in
10729 let _startpos = _startpos_d_ in
10730 let _endpos = _endpos_d_ in
10731 let _v : 'tv_edots_when_TEllipsis_eexpr_ =
10732 # 2361 "parser_cocci_menhir.mly"
10733 ( (d,None) )
10734 # 10708 "parser_cocci_menhir.ml"
10735 in
10736 _menhir_env.MenhirLib.EngineTypes.stack <- {
10737 MenhirLib.EngineTypes.state = _menhir_s;
10738 MenhirLib.EngineTypes.semv = Obj.repr _v;
10739 MenhirLib.EngineTypes.startp = _startpos;
10740 MenhirLib.EngineTypes.endp = _endpos;
10741 MenhirLib.EngineTypes.next = _menhir_stack;
10742 });
10743 (fun _menhir_env ->
10744 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10745 let {
10746 MenhirLib.EngineTypes.startp = _startpos__5_;
10747 MenhirLib.EngineTypes.endp = _endpos__5_;
10748 MenhirLib.EngineTypes.next = {
10749 MenhirLib.EngineTypes.semv = w;
10750 MenhirLib.EngineTypes.startp = _startpos_w_;
10751 MenhirLib.EngineTypes.endp = _endpos_w_;
10752 MenhirLib.EngineTypes.next = {
10753 MenhirLib.EngineTypes.startp = _startpos__3_;
10754 MenhirLib.EngineTypes.endp = _endpos__3_;
10755 MenhirLib.EngineTypes.next = {
10756 MenhirLib.EngineTypes.startp = _startpos__2_;
10757 MenhirLib.EngineTypes.endp = _endpos__2_;
10758 MenhirLib.EngineTypes.next = {
10759 MenhirLib.EngineTypes.state = _menhir_s;
10760 MenhirLib.EngineTypes.semv = d;
10761 MenhirLib.EngineTypes.startp = _startpos_d_;
10762 MenhirLib.EngineTypes.endp = _endpos_d_;
10763 MenhirLib.EngineTypes.next = _menhir_stack;
10764 };
10765 };
10766 };
10767 };
10768 } = _menhir_stack in
10769 let w : 'tv_eexpr = Obj.magic w in
10770 let d : (
10771 # 119 "parser_cocci_menhir.mly"
10772 (Data.clt)
10773 # 10747 "parser_cocci_menhir.ml"
10774 ) = Obj.magic d in
10775 let _startpos = _startpos_d_ in
10776 let _endpos = _endpos__5_ in
10777 let _v : 'tv_edots_when_TEllipsis_eexpr_ =
10778 # 2362 "parser_cocci_menhir.mly"
10779 ( (d,Some w) )
10780 # 10754 "parser_cocci_menhir.ml"
10781 in
10782 _menhir_env.MenhirLib.EngineTypes.stack <- {
10783 MenhirLib.EngineTypes.state = _menhir_s;
10784 MenhirLib.EngineTypes.semv = Obj.repr _v;
10785 MenhirLib.EngineTypes.startp = _startpos;
10786 MenhirLib.EngineTypes.endp = _endpos;
10787 MenhirLib.EngineTypes.next = _menhir_stack;
10788 });
10789 (fun _menhir_env ->
10790 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10791 let {
10792 MenhirLib.EngineTypes.state = _menhir_s;
10793 MenhirLib.EngineTypes.semv = d;
10794 MenhirLib.EngineTypes.startp = _startpos_d_;
10795 MenhirLib.EngineTypes.endp = _endpos_d_;
10796 MenhirLib.EngineTypes.next = _menhir_stack;
10797 } = _menhir_stack in
10798 let d : (
10799 # 119 "parser_cocci_menhir.mly"
10800 (Data.clt)
10801 # 10775 "parser_cocci_menhir.ml"
10802 ) = Obj.magic d in
10803 let _startpos = _startpos_d_ in
10804 let _endpos = _endpos_d_ in
10805 let _v : 'tv_edots_when_TEllipsis_enum_decl_one_ =
10806 # 2361 "parser_cocci_menhir.mly"
10807 ( (d,None) )
10808 # 10782 "parser_cocci_menhir.ml"
10809 in
10810 _menhir_env.MenhirLib.EngineTypes.stack <- {
10811 MenhirLib.EngineTypes.state = _menhir_s;
10812 MenhirLib.EngineTypes.semv = Obj.repr _v;
10813 MenhirLib.EngineTypes.startp = _startpos;
10814 MenhirLib.EngineTypes.endp = _endpos;
10815 MenhirLib.EngineTypes.next = _menhir_stack;
10816 });
10817 (fun _menhir_env ->
10818 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10819 let {
10820 MenhirLib.EngineTypes.startp = _startpos__5_;
10821 MenhirLib.EngineTypes.endp = _endpos__5_;
10822 MenhirLib.EngineTypes.next = {
10823 MenhirLib.EngineTypes.semv = w;
10824 MenhirLib.EngineTypes.startp = _startpos_w_;
10825 MenhirLib.EngineTypes.endp = _endpos_w_;
10826 MenhirLib.EngineTypes.next = {
10827 MenhirLib.EngineTypes.startp = _startpos__3_;
10828 MenhirLib.EngineTypes.endp = _endpos__3_;
10829 MenhirLib.EngineTypes.next = {
10830 MenhirLib.EngineTypes.startp = _startpos__2_;
10831 MenhirLib.EngineTypes.endp = _endpos__2_;
10832 MenhirLib.EngineTypes.next = {
10833 MenhirLib.EngineTypes.state = _menhir_s;
10834 MenhirLib.EngineTypes.semv = d;
10835 MenhirLib.EngineTypes.startp = _startpos_d_;
10836 MenhirLib.EngineTypes.endp = _endpos_d_;
10837 MenhirLib.EngineTypes.next = _menhir_stack;
10838 };
10839 };
10840 };
10841 };
10842 } = _menhir_stack in
10843 let w : 'tv_enum_decl_one = Obj.magic w in
10844 let d : (
10845 # 119 "parser_cocci_menhir.mly"
10846 (Data.clt)
10847 # 10821 "parser_cocci_menhir.ml"
10848 ) = Obj.magic d in
10849 let _startpos = _startpos_d_ in
10850 let _endpos = _endpos__5_ in
10851 let _v : 'tv_edots_when_TEllipsis_enum_decl_one_ =
10852 # 2362 "parser_cocci_menhir.mly"
10853 ( (d,Some w) )
10854 # 10828 "parser_cocci_menhir.ml"
10855 in
10856 _menhir_env.MenhirLib.EngineTypes.stack <- {
10857 MenhirLib.EngineTypes.state = _menhir_s;
10858 MenhirLib.EngineTypes.semv = Obj.repr _v;
10859 MenhirLib.EngineTypes.startp = _startpos;
10860 MenhirLib.EngineTypes.endp = _endpos;
10861 MenhirLib.EngineTypes.next = _menhir_stack;
10862 });
10863 (fun _menhir_env ->
10864 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10865 let {
10866 MenhirLib.EngineTypes.state = _menhir_s;
10867 MenhirLib.EngineTypes.semv = d;
10868 MenhirLib.EngineTypes.startp = _startpos_d_;
10869 MenhirLib.EngineTypes.endp = _endpos_d_;
10870 MenhirLib.EngineTypes.next = _menhir_stack;
10871 } = _menhir_stack in
10872 let d : (
10873 # 119 "parser_cocci_menhir.mly"
10874 (Data.clt)
10875 # 10849 "parser_cocci_menhir.ml"
10876 ) = Obj.magic d in
10877 let _startpos = _startpos_d_ in
10878 let _endpos = _endpos_d_ in
10879 let _v : 'tv_edots_when_TEllipsis_initialize_ =
10880 # 2361 "parser_cocci_menhir.mly"
10881 ( (d,None) )
10882 # 10856 "parser_cocci_menhir.ml"
10883 in
10884 _menhir_env.MenhirLib.EngineTypes.stack <- {
10885 MenhirLib.EngineTypes.state = _menhir_s;
10886 MenhirLib.EngineTypes.semv = Obj.repr _v;
10887 MenhirLib.EngineTypes.startp = _startpos;
10888 MenhirLib.EngineTypes.endp = _endpos;
10889 MenhirLib.EngineTypes.next = _menhir_stack;
10890 });
10891 (fun _menhir_env ->
10892 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10893 let {
10894 MenhirLib.EngineTypes.startp = _startpos__5_;
10895 MenhirLib.EngineTypes.endp = _endpos__5_;
10896 MenhirLib.EngineTypes.next = {
10897 MenhirLib.EngineTypes.semv = w;
10898 MenhirLib.EngineTypes.startp = _startpos_w_;
10899 MenhirLib.EngineTypes.endp = _endpos_w_;
10900 MenhirLib.EngineTypes.next = {
10901 MenhirLib.EngineTypes.startp = _startpos__3_;
10902 MenhirLib.EngineTypes.endp = _endpos__3_;
10903 MenhirLib.EngineTypes.next = {
10904 MenhirLib.EngineTypes.startp = _startpos__2_;
10905 MenhirLib.EngineTypes.endp = _endpos__2_;
10906 MenhirLib.EngineTypes.next = {
10907 MenhirLib.EngineTypes.state = _menhir_s;
10908 MenhirLib.EngineTypes.semv = d;
10909 MenhirLib.EngineTypes.startp = _startpos_d_;
10910 MenhirLib.EngineTypes.endp = _endpos_d_;
10911 MenhirLib.EngineTypes.next = _menhir_stack;
10912 };
10913 };
10914 };
10915 };
10916 } = _menhir_stack in
10917 let w : 'tv_initialize = Obj.magic w in
10918 let d : (
10919 # 119 "parser_cocci_menhir.mly"
10920 (Data.clt)
10921 # 10895 "parser_cocci_menhir.ml"
10922 ) = Obj.magic d in
10923 let _startpos = _startpos_d_ in
10924 let _endpos = _endpos__5_ in
10925 let _v : 'tv_edots_when_TEllipsis_initialize_ =
10926 # 2362 "parser_cocci_menhir.mly"
10927 ( (d,Some w) )
10928 # 10902 "parser_cocci_menhir.ml"
10929 in
10930 _menhir_env.MenhirLib.EngineTypes.stack <- {
10931 MenhirLib.EngineTypes.state = _menhir_s;
10932 MenhirLib.EngineTypes.semv = Obj.repr _v;
10933 MenhirLib.EngineTypes.startp = _startpos;
10934 MenhirLib.EngineTypes.endp = _endpos;
10935 MenhirLib.EngineTypes.next = _menhir_stack;
10936 });
10937 (fun _menhir_env ->
10938 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10939 let {
10940 MenhirLib.EngineTypes.state = _menhir_s;
10941 MenhirLib.EngineTypes.semv = d;
10942 MenhirLib.EngineTypes.startp = _startpos_d_;
10943 MenhirLib.EngineTypes.endp = _endpos_d_;
10944 MenhirLib.EngineTypes.next = _menhir_stack;
10945 } = _menhir_stack in
10946 let d : (
10947 # 119 "parser_cocci_menhir.mly"
10948 (Data.clt)
10949 # 10923 "parser_cocci_menhir.ml"
10950 ) = Obj.magic d in
10951 let _startpos = _startpos_d_ in
10952 let _endpos = _endpos_d_ in
10953 let _v : 'tv_edots_when_TEllipsis_struct_decl_one_ =
10954 # 2361 "parser_cocci_menhir.mly"
10955 ( (d,None) )
10956 # 10930 "parser_cocci_menhir.ml"
10957 in
10958 _menhir_env.MenhirLib.EngineTypes.stack <- {
10959 MenhirLib.EngineTypes.state = _menhir_s;
10960 MenhirLib.EngineTypes.semv = Obj.repr _v;
10961 MenhirLib.EngineTypes.startp = _startpos;
10962 MenhirLib.EngineTypes.endp = _endpos;
10963 MenhirLib.EngineTypes.next = _menhir_stack;
10964 });
10965 (fun _menhir_env ->
10966 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
10967 let {
10968 MenhirLib.EngineTypes.startp = _startpos__5_;
10969 MenhirLib.EngineTypes.endp = _endpos__5_;
10970 MenhirLib.EngineTypes.next = {
10971 MenhirLib.EngineTypes.semv = w;
10972 MenhirLib.EngineTypes.startp = _startpos_w_;
10973 MenhirLib.EngineTypes.endp = _endpos_w_;
10974 MenhirLib.EngineTypes.next = {
10975 MenhirLib.EngineTypes.startp = _startpos__3_;
10976 MenhirLib.EngineTypes.endp = _endpos__3_;
10977 MenhirLib.EngineTypes.next = {
10978 MenhirLib.EngineTypes.startp = _startpos__2_;
10979 MenhirLib.EngineTypes.endp = _endpos__2_;
10980 MenhirLib.EngineTypes.next = {
10981 MenhirLib.EngineTypes.state = _menhir_s;
10982 MenhirLib.EngineTypes.semv = d;
10983 MenhirLib.EngineTypes.startp = _startpos_d_;
10984 MenhirLib.EngineTypes.endp = _endpos_d_;
10985 MenhirLib.EngineTypes.next = _menhir_stack;
10986 };
10987 };
10988 };
10989 };
10990 } = _menhir_stack in
10991 let w : 'tv_struct_decl_one = Obj.magic w in
10992 let d : (
10993 # 119 "parser_cocci_menhir.mly"
10994 (Data.clt)
10995 # 10969 "parser_cocci_menhir.ml"
10996 ) = Obj.magic d in
10997 let _startpos = _startpos_d_ in
10998 let _endpos = _endpos__5_ in
10999 let _v : 'tv_edots_when_TEllipsis_struct_decl_one_ =
11000 # 2362 "parser_cocci_menhir.mly"
11001 ( (d,Some w) )
11002 # 10976 "parser_cocci_menhir.ml"
11003 in
11004 _menhir_env.MenhirLib.EngineTypes.stack <- {
11005 MenhirLib.EngineTypes.state = _menhir_s;
11006 MenhirLib.EngineTypes.semv = Obj.repr _v;
11007 MenhirLib.EngineTypes.startp = _startpos;
11008 MenhirLib.EngineTypes.endp = _endpos;
11009 MenhirLib.EngineTypes.next = _menhir_stack;
11010 });
11011 (fun _menhir_env ->
11012 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11013 let {
11014 MenhirLib.EngineTypes.state = _menhir_s;
11015 MenhirLib.EngineTypes.semv = _1;
11016 MenhirLib.EngineTypes.startp = _startpos__1_;
11017 MenhirLib.EngineTypes.endp = _endpos__1_;
11018 MenhirLib.EngineTypes.next = _menhir_stack;
11019 } = _menhir_stack in
11020 let _1 : 'tv_pre_basic_expr_eexpr_dot_expressions_ = Obj.magic _1 in
11021 let _startpos = _startpos__1_ in
11022 let _endpos = _endpos__1_ in
11023 let _v : 'tv_eexpr =
11024 # 1468 "parser_cocci_menhir.mly"
11025 ( _1 )
11026 # 11000 "parser_cocci_menhir.ml"
11027 in
11028 _menhir_env.MenhirLib.EngineTypes.stack <- {
11029 MenhirLib.EngineTypes.state = _menhir_s;
11030 MenhirLib.EngineTypes.semv = Obj.repr _v;
11031 MenhirLib.EngineTypes.startp = _startpos;
11032 MenhirLib.EngineTypes.endp = _endpos;
11033 MenhirLib.EngineTypes.next = _menhir_stack;
11034 });
11035 (fun _menhir_env ->
11036 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11037 let {
11038 MenhirLib.EngineTypes.state = _menhir_s;
11039 MenhirLib.EngineTypes.semv = _1;
11040 MenhirLib.EngineTypes.startp = _startpos__1_;
11041 MenhirLib.EngineTypes.endp = _endpos__1_;
11042 MenhirLib.EngineTypes.next = _menhir_stack;
11043 } = _menhir_stack in
11044 let _1 : 'tv_empty_list_start_aexpr_TEllipsis_ = Obj.magic _1 in
11045 let _startpos = _startpos__1_ in
11046 let _endpos = _endpos__1_ in
11047 let _v : 'tv_eexpr_list_option =
11048 # 2341 "parser_cocci_menhir.mly"
11049 ( Ast0.wrap
11050 (Ast0.DOTS
11051 (_1
11052 (fun _ d -> Ast0.wrap(Ast0.Edots(P.clt2mcode "..." d,None)))
11053 (fun c -> Ast0.EComma c))) )
11054 # 11028 "parser_cocci_menhir.ml"
11055 in
11056 _menhir_env.MenhirLib.EngineTypes.stack <- {
11057 MenhirLib.EngineTypes.state = _menhir_s;
11058 MenhirLib.EngineTypes.semv = Obj.repr _v;
11059 MenhirLib.EngineTypes.startp = _startpos;
11060 MenhirLib.EngineTypes.endp = _endpos;
11061 MenhirLib.EngineTypes.next = _menhir_stack;
11062 });
11063 (fun _menhir_env ->
11064 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11065 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
11066 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
11067 let _endpos = _startpos in
11068 let _v : 'tv_empty_list_start_aexpr_TEllipsis_ =
11069 # 2103 "parser_cocci_menhir.mly"
11070 ( fun build_dots build_comma -> [] )
11071 # 11045 "parser_cocci_menhir.ml"
11072 in
11073 _menhir_env.MenhirLib.EngineTypes.stack <- {
11074 MenhirLib.EngineTypes.state = _menhir_s;
11075 MenhirLib.EngineTypes.semv = Obj.repr _v;
11076 MenhirLib.EngineTypes.startp = _startpos;
11077 MenhirLib.EngineTypes.endp = _endpos;
11078 MenhirLib.EngineTypes.next = _menhir_stack;
11079 });
11080 (fun _menhir_env ->
11081 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11082 let {
11083 MenhirLib.EngineTypes.state = _menhir_s;
11084 MenhirLib.EngineTypes.semv = _1;
11085 MenhirLib.EngineTypes.startp = _startpos__1_;
11086 MenhirLib.EngineTypes.endp = _endpos__1_;
11087 MenhirLib.EngineTypes.next = _menhir_stack;
11088 } = _menhir_stack in
11089 let _1 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _1 in
11090 let _startpos = _startpos__1_ in
11091 let _endpos = _endpos__1_ in
11092 let _v : 'tv_empty_list_start_aexpr_TEllipsis_ =
11093 # 2104 "parser_cocci_menhir.mly"
11094 ( _1 )
11095 # 11069 "parser_cocci_menhir.ml"
11096 in
11097 _menhir_env.MenhirLib.EngineTypes.stack <- {
11098 MenhirLib.EngineTypes.state = _menhir_s;
11099 MenhirLib.EngineTypes.semv = Obj.repr _v;
11100 MenhirLib.EngineTypes.startp = _startpos;
11101 MenhirLib.EngineTypes.endp = _endpos;
11102 MenhirLib.EngineTypes.next = _menhir_stack;
11103 });
11104 (fun _menhir_env ->
11105 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11106 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
11107 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
11108 let _endpos = _startpos in
11109 let _v : 'tv_empty_list_start_dparam_TEllipsis_ =
11110 # 2103 "parser_cocci_menhir.mly"
11111 ( fun build_dots build_comma -> [] )
11112 # 11086 "parser_cocci_menhir.ml"
11113 in
11114 _menhir_env.MenhirLib.EngineTypes.stack <- {
11115 MenhirLib.EngineTypes.state = _menhir_s;
11116 MenhirLib.EngineTypes.semv = Obj.repr _v;
11117 MenhirLib.EngineTypes.startp = _startpos;
11118 MenhirLib.EngineTypes.endp = _endpos;
11119 MenhirLib.EngineTypes.next = _menhir_stack;
11120 });
11121 (fun _menhir_env ->
11122 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11123 let {
11124 MenhirLib.EngineTypes.state = _menhir_s;
11125 MenhirLib.EngineTypes.semv = _1;
11126 MenhirLib.EngineTypes.startp = _startpos__1_;
11127 MenhirLib.EngineTypes.endp = _endpos__1_;
11128 MenhirLib.EngineTypes.next = _menhir_stack;
11129 } = _menhir_stack in
11130 let _1 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _1 in
11131 let _startpos = _startpos__1_ in
11132 let _endpos = _endpos__1_ in
11133 let _v : 'tv_empty_list_start_dparam_TEllipsis_ =
11134 # 2104 "parser_cocci_menhir.mly"
11135 ( _1 )
11136 # 11110 "parser_cocci_menhir.ml"
11137 in
11138 _menhir_env.MenhirLib.EngineTypes.stack <- {
11139 MenhirLib.EngineTypes.state = _menhir_s;
11140 MenhirLib.EngineTypes.semv = Obj.repr _v;
11141 MenhirLib.EngineTypes.startp = _startpos;
11142 MenhirLib.EngineTypes.endp = _endpos;
11143 MenhirLib.EngineTypes.next = _menhir_stack;
11144 });
11145 (fun _menhir_env ->
11146 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11147 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
11148 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
11149 let _endpos = _startpos in
11150 let _v : 'tv_empty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
11151 # 2103 "parser_cocci_menhir.mly"
11152 ( fun build_dots build_comma -> [] )
11153 # 11127 "parser_cocci_menhir.ml"
11154 in
11155 _menhir_env.MenhirLib.EngineTypes.stack <- {
11156 MenhirLib.EngineTypes.state = _menhir_s;
11157 MenhirLib.EngineTypes.semv = Obj.repr _v;
11158 MenhirLib.EngineTypes.startp = _startpos;
11159 MenhirLib.EngineTypes.endp = _endpos;
11160 MenhirLib.EngineTypes.next = _menhir_stack;
11161 });
11162 (fun _menhir_env ->
11163 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11164 let {
11165 MenhirLib.EngineTypes.state = _menhir_s;
11166 MenhirLib.EngineTypes.semv = _1;
11167 MenhirLib.EngineTypes.startp = _startpos__1_;
11168 MenhirLib.EngineTypes.endp = _endpos__1_;
11169 MenhirLib.EngineTypes.next = _menhir_stack;
11170 } = _menhir_stack in
11171 let _1 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _1 in
11172 let _startpos = _startpos__1_ in
11173 let _endpos = _endpos__1_ in
11174 let _v : 'tv_empty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
11175 # 2104 "parser_cocci_menhir.mly"
11176 ( _1 )
11177 # 11151 "parser_cocci_menhir.ml"
11178 in
11179 _menhir_env.MenhirLib.EngineTypes.stack <- {
11180 MenhirLib.EngineTypes.state = _menhir_s;
11181 MenhirLib.EngineTypes.semv = Obj.repr _v;
11182 MenhirLib.EngineTypes.startp = _startpos;
11183 MenhirLib.EngineTypes.endp = _endpos;
11184 MenhirLib.EngineTypes.next = _menhir_stack;
11185 });
11186 (fun _menhir_env ->
11187 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11188 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
11189 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
11190 let _endpos = _startpos in
11191 let _v : 'tv_empty_list_start_one_dec_decl__TEllipsis_ =
11192 # 2103 "parser_cocci_menhir.mly"
11193 ( fun build_dots build_comma -> [] )
11194 # 11168 "parser_cocci_menhir.ml"
11195 in
11196 _menhir_env.MenhirLib.EngineTypes.stack <- {
11197 MenhirLib.EngineTypes.state = _menhir_s;
11198 MenhirLib.EngineTypes.semv = Obj.repr _v;
11199 MenhirLib.EngineTypes.startp = _startpos;
11200 MenhirLib.EngineTypes.endp = _endpos;
11201 MenhirLib.EngineTypes.next = _menhir_stack;
11202 });
11203 (fun _menhir_env ->
11204 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11205 let {
11206 MenhirLib.EngineTypes.state = _menhir_s;
11207 MenhirLib.EngineTypes.semv = _1;
11208 MenhirLib.EngineTypes.startp = _startpos__1_;
11209 MenhirLib.EngineTypes.endp = _endpos__1_;
11210 MenhirLib.EngineTypes.next = _menhir_stack;
11211 } = _menhir_stack in
11212 let _1 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _1 in
11213 let _startpos = _startpos__1_ in
11214 let _endpos = _endpos__1_ in
11215 let _v : 'tv_empty_list_start_one_dec_decl__TEllipsis_ =
11216 # 2104 "parser_cocci_menhir.mly"
11217 ( _1 )
11218 # 11192 "parser_cocci_menhir.ml"
11219 in
11220 _menhir_env.MenhirLib.EngineTypes.stack <- {
11221 MenhirLib.EngineTypes.state = _menhir_s;
11222 MenhirLib.EngineTypes.semv = Obj.repr _v;
11223 MenhirLib.EngineTypes.startp = _startpos;
11224 MenhirLib.EngineTypes.endp = _endpos;
11225 MenhirLib.EngineTypes.next = _menhir_stack;
11226 });
11227 (fun _menhir_env ->
11228 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11229 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
11230 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
11231 let _endpos = _startpos in
11232 let _v : 'tv_empty_list_start_one_dec_name_opt_decl__TEllipsis_ =
11233 # 2103 "parser_cocci_menhir.mly"
11234 ( fun build_dots build_comma -> [] )
11235 # 11209 "parser_cocci_menhir.ml"
11236 in
11237 _menhir_env.MenhirLib.EngineTypes.stack <- {
11238 MenhirLib.EngineTypes.state = _menhir_s;
11239 MenhirLib.EngineTypes.semv = Obj.repr _v;
11240 MenhirLib.EngineTypes.startp = _startpos;
11241 MenhirLib.EngineTypes.endp = _endpos;
11242 MenhirLib.EngineTypes.next = _menhir_stack;
11243 });
11244 (fun _menhir_env ->
11245 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11246 let {
11247 MenhirLib.EngineTypes.state = _menhir_s;
11248 MenhirLib.EngineTypes.semv = _1;
11249 MenhirLib.EngineTypes.startp = _startpos__1_;
11250 MenhirLib.EngineTypes.endp = _endpos__1_;
11251 MenhirLib.EngineTypes.next = _menhir_stack;
11252 } = _menhir_stack in
11253 let _1 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _1 in
11254 let _startpos = _startpos__1_ in
11255 let _endpos = _endpos__1_ in
11256 let _v : 'tv_empty_list_start_one_dec_name_opt_decl__TEllipsis_ =
11257 # 2104 "parser_cocci_menhir.mly"
11258 ( _1 )
11259 # 11233 "parser_cocci_menhir.ml"
11260 in
11261 _menhir_env.MenhirLib.EngineTypes.stack <- {
11262 MenhirLib.EngineTypes.state = _menhir_s;
11263 MenhirLib.EngineTypes.semv = Obj.repr _v;
11264 MenhirLib.EngineTypes.startp = _startpos;
11265 MenhirLib.EngineTypes.endp = _endpos;
11266 MenhirLib.EngineTypes.next = _menhir_stack;
11267 });
11268 (fun _menhir_env ->
11269 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11270 let {
11271 MenhirLib.EngineTypes.state = _menhir_s;
11272 MenhirLib.EngineTypes.semv = _1;
11273 MenhirLib.EngineTypes.startp = _startpos__1_;
11274 MenhirLib.EngineTypes.endp = _endpos__1_;
11275 MenhirLib.EngineTypes.next = _menhir_stack;
11276 } = _menhir_stack in
11277 let _1 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _1 in
11278 let _startpos = _startpos__1_ in
11279 let _endpos = _endpos__1_ in
11280 let _v : 'tv_enum_decl_list =
11281 # 827 "parser_cocci_menhir.mly"
11282 ( Ast0.wrap(Ast0.DOTS(_1 P.mkedots (fun c -> Ast0.EComma c))) )
11283 # 11257 "parser_cocci_menhir.ml"
11284 in
11285 _menhir_env.MenhirLib.EngineTypes.stack <- {
11286 MenhirLib.EngineTypes.state = _menhir_s;
11287 MenhirLib.EngineTypes.semv = Obj.repr _v;
11288 MenhirLib.EngineTypes.startp = _startpos;
11289 MenhirLib.EngineTypes.endp = _endpos;
11290 MenhirLib.EngineTypes.next = _menhir_stack;
11291 });
11292 (fun _menhir_env ->
11293 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11294 let {
11295 MenhirLib.EngineTypes.state = _menhir_s;
11296 MenhirLib.EngineTypes.semv = _1;
11297 MenhirLib.EngineTypes.startp = _startpos__1_;
11298 MenhirLib.EngineTypes.endp = _endpos__1_;
11299 MenhirLib.EngineTypes.next = _menhir_stack;
11300 } = _menhir_stack in
11301 let _1 : 'tv_disj_ident = Obj.magic _1 in
11302 let _startpos = _startpos__1_ in
11303 let _endpos = _endpos__1_ in
11304 let _v : 'tv_enum_decl_one =
11305 # 798 "parser_cocci_menhir.mly"
11306 ( Ast0.wrap(Ast0.Ident(_1)) )
11307 # 11281 "parser_cocci_menhir.ml"
11308 in
11309 _menhir_env.MenhirLib.EngineTypes.stack <- {
11310 MenhirLib.EngineTypes.state = _menhir_s;
11311 MenhirLib.EngineTypes.semv = Obj.repr _v;
11312 MenhirLib.EngineTypes.startp = _startpos;
11313 MenhirLib.EngineTypes.endp = _endpos;
11314 MenhirLib.EngineTypes.next = _menhir_stack;
11315 });
11316 (fun _menhir_env ->
11317 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11318 let {
11319 MenhirLib.EngineTypes.semv = _3;
11320 MenhirLib.EngineTypes.startp = _startpos__3_;
11321 MenhirLib.EngineTypes.endp = _endpos__3_;
11322 MenhirLib.EngineTypes.next = {
11323 MenhirLib.EngineTypes.semv = _2;
11324 MenhirLib.EngineTypes.startp = _startpos__2_;
11325 MenhirLib.EngineTypes.endp = _endpos__2_;
11326 MenhirLib.EngineTypes.next = {
11327 MenhirLib.EngineTypes.state = _menhir_s;
11328 MenhirLib.EngineTypes.semv = _1;
11329 MenhirLib.EngineTypes.startp = _startpos__1_;
11330 MenhirLib.EngineTypes.endp = _endpos__1_;
11331 MenhirLib.EngineTypes.next = _menhir_stack;
11332 };
11333 };
11334 } = _menhir_stack in
11335 let _3 : 'tv_enum_val = Obj.magic _3 in
11336 let _2 : (
11337 # 153 "parser_cocci_menhir.mly"
11338 (Data.clt)
11339 # 11313 "parser_cocci_menhir.ml"
11340 ) = Obj.magic _2 in
11341 let _1 : 'tv_disj_ident = Obj.magic _1 in
11342 let _startpos = _startpos__1_ in
11343 let _endpos = _endpos__3_ in
11344 let _v : 'tv_enum_decl_one =
11345 # 800 "parser_cocci_menhir.mly"
11346 ( let id = Ast0.wrap(Ast0.Ident(_1)) in
11347 Ast0.wrap
11348 (Ast0.Assignment
11349 (id,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,
11350 false)) )
11351 # 11325 "parser_cocci_menhir.ml"
11352 in
11353 _menhir_env.MenhirLib.EngineTypes.stack <- {
11354 MenhirLib.EngineTypes.state = _menhir_s;
11355 MenhirLib.EngineTypes.semv = Obj.repr _v;
11356 MenhirLib.EngineTypes.startp = _startpos;
11357 MenhirLib.EngineTypes.endp = _endpos;
11358 MenhirLib.EngineTypes.next = _menhir_stack;
11359 });
11360 (fun _menhir_env ->
11361 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11362 let {
11363 MenhirLib.EngineTypes.state = _menhir_s;
11364 MenhirLib.EngineTypes.semv = _1;
11365 MenhirLib.EngineTypes.startp = _startpos__1_;
11366 MenhirLib.EngineTypes.endp = _endpos__1_;
11367 MenhirLib.EngineTypes.next = _menhir_stack;
11368 } = _menhir_stack in
11369 let _1 : 'tv_ident = Obj.magic _1 in
11370 let _startpos = _startpos__1_ in
11371 let _endpos = _endpos__1_ in
11372 let _v : 'tv_enum_val =
11373 # 807 "parser_cocci_menhir.mly"
11374 ( Ast0.wrap(Ast0.Ident(_1)) )
11375 # 11349 "parser_cocci_menhir.ml"
11376 in
11377 _menhir_env.MenhirLib.EngineTypes.stack <- {
11378 MenhirLib.EngineTypes.state = _menhir_s;
11379 MenhirLib.EngineTypes.semv = Obj.repr _v;
11380 MenhirLib.EngineTypes.startp = _startpos;
11381 MenhirLib.EngineTypes.endp = _endpos;
11382 MenhirLib.EngineTypes.next = _menhir_stack;
11383 });
11384 (fun _menhir_env ->
11385 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11386 let {
11387 MenhirLib.EngineTypes.state = _menhir_s;
11388 MenhirLib.EngineTypes.semv = _1;
11389 MenhirLib.EngineTypes.startp = _startpos__1_;
11390 MenhirLib.EngineTypes.endp = _endpos__1_;
11391 MenhirLib.EngineTypes.next = _menhir_stack;
11392 } = _menhir_stack in
11393 let _1 : (
11394 # 133 "parser_cocci_menhir.mly"
11395 (string * Data.clt)
11396 # 11370 "parser_cocci_menhir.ml"
11397 ) = Obj.magic _1 in
11398 let _startpos = _startpos__1_ in
11399 let _endpos = _endpos__1_ in
11400 let _v : 'tv_enum_val =
11401 # 809 "parser_cocci_menhir.mly"
11402 ( let (x,clt) = _1 in
11403 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
11404 # 11378 "parser_cocci_menhir.ml"
11405 in
11406 _menhir_env.MenhirLib.EngineTypes.stack <- {
11407 MenhirLib.EngineTypes.state = _menhir_s;
11408 MenhirLib.EngineTypes.semv = Obj.repr _v;
11409 MenhirLib.EngineTypes.startp = _startpos;
11410 MenhirLib.EngineTypes.endp = _endpos;
11411 MenhirLib.EngineTypes.next = _menhir_stack;
11412 });
11413 (fun _menhir_env ->
11414 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11415 let {
11416 MenhirLib.EngineTypes.state = _menhir_s;
11417 MenhirLib.EngineTypes.semv = _1;
11418 MenhirLib.EngineTypes.startp = _startpos__1_;
11419 MenhirLib.EngineTypes.endp = _endpos__1_;
11420 MenhirLib.EngineTypes.next = _menhir_stack;
11421 } = _menhir_stack in
11422 let _1 : (
11423 # 109 "parser_cocci_menhir.mly"
11424 (Parse_aux.info)
11425 # 11399 "parser_cocci_menhir.ml"
11426 ) = Obj.magic _1 in
11427 let _startpos = _startpos__1_ in
11428 let _endpos = _endpos__1_ in
11429 let _v : 'tv_enum_val =
11430 # 811 "parser_cocci_menhir.mly"
11431 ( tmeta_to_exp _1 )
11432 # 11406 "parser_cocci_menhir.ml"
11433 in
11434 _menhir_env.MenhirLib.EngineTypes.stack <- {
11435 MenhirLib.EngineTypes.state = _menhir_s;
11436 MenhirLib.EngineTypes.semv = Obj.repr _v;
11437 MenhirLib.EngineTypes.startp = _startpos;
11438 MenhirLib.EngineTypes.endp = _endpos;
11439 MenhirLib.EngineTypes.next = _menhir_stack;
11440 });
11441 (fun _menhir_env ->
11442 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11443 let {
11444 MenhirLib.EngineTypes.state = _menhir_s;
11445 MenhirLib.EngineTypes.semv = _1;
11446 MenhirLib.EngineTypes.startp = _startpos__1_;
11447 MenhirLib.EngineTypes.endp = _endpos__1_;
11448 MenhirLib.EngineTypes.next = _menhir_stack;
11449 } = _menhir_stack in
11450 let _1 : (
11451 # 112 "parser_cocci_menhir.mly"
11452 (Parse_aux.typed_expinfo)
11453 # 11427 "parser_cocci_menhir.ml"
11454 ) = Obj.magic _1 in
11455 let _startpos = _startpos__1_ in
11456 let _endpos = _endpos__1_ in
11457 let _v : 'tv_enum_val =
11458 # 813 "parser_cocci_menhir.mly"
11459 ( let (nm,constraints,pure,ty,clt) = _1 in
11460 Ast0.wrap
11461 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
11462 # 11436 "parser_cocci_menhir.ml"
11463 in
11464 _menhir_env.MenhirLib.EngineTypes.stack <- {
11465 MenhirLib.EngineTypes.state = _menhir_s;
11466 MenhirLib.EngineTypes.semv = Obj.repr _v;
11467 MenhirLib.EngineTypes.startp = _startpos;
11468 MenhirLib.EngineTypes.endp = _endpos;
11469 MenhirLib.EngineTypes.next = _menhir_stack;
11470 });
11471 (fun _menhir_env ->
11472 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11473 let {
11474 MenhirLib.EngineTypes.state = _menhir_s;
11475 MenhirLib.EngineTypes.semv = _1;
11476 MenhirLib.EngineTypes.startp = _startpos__1_;
11477 MenhirLib.EngineTypes.endp = _endpos__1_;
11478 MenhirLib.EngineTypes.next = _menhir_stack;
11479 } = _menhir_stack in
11480 let _1 : (
11481 # 112 "parser_cocci_menhir.mly"
11482 (Parse_aux.typed_expinfo)
11483 # 11457 "parser_cocci_menhir.ml"
11484 ) = Obj.magic _1 in
11485 let _startpos = _startpos__1_ in
11486 let _endpos = _endpos__1_ in
11487 let _v : 'tv_enum_val =
11488 # 817 "parser_cocci_menhir.mly"
11489 ( let (nm,constraints,pure,ty,clt) = _1 in
11490 Ast0.wrap
11491 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
11492 # 11466 "parser_cocci_menhir.ml"
11493 in
11494 _menhir_env.MenhirLib.EngineTypes.stack <- {
11495 MenhirLib.EngineTypes.state = _menhir_s;
11496 MenhirLib.EngineTypes.semv = Obj.repr _v;
11497 MenhirLib.EngineTypes.startp = _startpos;
11498 MenhirLib.EngineTypes.endp = _endpos;
11499 MenhirLib.EngineTypes.next = _menhir_stack;
11500 });
11501 (fun _menhir_env ->
11502 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11503 let {
11504 MenhirLib.EngineTypes.state = _menhir_s;
11505 MenhirLib.EngineTypes.semv = _1;
11506 MenhirLib.EngineTypes.startp = _startpos__1_;
11507 MenhirLib.EngineTypes.endp = _endpos__1_;
11508 MenhirLib.EngineTypes.next = _menhir_stack;
11509 } = _menhir_stack in
11510 let _1 : (
11511 # 112 "parser_cocci_menhir.mly"
11512 (Parse_aux.typed_expinfo)
11513 # 11487 "parser_cocci_menhir.ml"
11514 ) = Obj.magic _1 in
11515 let _startpos = _startpos__1_ in
11516 let _endpos = _endpos__1_ in
11517 let _v : 'tv_enum_val =
11518 # 821 "parser_cocci_menhir.mly"
11519 ( let (nm,constraints,pure,ty,clt) = _1 in
11520 Ast0.wrap
11521 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
11522 # 11496 "parser_cocci_menhir.ml"
11523 in
11524 _menhir_env.MenhirLib.EngineTypes.stack <- {
11525 MenhirLib.EngineTypes.state = _menhir_s;
11526 MenhirLib.EngineTypes.semv = Obj.repr _v;
11527 MenhirLib.EngineTypes.startp = _startpos;
11528 MenhirLib.EngineTypes.endp = _endpos;
11529 MenhirLib.EngineTypes.next = _menhir_stack;
11530 });
11531 (fun _menhir_env ->
11532 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11533 let {
11534 MenhirLib.EngineTypes.state = _menhir_s;
11535 MenhirLib.EngineTypes.startp = _startpos__1_;
11536 MenhirLib.EngineTypes.endp = _endpos__1_;
11537 MenhirLib.EngineTypes.next = _menhir_stack;
11538 } = _menhir_stack in
11539 let _startpos = _startpos__1_ in
11540 let _endpos = _endpos__1_ in
11541 let _v : 'tv_exists =
11542 # 290 "parser_cocci_menhir.mly"
11543 ( Ast.Exists )
11544 # 11518 "parser_cocci_menhir.ml"
11545 in
11546 _menhir_env.MenhirLib.EngineTypes.stack <- {
11547 MenhirLib.EngineTypes.state = _menhir_s;
11548 MenhirLib.EngineTypes.semv = Obj.repr _v;
11549 MenhirLib.EngineTypes.startp = _startpos;
11550 MenhirLib.EngineTypes.endp = _endpos;
11551 MenhirLib.EngineTypes.next = _menhir_stack;
11552 });
11553 (fun _menhir_env ->
11554 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11555 let {
11556 MenhirLib.EngineTypes.state = _menhir_s;
11557 MenhirLib.EngineTypes.startp = _startpos__1_;
11558 MenhirLib.EngineTypes.endp = _endpos__1_;
11559 MenhirLib.EngineTypes.next = _menhir_stack;
11560 } = _menhir_stack in
11561 let _startpos = _startpos__1_ in
11562 let _endpos = _endpos__1_ in
11563 let _v : 'tv_exists =
11564 # 291 "parser_cocci_menhir.mly"
11565 ( Ast.Forall )
11566 # 11540 "parser_cocci_menhir.ml"
11567 in
11568 _menhir_env.MenhirLib.EngineTypes.stack <- {
11569 MenhirLib.EngineTypes.state = _menhir_s;
11570 MenhirLib.EngineTypes.semv = Obj.repr _v;
11571 MenhirLib.EngineTypes.startp = _startpos;
11572 MenhirLib.EngineTypes.endp = _endpos;
11573 MenhirLib.EngineTypes.next = _menhir_stack;
11574 });
11575 (fun _menhir_env ->
11576 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11577 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
11578 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
11579 let _endpos = _startpos in
11580 let _v : 'tv_exists =
11581 # 292 "parser_cocci_menhir.mly"
11582 ( Ast.Undetermined )
11583 # 11557 "parser_cocci_menhir.ml"
11584 in
11585 _menhir_env.MenhirLib.EngineTypes.stack <- {
11586 MenhirLib.EngineTypes.state = _menhir_s;
11587 MenhirLib.EngineTypes.semv = Obj.repr _v;
11588 MenhirLib.EngineTypes.startp = _startpos;
11589 MenhirLib.EngineTypes.endp = _endpos;
11590 MenhirLib.EngineTypes.next = _menhir_stack;
11591 });
11592 (fun _menhir_env ->
11593 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11594 let {
11595 MenhirLib.EngineTypes.state = _menhir_s;
11596 MenhirLib.EngineTypes.semv = _1;
11597 MenhirLib.EngineTypes.startp = _startpos__1_;
11598 MenhirLib.EngineTypes.endp = _endpos__1_;
11599 MenhirLib.EngineTypes.next = _menhir_stack;
11600 } = _menhir_stack in
11601 let _1 : 'tv_basic_expr_expr_invalid_ = Obj.magic _1 in
11602 let _startpos = _startpos__1_ in
11603 let _endpos = _endpos__1_ in
11604 let _v : 'tv_expr =
11605 # 1466 "parser_cocci_menhir.mly"
11606 ( _1 )
11607 # 11581 "parser_cocci_menhir.ml"
11608 in
11609 _menhir_env.MenhirLib.EngineTypes.stack <- {
11610 MenhirLib.EngineTypes.state = _menhir_s;
11611 MenhirLib.EngineTypes.semv = Obj.repr _v;
11612 MenhirLib.EngineTypes.startp = _startpos;
11613 MenhirLib.EngineTypes.endp = _endpos;
11614 MenhirLib.EngineTypes.next = _menhir_stack;
11615 });
11616 (fun _menhir_env ->
11617 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11618 let {
11619 MenhirLib.EngineTypes.state = _menhir_s;
11620 MenhirLib.EngineTypes.semv = r;
11621 MenhirLib.EngineTypes.startp = _startpos_r_;
11622 MenhirLib.EngineTypes.endp = _endpos_r_;
11623 MenhirLib.EngineTypes.next = _menhir_stack;
11624 } = _menhir_stack in
11625 let r : 'tv_no_dot_start_end_dexpr_edots_when_TEllipsis_eexpr__ = Obj.magic r in
11626 let _startpos = _startpos_r_ in
11627 let _endpos = _endpos_r_ in
11628 let _v : 'tv_expr_dots_TEllipsis_ =
11629 # 1739 "parser_cocci_menhir.mly"
11630 ( r )
11631 # 11605 "parser_cocci_menhir.ml"
11632 in
11633 _menhir_env.MenhirLib.EngineTypes.stack <- {
11634 MenhirLib.EngineTypes.state = _menhir_s;
11635 MenhirLib.EngineTypes.semv = Obj.repr _v;
11636 MenhirLib.EngineTypes.startp = _startpos;
11637 MenhirLib.EngineTypes.endp = _endpos;
11638 MenhirLib.EngineTypes.next = _menhir_stack;
11639 });
11640 (fun _menhir_env ->
11641 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11642 let {
11643 MenhirLib.EngineTypes.state = _menhir_s;
11644 MenhirLib.EngineTypes.semv = m;
11645 MenhirLib.EngineTypes.startp = _startpos_m_;
11646 MenhirLib.EngineTypes.endp = _endpos_m_;
11647 MenhirLib.EngineTypes.next = _menhir_stack;
11648 } = _menhir_stack in
11649 let m : 'tv_nonempty_list_TMul_ = Obj.magic m in
11650 let _startpos = _startpos_m_ in
11651 let _endpos = _endpos_m_ in
11652 let _v : 'tv_expression_type =
11653 # 565 "parser_cocci_menhir.mly"
11654 ( P.ty_pointerify Type_cocci.Unknown m )
11655 # 11629 "parser_cocci_menhir.ml"
11656 in
11657 _menhir_env.MenhirLib.EngineTypes.stack <- {
11658 MenhirLib.EngineTypes.state = _menhir_s;
11659 MenhirLib.EngineTypes.semv = Obj.repr _v;
11660 MenhirLib.EngineTypes.startp = _startpos;
11661 MenhirLib.EngineTypes.endp = _endpos;
11662 MenhirLib.EngineTypes.next = _menhir_stack;
11663 });
11664 (fun _menhir_env ->
11665 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11666 let {
11667 MenhirLib.EngineTypes.semv = m;
11668 MenhirLib.EngineTypes.startp = _startpos_m_;
11669 MenhirLib.EngineTypes.endp = _endpos_m_;
11670 MenhirLib.EngineTypes.next = {
11671 MenhirLib.EngineTypes.state = _menhir_s;
11672 MenhirLib.EngineTypes.startp = _startpos__1_;
11673 MenhirLib.EngineTypes.endp = _endpos__1_;
11674 MenhirLib.EngineTypes.next = _menhir_stack;
11675 };
11676 } = _menhir_stack in
11677 let m : 'tv_list_TMul_ = Obj.magic m in
11678 let _startpos = _startpos__1_ in
11679 let _endpos = _endpos_m_ in
11680 let _v : 'tv_expression_type =
11681 # 567 "parser_cocci_menhir.mly"
11682 ( P.ty_pointerify (Type_cocci.EnumName Type_cocci.NoName) m )
11683 # 11657 "parser_cocci_menhir.ml"
11684 in
11685 _menhir_env.MenhirLib.EngineTypes.stack <- {
11686 MenhirLib.EngineTypes.state = _menhir_s;
11687 MenhirLib.EngineTypes.semv = Obj.repr _v;
11688 MenhirLib.EngineTypes.startp = _startpos;
11689 MenhirLib.EngineTypes.endp = _endpos;
11690 MenhirLib.EngineTypes.next = _menhir_stack;
11691 });
11692 (fun _menhir_env ->
11693 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11694 let {
11695 MenhirLib.EngineTypes.semv = m;
11696 MenhirLib.EngineTypes.startp = _startpos_m_;
11697 MenhirLib.EngineTypes.endp = _endpos_m_;
11698 MenhirLib.EngineTypes.next = {
11699 MenhirLib.EngineTypes.state = _menhir_s;
11700 MenhirLib.EngineTypes.startp = _startpos__1_;
11701 MenhirLib.EngineTypes.endp = _endpos__1_;
11702 MenhirLib.EngineTypes.next = _menhir_stack;
11703 };
11704 } = _menhir_stack in
11705 let m : 'tv_list_TMul_ = Obj.magic m in
11706 let _startpos = _startpos__1_ in
11707 let _endpos = _endpos_m_ in
11708 let _v : 'tv_expression_type =
11709 # 569 "parser_cocci_menhir.mly"
11710 ( P.ty_pointerify
11711 (Type_cocci.StructUnionName (Type_cocci.Struct,Type_cocci.NoName)) m )
11712 # 11686 "parser_cocci_menhir.ml"
11713 in
11714 _menhir_env.MenhirLib.EngineTypes.stack <- {
11715 MenhirLib.EngineTypes.state = _menhir_s;
11716 MenhirLib.EngineTypes.semv = Obj.repr _v;
11717 MenhirLib.EngineTypes.startp = _startpos;
11718 MenhirLib.EngineTypes.endp = _endpos;
11719 MenhirLib.EngineTypes.next = _menhir_stack;
11720 });
11721 (fun _menhir_env ->
11722 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11723 let {
11724 MenhirLib.EngineTypes.semv = m;
11725 MenhirLib.EngineTypes.startp = _startpos_m_;
11726 MenhirLib.EngineTypes.endp = _endpos_m_;
11727 MenhirLib.EngineTypes.next = {
11728 MenhirLib.EngineTypes.state = _menhir_s;
11729 MenhirLib.EngineTypes.startp = _startpos__1_;
11730 MenhirLib.EngineTypes.endp = _endpos__1_;
11731 MenhirLib.EngineTypes.next = _menhir_stack;
11732 };
11733 } = _menhir_stack in
11734 let m : 'tv_list_TMul_ = Obj.magic m in
11735 let _startpos = _startpos__1_ in
11736 let _endpos = _endpos_m_ in
11737 let _v : 'tv_expression_type =
11738 # 572 "parser_cocci_menhir.mly"
11739 ( P.ty_pointerify
11740 (Type_cocci.StructUnionName (Type_cocci.Union,Type_cocci.NoName)) m )
11741 # 11715 "parser_cocci_menhir.ml"
11742 in
11743 _menhir_env.MenhirLib.EngineTypes.stack <- {
11744 MenhirLib.EngineTypes.state = _menhir_s;
11745 MenhirLib.EngineTypes.semv = Obj.repr _v;
11746 MenhirLib.EngineTypes.startp = _startpos;
11747 MenhirLib.EngineTypes.endp = _endpos;
11748 MenhirLib.EngineTypes.next = _menhir_stack;
11749 });
11750 (fun _menhir_env ->
11751 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11752 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
11753 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
11754 let _endpos = _startpos in
11755 let _v : 'tv_extends =
11756 # 264 "parser_cocci_menhir.mly"
11757 ( () )
11758 # 11732 "parser_cocci_menhir.ml"
11759 in
11760 _menhir_env.MenhirLib.EngineTypes.stack <- {
11761 MenhirLib.EngineTypes.state = _menhir_s;
11762 MenhirLib.EngineTypes.semv = Obj.repr _v;
11763 MenhirLib.EngineTypes.startp = _startpos;
11764 MenhirLib.EngineTypes.endp = _endpos;
11765 MenhirLib.EngineTypes.next = _menhir_stack;
11766 });
11767 (fun _menhir_env ->
11768 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11769 let {
11770 MenhirLib.EngineTypes.semv = parent;
11771 MenhirLib.EngineTypes.startp = _startpos_parent_;
11772 MenhirLib.EngineTypes.endp = _endpos_parent_;
11773 MenhirLib.EngineTypes.next = {
11774 MenhirLib.EngineTypes.state = _menhir_s;
11775 MenhirLib.EngineTypes.startp = _startpos__1_;
11776 MenhirLib.EngineTypes.endp = _endpos__1_;
11777 MenhirLib.EngineTypes.next = _menhir_stack;
11778 };
11779 } = _menhir_stack in
11780 let parent : (
11781 # 88 "parser_cocci_menhir.mly"
11782 (string)
11783 # 11757 "parser_cocci_menhir.ml"
11784 ) = Obj.magic parent in
11785 let _startpos = _startpos__1_ in
11786 let _endpos = _endpos_parent_ in
11787 let _v : 'tv_extends =
11788 # 266 "parser_cocci_menhir.mly"
11789 ( !Data.install_bindings (parent) )
11790 # 11764 "parser_cocci_menhir.ml"
11791 in
11792 _menhir_env.MenhirLib.EngineTypes.stack <- {
11793 MenhirLib.EngineTypes.state = _menhir_s;
11794 MenhirLib.EngineTypes.semv = Obj.repr _v;
11795 MenhirLib.EngineTypes.startp = _startpos;
11796 MenhirLib.EngineTypes.endp = _endpos;
11797 MenhirLib.EngineTypes.next = _menhir_stack;
11798 });
11799 (fun _menhir_env ->
11800 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11801 let {
11802 MenhirLib.EngineTypes.semv = _2;
11803 MenhirLib.EngineTypes.startp = _startpos__2_;
11804 MenhirLib.EngineTypes.endp = _endpos__2_;
11805 MenhirLib.EngineTypes.next = {
11806 MenhirLib.EngineTypes.state = _menhir_s;
11807 MenhirLib.EngineTypes.semv = _1;
11808 MenhirLib.EngineTypes.startp = _startpos__1_;
11809 MenhirLib.EngineTypes.endp = _endpos__1_;
11810 MenhirLib.EngineTypes.next = _menhir_stack;
11811 };
11812 } = _menhir_stack in
11813 let _2 : (
11814 # 129 "parser_cocci_menhir.mly"
11815 (string * Data.clt)
11816 # 11790 "parser_cocci_menhir.ml"
11817 ) = Obj.magic _2 in
11818 let _1 : (
11819 # 129 "parser_cocci_menhir.mly"
11820 (string * Data.clt)
11821 # 11795 "parser_cocci_menhir.ml"
11822 ) = Obj.magic _1 in
11823 let _startpos = _startpos__1_ in
11824 let _endpos = _endpos__2_ in
11825 let _v : 'tv_filespec =
11826 # 864 "parser_cocci_menhir.mly"
11827 ( [Ast0.wrap
11828 (Ast0.FILEINFO(P.id2mcode _1,
11829 P.id2mcode _2))] )
11830 # 11804 "parser_cocci_menhir.ml"
11831 in
11832 _menhir_env.MenhirLib.EngineTypes.stack <- {
11833 MenhirLib.EngineTypes.state = _menhir_s;
11834 MenhirLib.EngineTypes.semv = Obj.repr _v;
11835 MenhirLib.EngineTypes.startp = _startpos;
11836 MenhirLib.EngineTypes.endp = _endpos;
11837 MenhirLib.EngineTypes.next = _menhir_stack;
11838 });
11839 (fun _menhir_env ->
11840 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11841 let {
11842 MenhirLib.EngineTypes.state = _menhir_s;
11843 MenhirLib.EngineTypes.semv = _1;
11844 MenhirLib.EngineTypes.startp = _startpos__1_;
11845 MenhirLib.EngineTypes.endp = _endpos__1_;
11846 MenhirLib.EngineTypes.next = _menhir_stack;
11847 } = _menhir_stack in
11848 let _1 : 'tv_disj_ident = Obj.magic _1 in
11849 let _startpos = _startpos__1_ in
11850 let _endpos = _endpos__1_ in
11851 let _v : 'tv_fn_ident =
11852 # 2014 "parser_cocci_menhir.mly"
11853 ( _1 )
11854 # 11828 "parser_cocci_menhir.ml"
11855 in
11856 _menhir_env.MenhirLib.EngineTypes.stack <- {
11857 MenhirLib.EngineTypes.state = _menhir_s;
11858 MenhirLib.EngineTypes.semv = Obj.repr _v;
11859 MenhirLib.EngineTypes.startp = _startpos;
11860 MenhirLib.EngineTypes.endp = _endpos;
11861 MenhirLib.EngineTypes.next = _menhir_stack;
11862 });
11863 (fun _menhir_env ->
11864 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11865 let {
11866 MenhirLib.EngineTypes.state = _menhir_s;
11867 MenhirLib.EngineTypes.semv = _1;
11868 MenhirLib.EngineTypes.startp = _startpos__1_;
11869 MenhirLib.EngineTypes.endp = _endpos__1_;
11870 MenhirLib.EngineTypes.next = _menhir_stack;
11871 } = _menhir_stack in
11872 let _1 : (
11873 # 105 "parser_cocci_menhir.mly"
11874 (Parse_aux.idinfo)
11875 # 11849 "parser_cocci_menhir.ml"
11876 ) = Obj.magic _1 in
11877 let _startpos = _startpos__1_ in
11878 let _endpos = _endpos__1_ in
11879 let _v : 'tv_fn_ident =
11880 # 2016 "parser_cocci_menhir.mly"
11881 ( let (nm,constraints,pure,clt) = _1 in
11882 Ast0.wrap(Ast0.MetaFunc(P.clt2mcode nm clt,constraints,pure)) )
11883 # 11857 "parser_cocci_menhir.ml"
11884 in
11885 _menhir_env.MenhirLib.EngineTypes.stack <- {
11886 MenhirLib.EngineTypes.state = _menhir_s;
11887 MenhirLib.EngineTypes.semv = Obj.repr _v;
11888 MenhirLib.EngineTypes.startp = _startpos;
11889 MenhirLib.EngineTypes.endp = _endpos;
11890 MenhirLib.EngineTypes.next = _menhir_stack;
11891 });
11892 (fun _menhir_env ->
11893 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11894 let {
11895 MenhirLib.EngineTypes.state = _menhir_s;
11896 MenhirLib.EngineTypes.semv = _1;
11897 MenhirLib.EngineTypes.startp = _startpos__1_;
11898 MenhirLib.EngineTypes.endp = _endpos__1_;
11899 MenhirLib.EngineTypes.next = _menhir_stack;
11900 } = _menhir_stack in
11901 let _1 : (
11902 # 105 "parser_cocci_menhir.mly"
11903 (Parse_aux.idinfo)
11904 # 11878 "parser_cocci_menhir.ml"
11905 ) = Obj.magic _1 in
11906 let _startpos = _startpos__1_ in
11907 let _endpos = _endpos__1_ in
11908 let _v : 'tv_fn_ident =
11909 # 2019 "parser_cocci_menhir.mly"
11910 ( let (nm,constraints,pure,clt) = _1 in
11911 Ast0.wrap
11912 (Ast0.MetaLocalFunc(P.clt2mcode nm clt,constraints,pure)) )
11913 # 11887 "parser_cocci_menhir.ml"
11914 in
11915 _menhir_env.MenhirLib.EngineTypes.stack <- {
11916 MenhirLib.EngineTypes.state = _menhir_s;
11917 MenhirLib.EngineTypes.semv = Obj.repr _v;
11918 MenhirLib.EngineTypes.startp = _startpos;
11919 MenhirLib.EngineTypes.endp = _endpos;
11920 MenhirLib.EngineTypes.next = _menhir_stack;
11921 });
11922 (fun _menhir_env ->
11923 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11924 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
11925 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
11926 let _endpos = _startpos in
11927 let _v : 'tv_fninfo =
11928 # 1017 "parser_cocci_menhir.mly"
11929 ( [] )
11930 # 11904 "parser_cocci_menhir.ml"
11931 in
11932 _menhir_env.MenhirLib.EngineTypes.stack <- {
11933 MenhirLib.EngineTypes.state = _menhir_s;
11934 MenhirLib.EngineTypes.semv = Obj.repr _v;
11935 MenhirLib.EngineTypes.startp = _startpos;
11936 MenhirLib.EngineTypes.endp = _endpos;
11937 MenhirLib.EngineTypes.next = _menhir_stack;
11938 });
11939 (fun _menhir_env ->
11940 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11941 let {
11942 MenhirLib.EngineTypes.semv = _2;
11943 MenhirLib.EngineTypes.startp = _startpos__2_;
11944 MenhirLib.EngineTypes.endp = _endpos__2_;
11945 MenhirLib.EngineTypes.next = {
11946 MenhirLib.EngineTypes.state = _menhir_s;
11947 MenhirLib.EngineTypes.semv = _1;
11948 MenhirLib.EngineTypes.startp = _startpos__1_;
11949 MenhirLib.EngineTypes.endp = _endpos__1_;
11950 MenhirLib.EngineTypes.next = _menhir_stack;
11951 };
11952 } = _menhir_stack in
11953 let _2 : 'tv_fninfo = Obj.magic _2 in
11954 let _1 : 'tv_storage = Obj.magic _1 in
11955 let _startpos = _startpos__1_ in
11956 let _endpos = _endpos__2_ in
11957 let _v : 'tv_fninfo =
11958 # 1019 "parser_cocci_menhir.mly"
11959 ( try
11960 let _ =
11961 List.find (function Ast0.FStorage(_) -> true | _ -> false) _2 in
11962 raise (Semantic_cocci.Semantic "duplicate storage")
11963 with Not_found -> (Ast0.FStorage(_1))::_2 )
11964 # 11938 "parser_cocci_menhir.ml"
11965 in
11966 _menhir_env.MenhirLib.EngineTypes.stack <- {
11967 MenhirLib.EngineTypes.state = _menhir_s;
11968 MenhirLib.EngineTypes.semv = Obj.repr _v;
11969 MenhirLib.EngineTypes.startp = _startpos;
11970 MenhirLib.EngineTypes.endp = _endpos;
11971 MenhirLib.EngineTypes.next = _menhir_stack;
11972 });
11973 (fun _menhir_env ->
11974 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
11975 let {
11976 MenhirLib.EngineTypes.semv = r;
11977 MenhirLib.EngineTypes.startp = _startpos_r_;
11978 MenhirLib.EngineTypes.endp = _endpos_r_;
11979 MenhirLib.EngineTypes.next = {
11980 MenhirLib.EngineTypes.state = _menhir_s;
11981 MenhirLib.EngineTypes.semv = t;
11982 MenhirLib.EngineTypes.startp = _startpos_t_;
11983 MenhirLib.EngineTypes.endp = _endpos_t_;
11984 MenhirLib.EngineTypes.next = _menhir_stack;
11985 };
11986 } = _menhir_stack in
11987 let r : 'tv_fninfo_nt = Obj.magic r in
11988 let t : 'tv_ctype = Obj.magic t in
11989 let _startpos = _startpos_t_ in
11990 let _endpos = _endpos_r_ in
11991 let _v : 'tv_fninfo =
11992 # 1024 "parser_cocci_menhir.mly"
11993 ( (Ast0.FType(t))::r )
11994 # 11968 "parser_cocci_menhir.ml"
11995 in
11996 _menhir_env.MenhirLib.EngineTypes.stack <- {
11997 MenhirLib.EngineTypes.state = _menhir_s;
11998 MenhirLib.EngineTypes.semv = Obj.repr _v;
11999 MenhirLib.EngineTypes.startp = _startpos;
12000 MenhirLib.EngineTypes.endp = _endpos;
12001 MenhirLib.EngineTypes.next = _menhir_stack;
12002 });
12003 (fun _menhir_env ->
12004 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12005 let {
12006 MenhirLib.EngineTypes.semv = _2;
12007 MenhirLib.EngineTypes.startp = _startpos__2_;
12008 MenhirLib.EngineTypes.endp = _endpos__2_;
12009 MenhirLib.EngineTypes.next = {
12010 MenhirLib.EngineTypes.state = _menhir_s;
12011 MenhirLib.EngineTypes.semv = _1;
12012 MenhirLib.EngineTypes.startp = _startpos__1_;
12013 MenhirLib.EngineTypes.endp = _endpos__1_;
12014 MenhirLib.EngineTypes.next = _menhir_stack;
12015 };
12016 } = _menhir_stack in
12017 let _2 : 'tv_fninfo = Obj.magic _2 in
12018 let _1 : (
12019 # 95 "parser_cocci_menhir.mly"
12020 (Data.clt)
12021 # 11995 "parser_cocci_menhir.ml"
12022 ) = Obj.magic _1 in
12023 let _startpos = _startpos__1_ in
12024 let _endpos = _endpos__2_ in
12025 let _v : 'tv_fninfo =
12026 # 1026 "parser_cocci_menhir.mly"
12027 ( try
12028 let _ = List.find (function Ast0.FInline(_) -> true | _ -> false) _2 in
12029 raise (Semantic_cocci.Semantic "duplicate inline")
12030 with Not_found -> (Ast0.FInline(P.clt2mcode "inline" _1))::_2 )
12031 # 12005 "parser_cocci_menhir.ml"
12032 in
12033 _menhir_env.MenhirLib.EngineTypes.stack <- {
12034 MenhirLib.EngineTypes.state = _menhir_s;
12035 MenhirLib.EngineTypes.semv = Obj.repr _v;
12036 MenhirLib.EngineTypes.startp = _startpos;
12037 MenhirLib.EngineTypes.endp = _endpos;
12038 MenhirLib.EngineTypes.next = _menhir_stack;
12039 });
12040 (fun _menhir_env ->
12041 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12042 let {
12043 MenhirLib.EngineTypes.semv = _2;
12044 MenhirLib.EngineTypes.startp = _startpos__2_;
12045 MenhirLib.EngineTypes.endp = _endpos__2_;
12046 MenhirLib.EngineTypes.next = {
12047 MenhirLib.EngineTypes.state = _menhir_s;
12048 MenhirLib.EngineTypes.semv = _1;
12049 MenhirLib.EngineTypes.startp = _startpos__1_;
12050 MenhirLib.EngineTypes.endp = _endpos__1_;
12051 MenhirLib.EngineTypes.next = _menhir_stack;
12052 };
12053 } = _menhir_stack in
12054 let _2 : 'tv_fninfo = Obj.magic _2 in
12055 let _1 : (
12056 # 97 "parser_cocci_menhir.mly"
12057 (string * Data.clt)
12058 # 12032 "parser_cocci_menhir.ml"
12059 ) = Obj.magic _1 in
12060 let _startpos = _startpos__1_ in
12061 let _endpos = _endpos__2_ in
12062 let _v : 'tv_fninfo =
12063 # 1031 "parser_cocci_menhir.mly"
12064 ( try
12065 let _ = List.find (function Ast0.FAttr(_) -> true | _ -> false) _2 in
12066 raise (Semantic_cocci.Semantic "multiple attributes")
12067 with Not_found -> (Ast0.FAttr(P.id2mcode _1))::_2 )
12068 # 12042 "parser_cocci_menhir.ml"
12069 in
12070 _menhir_env.MenhirLib.EngineTypes.stack <- {
12071 MenhirLib.EngineTypes.state = _menhir_s;
12072 MenhirLib.EngineTypes.semv = Obj.repr _v;
12073 MenhirLib.EngineTypes.startp = _startpos;
12074 MenhirLib.EngineTypes.endp = _endpos;
12075 MenhirLib.EngineTypes.next = _menhir_stack;
12076 });
12077 (fun _menhir_env ->
12078 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12079 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
12080 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
12081 let _endpos = _startpos in
12082 let _v : 'tv_fninfo_nt =
12083 # 1037 "parser_cocci_menhir.mly"
12084 ( [] )
12085 # 12059 "parser_cocci_menhir.ml"
12086 in
12087 _menhir_env.MenhirLib.EngineTypes.stack <- {
12088 MenhirLib.EngineTypes.state = _menhir_s;
12089 MenhirLib.EngineTypes.semv = Obj.repr _v;
12090 MenhirLib.EngineTypes.startp = _startpos;
12091 MenhirLib.EngineTypes.endp = _endpos;
12092 MenhirLib.EngineTypes.next = _menhir_stack;
12093 });
12094 (fun _menhir_env ->
12095 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12096 let {
12097 MenhirLib.EngineTypes.semv = _2;
12098 MenhirLib.EngineTypes.startp = _startpos__2_;
12099 MenhirLib.EngineTypes.endp = _endpos__2_;
12100 MenhirLib.EngineTypes.next = {
12101 MenhirLib.EngineTypes.state = _menhir_s;
12102 MenhirLib.EngineTypes.semv = _1;
12103 MenhirLib.EngineTypes.startp = _startpos__1_;
12104 MenhirLib.EngineTypes.endp = _endpos__1_;
12105 MenhirLib.EngineTypes.next = _menhir_stack;
12106 };
12107 } = _menhir_stack in
12108 let _2 : 'tv_fninfo_nt = Obj.magic _2 in
12109 let _1 : 'tv_storage = Obj.magic _1 in
12110 let _startpos = _startpos__1_ in
12111 let _endpos = _endpos__2_ in
12112 let _v : 'tv_fninfo_nt =
12113 # 1039 "parser_cocci_menhir.mly"
12114 ( try
12115 let _ =
12116 List.find (function Ast0.FStorage(_) -> true | _ -> false) _2 in
12117 raise (Semantic_cocci.Semantic "duplicate storage")
12118 with Not_found -> (Ast0.FStorage(_1))::_2 )
12119 # 12093 "parser_cocci_menhir.ml"
12120 in
12121 _menhir_env.MenhirLib.EngineTypes.stack <- {
12122 MenhirLib.EngineTypes.state = _menhir_s;
12123 MenhirLib.EngineTypes.semv = Obj.repr _v;
12124 MenhirLib.EngineTypes.startp = _startpos;
12125 MenhirLib.EngineTypes.endp = _endpos;
12126 MenhirLib.EngineTypes.next = _menhir_stack;
12127 });
12128 (fun _menhir_env ->
12129 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12130 let {
12131 MenhirLib.EngineTypes.semv = _2;
12132 MenhirLib.EngineTypes.startp = _startpos__2_;
12133 MenhirLib.EngineTypes.endp = _endpos__2_;
12134 MenhirLib.EngineTypes.next = {
12135 MenhirLib.EngineTypes.state = _menhir_s;
12136 MenhirLib.EngineTypes.semv = _1;
12137 MenhirLib.EngineTypes.startp = _startpos__1_;
12138 MenhirLib.EngineTypes.endp = _endpos__1_;
12139 MenhirLib.EngineTypes.next = _menhir_stack;
12140 };
12141 } = _menhir_stack in
12142 let _2 : 'tv_fninfo_nt = Obj.magic _2 in
12143 let _1 : (
12144 # 95 "parser_cocci_menhir.mly"
12145 (Data.clt)
12146 # 12120 "parser_cocci_menhir.ml"
12147 ) = Obj.magic _1 in
12148 let _startpos = _startpos__1_ in
12149 let _endpos = _endpos__2_ in
12150 let _v : 'tv_fninfo_nt =
12151 # 1045 "parser_cocci_menhir.mly"
12152 ( try
12153 let _ = List.find (function Ast0.FInline(_) -> true | _ -> false) _2 in
12154 raise (Semantic_cocci.Semantic "duplicate inline")
12155 with Not_found -> (Ast0.FInline(P.clt2mcode "inline" _1))::_2 )
12156 # 12130 "parser_cocci_menhir.ml"
12157 in
12158 _menhir_env.MenhirLib.EngineTypes.stack <- {
12159 MenhirLib.EngineTypes.state = _menhir_s;
12160 MenhirLib.EngineTypes.semv = Obj.repr _v;
12161 MenhirLib.EngineTypes.startp = _startpos;
12162 MenhirLib.EngineTypes.endp = _endpos;
12163 MenhirLib.EngineTypes.next = _menhir_stack;
12164 });
12165 (fun _menhir_env ->
12166 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12167 let {
12168 MenhirLib.EngineTypes.semv = _2;
12169 MenhirLib.EngineTypes.startp = _startpos__2_;
12170 MenhirLib.EngineTypes.endp = _endpos__2_;
12171 MenhirLib.EngineTypes.next = {
12172 MenhirLib.EngineTypes.state = _menhir_s;
12173 MenhirLib.EngineTypes.semv = _1;
12174 MenhirLib.EngineTypes.startp = _startpos__1_;
12175 MenhirLib.EngineTypes.endp = _endpos__1_;
12176 MenhirLib.EngineTypes.next = _menhir_stack;
12177 };
12178 } = _menhir_stack in
12179 let _2 : 'tv_fninfo_nt = Obj.magic _2 in
12180 let _1 : (
12181 # 97 "parser_cocci_menhir.mly"
12182 (string * Data.clt)
12183 # 12157 "parser_cocci_menhir.ml"
12184 ) = Obj.magic _1 in
12185 let _startpos = _startpos__1_ in
12186 let _endpos = _endpos__2_ in
12187 let _v : 'tv_fninfo_nt =
12188 # 1050 "parser_cocci_menhir.mly"
12189 ( try
12190 let _ = List.find (function Ast0.FAttr(_) -> true | _ -> false) _2 in
12191 raise (Semantic_cocci.Semantic "duplicate init")
12192 with Not_found -> (Ast0.FAttr(P.id2mcode _1))::_2 )
12193 # 12167 "parser_cocci_menhir.ml"
12194 in
12195 _menhir_env.MenhirLib.EngineTypes.stack <- {
12196 MenhirLib.EngineTypes.state = _menhir_s;
12197 MenhirLib.EngineTypes.semv = Obj.repr _v;
12198 MenhirLib.EngineTypes.startp = _startpos;
12199 MenhirLib.EngineTypes.endp = _endpos;
12200 MenhirLib.EngineTypes.next = _menhir_stack;
12201 });
12202 (fun _menhir_env ->
12203 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12204 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
12205 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
12206 let _endpos = _startpos in
12207 let _v : 'tv_fun_after_dots =
12208 # 2274 "parser_cocci_menhir.mly"
12209 ([])
12210 # 12184 "parser_cocci_menhir.ml"
12211 in
12212 _menhir_env.MenhirLib.EngineTypes.stack <- {
12213 MenhirLib.EngineTypes.state = _menhir_s;
12214 MenhirLib.EngineTypes.semv = Obj.repr _v;
12215 MenhirLib.EngineTypes.startp = _startpos;
12216 MenhirLib.EngineTypes.endp = _endpos;
12217 MenhirLib.EngineTypes.next = _menhir_stack;
12218 });
12219 (fun _menhir_env ->
12220 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12221 let {
12222 MenhirLib.EngineTypes.semv = _2;
12223 MenhirLib.EngineTypes.startp = _startpos__2_;
12224 MenhirLib.EngineTypes.endp = _endpos__2_;
12225 MenhirLib.EngineTypes.next = {
12226 MenhirLib.EngineTypes.state = _menhir_s;
12227 MenhirLib.EngineTypes.startp = _startpos__1_;
12228 MenhirLib.EngineTypes.endp = _endpos__1_;
12229 MenhirLib.EngineTypes.next = _menhir_stack;
12230 };
12231 } = _menhir_stack in
12232 let _2 : 'tv_fun_after_exp = Obj.magic _2 in
12233 let _startpos = _startpos__1_ in
12234 let _endpos = _endpos__2_ in
12235 let _v : 'tv_fun_after_dots =
12236 # 2275 "parser_cocci_menhir.mly"
12237 (_2)
12238 # 12212 "parser_cocci_menhir.ml"
12239 in
12240 _menhir_env.MenhirLib.EngineTypes.stack <- {
12241 MenhirLib.EngineTypes.state = _menhir_s;
12242 MenhirLib.EngineTypes.semv = Obj.repr _v;
12243 MenhirLib.EngineTypes.startp = _startpos;
12244 MenhirLib.EngineTypes.endp = _endpos;
12245 MenhirLib.EngineTypes.next = _menhir_stack;
12246 });
12247 (fun _menhir_env ->
12248 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12249 let {
12250 MenhirLib.EngineTypes.semv = _2;
12251 MenhirLib.EngineTypes.startp = _startpos__2_;
12252 MenhirLib.EngineTypes.endp = _endpos__2_;
12253 MenhirLib.EngineTypes.next = {
12254 MenhirLib.EngineTypes.state = _menhir_s;
12255 MenhirLib.EngineTypes.semv = _1;
12256 MenhirLib.EngineTypes.startp = _startpos__1_;
12257 MenhirLib.EngineTypes.endp = _endpos__1_;
12258 MenhirLib.EngineTypes.next = _menhir_stack;
12259 };
12260 } = _menhir_stack in
12261 let _2 : 'tv_fun_after_exp = Obj.magic _2 in
12262 let _1 : 'tv_expr = Obj.magic _1 in
12263 let _startpos = _startpos__1_ in
12264 let _endpos = _endpos__2_ in
12265 let _v : 'tv_fun_after_dots =
12266 # 2276 "parser_cocci_menhir.mly"
12267 (Ast0.wrap(Ast0.Exp(_1))::_2)
12268 # 12242 "parser_cocci_menhir.ml"
12269 in
12270 _menhir_env.MenhirLib.EngineTypes.stack <- {
12271 MenhirLib.EngineTypes.state = _menhir_s;
12272 MenhirLib.EngineTypes.semv = Obj.repr _v;
12273 MenhirLib.EngineTypes.startp = _startpos;
12274 MenhirLib.EngineTypes.endp = _endpos;
12275 MenhirLib.EngineTypes.next = _menhir_stack;
12276 });
12277 (fun _menhir_env ->
12278 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12279 let {
12280 MenhirLib.EngineTypes.semv = _2;
12281 MenhirLib.EngineTypes.startp = _startpos__2_;
12282 MenhirLib.EngineTypes.endp = _endpos__2_;
12283 MenhirLib.EngineTypes.next = {
12284 MenhirLib.EngineTypes.state = _menhir_s;
12285 MenhirLib.EngineTypes.semv = _1;
12286 MenhirLib.EngineTypes.startp = _startpos__1_;
12287 MenhirLib.EngineTypes.endp = _endpos__1_;
12288 MenhirLib.EngineTypes.next = _menhir_stack;
12289 };
12290 } = _menhir_stack in
12291 let _2 : 'tv_fun_after_stm = Obj.magic _2 in
12292 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
12293 let _startpos = _startpos__1_ in
12294 let _endpos = _endpos__2_ in
12295 let _v : 'tv_fun_after_dots =
12296 # 2277 "parser_cocci_menhir.mly"
12297 (_1@_2)
12298 # 12272 "parser_cocci_menhir.ml"
12299 in
12300 _menhir_env.MenhirLib.EngineTypes.stack <- {
12301 MenhirLib.EngineTypes.state = _menhir_s;
12302 MenhirLib.EngineTypes.semv = Obj.repr _v;
12303 MenhirLib.EngineTypes.startp = _startpos;
12304 MenhirLib.EngineTypes.endp = _endpos;
12305 MenhirLib.EngineTypes.next = _menhir_stack;
12306 });
12307 (fun _menhir_env ->
12308 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12309 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
12310 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
12311 let _endpos = _startpos in
12312 let _v : 'tv_fun_after_dots_or =
12313 # 2284 "parser_cocci_menhir.mly"
12314 ([])
12315 # 12289 "parser_cocci_menhir.ml"
12316 in
12317 _menhir_env.MenhirLib.EngineTypes.stack <- {
12318 MenhirLib.EngineTypes.state = _menhir_s;
12319 MenhirLib.EngineTypes.semv = Obj.repr _v;
12320 MenhirLib.EngineTypes.startp = _startpos;
12321 MenhirLib.EngineTypes.endp = _endpos;
12322 MenhirLib.EngineTypes.next = _menhir_stack;
12323 });
12324 (fun _menhir_env ->
12325 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12326 let {
12327 MenhirLib.EngineTypes.semv = _2;
12328 MenhirLib.EngineTypes.startp = _startpos__2_;
12329 MenhirLib.EngineTypes.endp = _endpos__2_;
12330 MenhirLib.EngineTypes.next = {
12331 MenhirLib.EngineTypes.state = _menhir_s;
12332 MenhirLib.EngineTypes.startp = _startpos__1_;
12333 MenhirLib.EngineTypes.endp = _endpos__1_;
12334 MenhirLib.EngineTypes.next = _menhir_stack;
12335 };
12336 } = _menhir_stack in
12337 let _2 : 'tv_fun_after_exp_or = Obj.magic _2 in
12338 let _startpos = _startpos__1_ in
12339 let _endpos = _endpos__2_ in
12340 let _v : 'tv_fun_after_dots_or =
12341 # 2285 "parser_cocci_menhir.mly"
12342 (_2)
12343 # 12317 "parser_cocci_menhir.ml"
12344 in
12345 _menhir_env.MenhirLib.EngineTypes.stack <- {
12346 MenhirLib.EngineTypes.state = _menhir_s;
12347 MenhirLib.EngineTypes.semv = Obj.repr _v;
12348 MenhirLib.EngineTypes.startp = _startpos;
12349 MenhirLib.EngineTypes.endp = _endpos;
12350 MenhirLib.EngineTypes.next = _menhir_stack;
12351 });
12352 (fun _menhir_env ->
12353 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12354 let {
12355 MenhirLib.EngineTypes.semv = _2;
12356 MenhirLib.EngineTypes.startp = _startpos__2_;
12357 MenhirLib.EngineTypes.endp = _endpos__2_;
12358 MenhirLib.EngineTypes.next = {
12359 MenhirLib.EngineTypes.state = _menhir_s;
12360 MenhirLib.EngineTypes.semv = _1;
12361 MenhirLib.EngineTypes.startp = _startpos__1_;
12362 MenhirLib.EngineTypes.endp = _endpos__1_;
12363 MenhirLib.EngineTypes.next = _menhir_stack;
12364 };
12365 } = _menhir_stack in
12366 let _2 : 'tv_fun_after_exp_or = Obj.magic _2 in
12367 let _1 : 'tv_expr = Obj.magic _1 in
12368 let _startpos = _startpos__1_ in
12369 let _endpos = _endpos__2_ in
12370 let _v : 'tv_fun_after_dots_or =
12371 # 2286 "parser_cocci_menhir.mly"
12372 (Ast0.wrap(Ast0.Exp(_1))::_2)
12373 # 12347 "parser_cocci_menhir.ml"
12374 in
12375 _menhir_env.MenhirLib.EngineTypes.stack <- {
12376 MenhirLib.EngineTypes.state = _menhir_s;
12377 MenhirLib.EngineTypes.semv = Obj.repr _v;
12378 MenhirLib.EngineTypes.startp = _startpos;
12379 MenhirLib.EngineTypes.endp = _endpos;
12380 MenhirLib.EngineTypes.next = _menhir_stack;
12381 });
12382 (fun _menhir_env ->
12383 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12384 let {
12385 MenhirLib.EngineTypes.semv = _2;
12386 MenhirLib.EngineTypes.startp = _startpos__2_;
12387 MenhirLib.EngineTypes.endp = _endpos__2_;
12388 MenhirLib.EngineTypes.next = {
12389 MenhirLib.EngineTypes.state = _menhir_s;
12390 MenhirLib.EngineTypes.semv = _1;
12391 MenhirLib.EngineTypes.startp = _startpos__1_;
12392 MenhirLib.EngineTypes.endp = _endpos__1_;
12393 MenhirLib.EngineTypes.next = _menhir_stack;
12394 };
12395 } = _menhir_stack in
12396 let _2 : 'tv_fun_after_stm = Obj.magic _2 in
12397 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
12398 let _startpos = _startpos__1_ in
12399 let _endpos = _endpos__2_ in
12400 let _v : 'tv_fun_after_dots_or =
12401 # 2287 "parser_cocci_menhir.mly"
12402 (_1@_2)
12403 # 12377 "parser_cocci_menhir.ml"
12404 in
12405 _menhir_env.MenhirLib.EngineTypes.stack <- {
12406 MenhirLib.EngineTypes.state = _menhir_s;
12407 MenhirLib.EngineTypes.semv = Obj.repr _v;
12408 MenhirLib.EngineTypes.startp = _startpos;
12409 MenhirLib.EngineTypes.endp = _endpos;
12410 MenhirLib.EngineTypes.next = _menhir_stack;
12411 });
12412 (fun _menhir_env ->
12413 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12414 let {
12415 MenhirLib.EngineTypes.semv = _2;
12416 MenhirLib.EngineTypes.startp = _startpos__2_;
12417 MenhirLib.EngineTypes.endp = _endpos__2_;
12418 MenhirLib.EngineTypes.next = {
12419 MenhirLib.EngineTypes.state = _menhir_s;
12420 MenhirLib.EngineTypes.semv = _1;
12421 MenhirLib.EngineTypes.startp = _startpos__1_;
12422 MenhirLib.EngineTypes.endp = _endpos__1_;
12423 MenhirLib.EngineTypes.next = _menhir_stack;
12424 };
12425 } = _menhir_stack in
12426 let _2 : 'tv_fun_after_dots = Obj.magic _2 in
12427 let _1 : 'tv_stm_dots = Obj.magic _1 in
12428 let _startpos = _startpos__1_ in
12429 let _endpos = _endpos__2_ in
12430 let _v : 'tv_fun_after_exp =
12431 # 2280 "parser_cocci_menhir.mly"
12432 (_1::_2)
12433 # 12407 "parser_cocci_menhir.ml"
12434 in
12435 _menhir_env.MenhirLib.EngineTypes.stack <- {
12436 MenhirLib.EngineTypes.state = _menhir_s;
12437 MenhirLib.EngineTypes.semv = Obj.repr _v;
12438 MenhirLib.EngineTypes.startp = _startpos;
12439 MenhirLib.EngineTypes.endp = _endpos;
12440 MenhirLib.EngineTypes.next = _menhir_stack;
12441 });
12442 (fun _menhir_env ->
12443 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12444 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
12445 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
12446 let _endpos = _startpos in
12447 let _v : 'tv_fun_after_exp_or =
12448 # 2290 "parser_cocci_menhir.mly"
12449 ([])
12450 # 12424 "parser_cocci_menhir.ml"
12451 in
12452 _menhir_env.MenhirLib.EngineTypes.stack <- {
12453 MenhirLib.EngineTypes.state = _menhir_s;
12454 MenhirLib.EngineTypes.semv = Obj.repr _v;
12455 MenhirLib.EngineTypes.startp = _startpos;
12456 MenhirLib.EngineTypes.endp = _endpos;
12457 MenhirLib.EngineTypes.next = _menhir_stack;
12458 });
12459 (fun _menhir_env ->
12460 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12461 let {
12462 MenhirLib.EngineTypes.semv = _2;
12463 MenhirLib.EngineTypes.startp = _startpos__2_;
12464 MenhirLib.EngineTypes.endp = _endpos__2_;
12465 MenhirLib.EngineTypes.next = {
12466 MenhirLib.EngineTypes.state = _menhir_s;
12467 MenhirLib.EngineTypes.semv = _1;
12468 MenhirLib.EngineTypes.startp = _startpos__1_;
12469 MenhirLib.EngineTypes.endp = _endpos__1_;
12470 MenhirLib.EngineTypes.next = _menhir_stack;
12471 };
12472 } = _menhir_stack in
12473 let _2 : 'tv_fun_after_dots = Obj.magic _2 in
12474 let _1 : 'tv_stm_dots = Obj.magic _1 in
12475 let _startpos = _startpos__1_ in
12476 let _endpos = _endpos__2_ in
12477 let _v : 'tv_fun_after_exp_or =
12478 # 2291 "parser_cocci_menhir.mly"
12479 (_1::_2)
12480 # 12454 "parser_cocci_menhir.ml"
12481 in
12482 _menhir_env.MenhirLib.EngineTypes.stack <- {
12483 MenhirLib.EngineTypes.state = _menhir_s;
12484 MenhirLib.EngineTypes.semv = Obj.repr _v;
12485 MenhirLib.EngineTypes.startp = _startpos;
12486 MenhirLib.EngineTypes.endp = _endpos;
12487 MenhirLib.EngineTypes.next = _menhir_stack;
12488 });
12489 (fun _menhir_env ->
12490 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12491 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
12492 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
12493 let _endpos = _startpos in
12494 let _v : 'tv_fun_after_stm =
12495 # 2269 "parser_cocci_menhir.mly"
12496 ([])
12497 # 12471 "parser_cocci_menhir.ml"
12498 in
12499 _menhir_env.MenhirLib.EngineTypes.stack <- {
12500 MenhirLib.EngineTypes.state = _menhir_s;
12501 MenhirLib.EngineTypes.semv = Obj.repr _v;
12502 MenhirLib.EngineTypes.startp = _startpos;
12503 MenhirLib.EngineTypes.endp = _endpos;
12504 MenhirLib.EngineTypes.next = _menhir_stack;
12505 });
12506 (fun _menhir_env ->
12507 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12508 let {
12509 MenhirLib.EngineTypes.semv = _2;
12510 MenhirLib.EngineTypes.startp = _startpos__2_;
12511 MenhirLib.EngineTypes.endp = _endpos__2_;
12512 MenhirLib.EngineTypes.next = {
12513 MenhirLib.EngineTypes.state = _menhir_s;
12514 MenhirLib.EngineTypes.semv = _1;
12515 MenhirLib.EngineTypes.startp = _startpos__1_;
12516 MenhirLib.EngineTypes.endp = _endpos__1_;
12517 MenhirLib.EngineTypes.next = _menhir_stack;
12518 };
12519 } = _menhir_stack in
12520 let _2 : 'tv_fun_after_dots = Obj.magic _2 in
12521 let _1 : 'tv_stm_dots = Obj.magic _1 in
12522 let _startpos = _startpos__1_ in
12523 let _endpos = _endpos__2_ in
12524 let _v : 'tv_fun_after_stm =
12525 # 2270 "parser_cocci_menhir.mly"
12526 (_1::_2)
12527 # 12501 "parser_cocci_menhir.ml"
12528 in
12529 _menhir_env.MenhirLib.EngineTypes.stack <- {
12530 MenhirLib.EngineTypes.state = _menhir_s;
12531 MenhirLib.EngineTypes.semv = Obj.repr _v;
12532 MenhirLib.EngineTypes.startp = _startpos;
12533 MenhirLib.EngineTypes.endp = _endpos;
12534 MenhirLib.EngineTypes.next = _menhir_stack;
12535 });
12536 (fun _menhir_env ->
12537 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12538 let {
12539 MenhirLib.EngineTypes.semv = _2;
12540 MenhirLib.EngineTypes.startp = _startpos__2_;
12541 MenhirLib.EngineTypes.endp = _endpos__2_;
12542 MenhirLib.EngineTypes.next = {
12543 MenhirLib.EngineTypes.state = _menhir_s;
12544 MenhirLib.EngineTypes.semv = _1;
12545 MenhirLib.EngineTypes.startp = _startpos__1_;
12546 MenhirLib.EngineTypes.endp = _endpos__1_;
12547 MenhirLib.EngineTypes.next = _menhir_stack;
12548 };
12549 } = _menhir_stack in
12550 let _2 : 'tv_fun_after_stm = Obj.magic _2 in
12551 let _1 : 'tv_decl_statement = Obj.magic _1 in
12552 let _startpos = _startpos__1_ in
12553 let _endpos = _endpos__2_ in
12554 let _v : 'tv_fun_after_stm =
12555 # 2271 "parser_cocci_menhir.mly"
12556 (_1@_2)
12557 # 12531 "parser_cocci_menhir.ml"
12558 in
12559 _menhir_env.MenhirLib.EngineTypes.stack <- {
12560 MenhirLib.EngineTypes.state = _menhir_s;
12561 MenhirLib.EngineTypes.semv = Obj.repr _v;
12562 MenhirLib.EngineTypes.startp = _startpos;
12563 MenhirLib.EngineTypes.endp = _endpos;
12564 MenhirLib.EngineTypes.next = _menhir_stack;
12565 });
12566 (fun _menhir_env ->
12567 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12568 let {
12569 MenhirLib.EngineTypes.state = _menhir_s;
12570 MenhirLib.EngineTypes.semv = _1;
12571 MenhirLib.EngineTypes.startp = _startpos__1_;
12572 MenhirLib.EngineTypes.endp = _endpos__1_;
12573 MenhirLib.EngineTypes.next = _menhir_stack;
12574 } = _menhir_stack in
12575 let _1 : 'tv_fun_after_stm = Obj.magic _1 in
12576 let _startpos = _startpos__1_ in
12577 let _endpos = _endpos__1_ in
12578 let _v : 'tv_fun_start =
12579 # 2266 "parser_cocci_menhir.mly"
12580 ( Ast0.wrap(Ast0.DOTS(_1)) )
12581 # 12555 "parser_cocci_menhir.ml"
12582 in
12583 _menhir_env.MenhirLib.EngineTypes.stack <- {
12584 MenhirLib.EngineTypes.state = _menhir_s;
12585 MenhirLib.EngineTypes.semv = Obj.repr _v;
12586 MenhirLib.EngineTypes.startp = _startpos;
12587 MenhirLib.EngineTypes.endp = _endpos;
12588 MenhirLib.EngineTypes.next = _menhir_stack;
12589 });
12590 (fun _menhir_env ->
12591 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12592 let {
12593 MenhirLib.EngineTypes.state = _menhir_s;
12594 MenhirLib.EngineTypes.semv = _1;
12595 MenhirLib.EngineTypes.startp = _startpos__1_;
12596 MenhirLib.EngineTypes.endp = _endpos__1_;
12597 MenhirLib.EngineTypes.next = _menhir_stack;
12598 } = _menhir_stack in
12599 let _1 : 'tv_ident = Obj.magic _1 in
12600 let _startpos = _startpos__1_ in
12601 let _endpos = _endpos__1_ in
12602 let _v : 'tv_func_ident =
12603 # 2005 "parser_cocci_menhir.mly"
12604 ( _1 )
12605 # 12579 "parser_cocci_menhir.ml"
12606 in
12607 _menhir_env.MenhirLib.EngineTypes.stack <- {
12608 MenhirLib.EngineTypes.state = _menhir_s;
12609 MenhirLib.EngineTypes.semv = Obj.repr _v;
12610 MenhirLib.EngineTypes.startp = _startpos;
12611 MenhirLib.EngineTypes.endp = _endpos;
12612 MenhirLib.EngineTypes.next = _menhir_stack;
12613 });
12614 (fun _menhir_env ->
12615 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12616 let {
12617 MenhirLib.EngineTypes.state = _menhir_s;
12618 MenhirLib.EngineTypes.semv = _1;
12619 MenhirLib.EngineTypes.startp = _startpos__1_;
12620 MenhirLib.EngineTypes.endp = _endpos__1_;
12621 MenhirLib.EngineTypes.next = _menhir_stack;
12622 } = _menhir_stack in
12623 let _1 : (
12624 # 105 "parser_cocci_menhir.mly"
12625 (Parse_aux.idinfo)
12626 # 12600 "parser_cocci_menhir.ml"
12627 ) = Obj.magic _1 in
12628 let _startpos = _startpos__1_ in
12629 let _endpos = _endpos__1_ in
12630 let _v : 'tv_func_ident =
12631 # 2007 "parser_cocci_menhir.mly"
12632 ( let (nm,constraints,pure,clt) = _1 in
12633 Ast0.wrap(Ast0.MetaFunc(P.clt2mcode nm clt,constraints,pure)) )
12634 # 12608 "parser_cocci_menhir.ml"
12635 in
12636 _menhir_env.MenhirLib.EngineTypes.stack <- {
12637 MenhirLib.EngineTypes.state = _menhir_s;
12638 MenhirLib.EngineTypes.semv = Obj.repr _v;
12639 MenhirLib.EngineTypes.startp = _startpos;
12640 MenhirLib.EngineTypes.endp = _endpos;
12641 MenhirLib.EngineTypes.next = _menhir_stack;
12642 });
12643 (fun _menhir_env ->
12644 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12645 let {
12646 MenhirLib.EngineTypes.state = _menhir_s;
12647 MenhirLib.EngineTypes.semv = _1;
12648 MenhirLib.EngineTypes.startp = _startpos__1_;
12649 MenhirLib.EngineTypes.endp = _endpos__1_;
12650 MenhirLib.EngineTypes.next = _menhir_stack;
12651 } = _menhir_stack in
12652 let _1 : (
12653 # 105 "parser_cocci_menhir.mly"
12654 (Parse_aux.idinfo)
12655 # 12629 "parser_cocci_menhir.ml"
12656 ) = Obj.magic _1 in
12657 let _startpos = _startpos__1_ in
12658 let _endpos = _endpos__1_ in
12659 let _v : 'tv_func_ident =
12660 # 2010 "parser_cocci_menhir.mly"
12661 ( let (nm,constraints,pure,clt) = _1 in
12662 Ast0.wrap
12663 (Ast0.MetaLocalFunc(P.clt2mcode nm clt,constraints,pure)) )
12664 # 12638 "parser_cocci_menhir.ml"
12665 in
12666 _menhir_env.MenhirLib.EngineTypes.stack <- {
12667 MenhirLib.EngineTypes.state = _menhir_s;
12668 MenhirLib.EngineTypes.semv = Obj.repr _v;
12669 MenhirLib.EngineTypes.startp = _startpos;
12670 MenhirLib.EngineTypes.endp = _endpos;
12671 MenhirLib.EngineTypes.next = _menhir_stack;
12672 });
12673 (fun _menhir_env ->
12674 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12675 let {
12676 MenhirLib.EngineTypes.semv = rb;
12677 MenhirLib.EngineTypes.startp = _startpos_rb_;
12678 MenhirLib.EngineTypes.endp = _endpos_rb_;
12679 MenhirLib.EngineTypes.next = {
12680 MenhirLib.EngineTypes.semv = b;
12681 MenhirLib.EngineTypes.startp = _startpos_b_;
12682 MenhirLib.EngineTypes.endp = _endpos_b_;
12683 MenhirLib.EngineTypes.next = {
12684 MenhirLib.EngineTypes.semv = lb;
12685 MenhirLib.EngineTypes.startp = _startpos_lb_;
12686 MenhirLib.EngineTypes.endp = _endpos_lb_;
12687 MenhirLib.EngineTypes.next = {
12688 MenhirLib.EngineTypes.semv = rp;
12689 MenhirLib.EngineTypes.startp = _startpos_rp_;
12690 MenhirLib.EngineTypes.endp = _endpos_rp_;
12691 MenhirLib.EngineTypes.next = {
12692 MenhirLib.EngineTypes.semv = d;
12693 MenhirLib.EngineTypes.startp = _startpos_d_;
12694 MenhirLib.EngineTypes.endp = _endpos_d_;
12695 MenhirLib.EngineTypes.next = {
12696 MenhirLib.EngineTypes.semv = lp;
12697 MenhirLib.EngineTypes.startp = _startpos_lp_;
12698 MenhirLib.EngineTypes.endp = _endpos_lp_;
12699 MenhirLib.EngineTypes.next = {
12700 MenhirLib.EngineTypes.semv = i;
12701 MenhirLib.EngineTypes.startp = _startpos_i_;
12702 MenhirLib.EngineTypes.endp = _endpos_i_;
12703 MenhirLib.EngineTypes.next = {
12704 MenhirLib.EngineTypes.startp = _startpos__2_;
12705 MenhirLib.EngineTypes.endp = _endpos__2_;
12706 MenhirLib.EngineTypes.next = {
12707 MenhirLib.EngineTypes.state = _menhir_s;
12708 MenhirLib.EngineTypes.semv = f;
12709 MenhirLib.EngineTypes.startp = _startpos_f_;
12710 MenhirLib.EngineTypes.endp = _endpos_f_;
12711 MenhirLib.EngineTypes.next = _menhir_stack;
12712 };
12713 };
12714 };
12715 };
12716 };
12717 };
12718 };
12719 };
12720 } = _menhir_stack in
12721 let rb : (
12722 # 147 "parser_cocci_menhir.mly"
12723 (Data.clt)
12724 # 12698 "parser_cocci_menhir.ml"
12725 ) = Obj.magic rb in
12726 let b : 'tv_fun_start = Obj.magic b in
12727 let lb : (
12728 # 147 "parser_cocci_menhir.mly"
12729 (Data.clt)
12730 # 12704 "parser_cocci_menhir.ml"
12731 ) = Obj.magic lb in
12732 let rp : (
12733 # 123 "parser_cocci_menhir.mly"
12734 (Data.clt)
12735 # 12709 "parser_cocci_menhir.ml"
12736 ) = Obj.magic rp in
12737 let d : 'tv_decl_list_decl_ = Obj.magic d in
12738 let lp : (
12739 # 122 "parser_cocci_menhir.mly"
12740 (Data.clt)
12741 # 12715 "parser_cocci_menhir.ml"
12742 ) = Obj.magic lp in
12743 let i : 'tv_fn_ident = Obj.magic i in
12744 let f : 'tv_fninfo = Obj.magic f in
12745 let _startpos = _startpos_f_ in
12746 let _endpos = _endpos_rb_ in
12747 let _v : 'tv_fundecl =
12748 # 1008 "parser_cocci_menhir.mly"
12749 ( P.verify_parameter_declarations (Ast0.undots d);
12750 Ast0.wrap(Ast0.FunDecl((Ast0.default_info(),Ast0.context_befaft()),
12751 f, i,
12752 P.clt2mcode "(" lp, d,
12753 P.clt2mcode ")" rp,
12754 P.clt2mcode "{" lb, b,
12755 P.clt2mcode "}" rb)) )
12756 # 12730 "parser_cocci_menhir.ml"
12757 in
12758 _menhir_env.MenhirLib.EngineTypes.stack <- {
12759 MenhirLib.EngineTypes.state = _menhir_s;
12760 MenhirLib.EngineTypes.semv = Obj.repr _v;
12761 MenhirLib.EngineTypes.startp = _startpos;
12762 MenhirLib.EngineTypes.endp = _endpos;
12763 MenhirLib.EngineTypes.next = _menhir_stack;
12764 });
12765 (fun _menhir_env ->
12766 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12767 let {
12768 MenhirLib.EngineTypes.semv = pt;
12769 MenhirLib.EngineTypes.startp = _startpos_pt_;
12770 MenhirLib.EngineTypes.endp = _endpos_pt_;
12771 MenhirLib.EngineTypes.next = {
12772 MenhirLib.EngineTypes.semv = rp;
12773 MenhirLib.EngineTypes.startp = _startpos_rp_;
12774 MenhirLib.EngineTypes.endp = _endpos_rp_;
12775 MenhirLib.EngineTypes.next = {
12776 MenhirLib.EngineTypes.semv = d;
12777 MenhirLib.EngineTypes.startp = _startpos_d_;
12778 MenhirLib.EngineTypes.endp = _endpos_d_;
12779 MenhirLib.EngineTypes.next = {
12780 MenhirLib.EngineTypes.semv = lp;
12781 MenhirLib.EngineTypes.startp = _startpos_lp_;
12782 MenhirLib.EngineTypes.endp = _endpos_lp_;
12783 MenhirLib.EngineTypes.next = {
12784 MenhirLib.EngineTypes.semv = id;
12785 MenhirLib.EngineTypes.startp = _startpos_id_;
12786 MenhirLib.EngineTypes.endp = _endpos_id_;
12787 MenhirLib.EngineTypes.next = {
12788 MenhirLib.EngineTypes.state = _menhir_s;
12789 MenhirLib.EngineTypes.semv = t;
12790 MenhirLib.EngineTypes.startp = _startpos_t_;
12791 MenhirLib.EngineTypes.endp = _endpos_t_;
12792 MenhirLib.EngineTypes.next = _menhir_stack;
12793 };
12794 };
12795 };
12796 };
12797 };
12798 } = _menhir_stack in
12799 let pt : (
12800 # 153 "parser_cocci_menhir.mly"
12801 (Data.clt)
12802 # 12776 "parser_cocci_menhir.ml"
12803 ) = Obj.magic pt in
12804 let rp : (
12805 # 123 "parser_cocci_menhir.mly"
12806 (Data.clt)
12807 # 12781 "parser_cocci_menhir.ml"
12808 ) = Obj.magic rp in
12809 let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
12810 let lp : (
12811 # 122 "parser_cocci_menhir.mly"
12812 (Data.clt)
12813 # 12787 "parser_cocci_menhir.ml"
12814 ) = Obj.magic lp in
12815 let id : 'tv_fn_ident = Obj.magic id in
12816 let t : 'tv_ctype = Obj.magic t in
12817 let _startpos = _startpos_t_ in
12818 let _endpos = _endpos_pt_ in
12819 let _v : 'tv_funproto = let s =
12820
12821 # 39 "standard.mly"
12822 ( None )
12823 # 12797 "parser_cocci_menhir.ml"
12824
12825 in
12826
12827 # 996 "parser_cocci_menhir.mly"
12828 ( Ast0.wrap
12829 (Ast0.UnInit
12830 (s,
12831 Ast0.wrap
12832 (Ast0.FunctionType(Some t,
12833 P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
12834 id, P.clt2mcode ";" pt)) )
12835 # 12809 "parser_cocci_menhir.ml"
12836 in
12837 _menhir_env.MenhirLib.EngineTypes.stack <- {
12838 MenhirLib.EngineTypes.state = _menhir_s;
12839 MenhirLib.EngineTypes.semv = Obj.repr _v;
12840 MenhirLib.EngineTypes.startp = _startpos;
12841 MenhirLib.EngineTypes.endp = _endpos;
12842 MenhirLib.EngineTypes.next = _menhir_stack;
12843 });
12844 (fun _menhir_env ->
12845 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12846 let {
12847 MenhirLib.EngineTypes.semv = pt;
12848 MenhirLib.EngineTypes.startp = _startpos_pt_;
12849 MenhirLib.EngineTypes.endp = _endpos_pt_;
12850 MenhirLib.EngineTypes.next = {
12851 MenhirLib.EngineTypes.semv = rp;
12852 MenhirLib.EngineTypes.startp = _startpos_rp_;
12853 MenhirLib.EngineTypes.endp = _endpos_rp_;
12854 MenhirLib.EngineTypes.next = {
12855 MenhirLib.EngineTypes.semv = d;
12856 MenhirLib.EngineTypes.startp = _startpos_d_;
12857 MenhirLib.EngineTypes.endp = _endpos_d_;
12858 MenhirLib.EngineTypes.next = {
12859 MenhirLib.EngineTypes.semv = lp;
12860 MenhirLib.EngineTypes.startp = _startpos_lp_;
12861 MenhirLib.EngineTypes.endp = _endpos_lp_;
12862 MenhirLib.EngineTypes.next = {
12863 MenhirLib.EngineTypes.semv = id;
12864 MenhirLib.EngineTypes.startp = _startpos_id_;
12865 MenhirLib.EngineTypes.endp = _endpos_id_;
12866 MenhirLib.EngineTypes.next = {
12867 MenhirLib.EngineTypes.semv = t;
12868 MenhirLib.EngineTypes.startp = _startpos_t_;
12869 MenhirLib.EngineTypes.endp = _endpos_t_;
12870 MenhirLib.EngineTypes.next = {
12871 MenhirLib.EngineTypes.state = _menhir_s;
12872 MenhirLib.EngineTypes.semv = x0;
12873 MenhirLib.EngineTypes.startp = _startpos_x0_;
12874 MenhirLib.EngineTypes.endp = _endpos_x0_;
12875 MenhirLib.EngineTypes.next = _menhir_stack;
12876 };
12877 };
12878 };
12879 };
12880 };
12881 };
12882 } = _menhir_stack in
12883 let pt : (
12884 # 153 "parser_cocci_menhir.mly"
12885 (Data.clt)
12886 # 12860 "parser_cocci_menhir.ml"
12887 ) = Obj.magic pt in
12888 let rp : (
12889 # 123 "parser_cocci_menhir.mly"
12890 (Data.clt)
12891 # 12865 "parser_cocci_menhir.ml"
12892 ) = Obj.magic rp in
12893 let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
12894 let lp : (
12895 # 122 "parser_cocci_menhir.mly"
12896 (Data.clt)
12897 # 12871 "parser_cocci_menhir.ml"
12898 ) = Obj.magic lp in
12899 let id : 'tv_fn_ident = Obj.magic id in
12900 let t : 'tv_ctype = Obj.magic t in
12901 let x0 : 'tv_storage = Obj.magic x0 in
12902 let _startpos = _startpos_x0_ in
12903 let _endpos = _endpos_pt_ in
12904 let _v : 'tv_funproto = let s =
12905 let x = x0 in
12906
12907 # 41 "standard.mly"
12908 ( Some x )
12909 # 12883 "parser_cocci_menhir.ml"
12910
12911 in
12912
12913 # 996 "parser_cocci_menhir.mly"
12914 ( Ast0.wrap
12915 (Ast0.UnInit
12916 (s,
12917 Ast0.wrap
12918 (Ast0.FunctionType(Some t,
12919 P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
12920 id, P.clt2mcode ";" pt)) )
12921 # 12895 "parser_cocci_menhir.ml"
12922 in
12923 _menhir_env.MenhirLib.EngineTypes.stack <- {
12924 MenhirLib.EngineTypes.state = _menhir_s;
12925 MenhirLib.EngineTypes.semv = Obj.repr _v;
12926 MenhirLib.EngineTypes.startp = _startpos;
12927 MenhirLib.EngineTypes.endp = _endpos;
12928 MenhirLib.EngineTypes.next = _menhir_stack;
12929 });
12930 (fun _menhir_env ->
12931 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12932 let {
12933 MenhirLib.EngineTypes.state = _menhir_s;
12934 MenhirLib.EngineTypes.semv = _1;
12935 MenhirLib.EngineTypes.startp = _startpos__1_;
12936 MenhirLib.EngineTypes.endp = _endpos__1_;
12937 MenhirLib.EngineTypes.next = _menhir_stack;
12938 } = _menhir_stack in
12939 let _1 : 'tv_pure_ident = Obj.magic _1 in
12940 let _startpos = _startpos__1_ in
12941 let _endpos = _endpos__1_ in
12942 let _v : 'tv_ident =
12943 # 2024 "parser_cocci_menhir.mly"
12944 ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
12945 # 12919 "parser_cocci_menhir.ml"
12946 in
12947 _menhir_env.MenhirLib.EngineTypes.stack <- {
12948 MenhirLib.EngineTypes.state = _menhir_s;
12949 MenhirLib.EngineTypes.semv = Obj.repr _v;
12950 MenhirLib.EngineTypes.startp = _startpos;
12951 MenhirLib.EngineTypes.endp = _endpos;
12952 MenhirLib.EngineTypes.next = _menhir_stack;
12953 });
12954 (fun _menhir_env ->
12955 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12956 let {
12957 MenhirLib.EngineTypes.state = _menhir_s;
12958 MenhirLib.EngineTypes.semv = _1;
12959 MenhirLib.EngineTypes.startp = _startpos__1_;
12960 MenhirLib.EngineTypes.endp = _endpos__1_;
12961 MenhirLib.EngineTypes.next = _menhir_stack;
12962 } = _menhir_stack in
12963 let _1 : 'tv_wrapped_sym_ident = Obj.magic _1 in
12964 let _startpos = _startpos__1_ in
12965 let _endpos = _endpos__1_ in
12966 let _v : 'tv_ident =
12967 # 2025 "parser_cocci_menhir.mly"
12968 ( _1 )
12969 # 12943 "parser_cocci_menhir.ml"
12970 in
12971 _menhir_env.MenhirLib.EngineTypes.stack <- {
12972 MenhirLib.EngineTypes.state = _menhir_s;
12973 MenhirLib.EngineTypes.semv = Obj.repr _v;
12974 MenhirLib.EngineTypes.startp = _startpos;
12975 MenhirLib.EngineTypes.endp = _endpos;
12976 MenhirLib.EngineTypes.next = _menhir_stack;
12977 });
12978 (fun _menhir_env ->
12979 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
12980 let {
12981 MenhirLib.EngineTypes.state = _menhir_s;
12982 MenhirLib.EngineTypes.semv = _1;
12983 MenhirLib.EngineTypes.startp = _startpos__1_;
12984 MenhirLib.EngineTypes.endp = _endpos__1_;
12985 MenhirLib.EngineTypes.next = _menhir_stack;
12986 } = _menhir_stack in
12987 let _1 : (
12988 # 104 "parser_cocci_menhir.mly"
12989 (Parse_aux.midinfo)
12990 # 12964 "parser_cocci_menhir.ml"
12991 ) = Obj.magic _1 in
12992 let _startpos = _startpos__1_ in
12993 let _endpos = _endpos__1_ in
12994 let _v : 'tv_ident =
12995 # 2027 "parser_cocci_menhir.mly"
12996 ( let (nm,constraints,seed,pure,clt) = _1 in
12997 Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) )
12998 # 12972 "parser_cocci_menhir.ml"
12999 in
13000 _menhir_env.MenhirLib.EngineTypes.stack <- {
13001 MenhirLib.EngineTypes.state = _menhir_s;
13002 MenhirLib.EngineTypes.semv = Obj.repr _v;
13003 MenhirLib.EngineTypes.startp = _startpos;
13004 MenhirLib.EngineTypes.endp = _endpos;
13005 MenhirLib.EngineTypes.next = _menhir_stack;
13006 });
13007 (fun _menhir_env ->
13008 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13009 let {
13010 MenhirLib.EngineTypes.state = _menhir_s;
13011 MenhirLib.EngineTypes.semv = i;
13012 MenhirLib.EngineTypes.startp = _startpos_i_;
13013 MenhirLib.EngineTypes.endp = _endpos_i_;
13014 MenhirLib.EngineTypes.next = _menhir_stack;
13015 } = _menhir_stack in
13016 let i : 'tv_pure_ident = Obj.magic i in
13017 let _startpos = _startpos_i_ in
13018 let _endpos = _endpos_i_ in
13019 let _v : 'tv_ident_or_const =
13020 # 1977 "parser_cocci_menhir.mly"
13021 ( Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))) )
13022 # 12996 "parser_cocci_menhir.ml"
13023 in
13024 _menhir_env.MenhirLib.EngineTypes.stack <- {
13025 MenhirLib.EngineTypes.state = _menhir_s;
13026 MenhirLib.EngineTypes.semv = Obj.repr _v;
13027 MenhirLib.EngineTypes.startp = _startpos;
13028 MenhirLib.EngineTypes.endp = _endpos;
13029 MenhirLib.EngineTypes.next = _menhir_stack;
13030 });
13031 (fun _menhir_env ->
13032 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13033 let {
13034 MenhirLib.EngineTypes.state = _menhir_s;
13035 MenhirLib.EngineTypes.semv = _1;
13036 MenhirLib.EngineTypes.startp = _startpos__1_;
13037 MenhirLib.EngineTypes.endp = _endpos__1_;
13038 MenhirLib.EngineTypes.next = _menhir_stack;
13039 } = _menhir_stack in
13040 let _1 : 'tv_wrapped_sym_ident = Obj.magic _1 in
13041 let _startpos = _startpos__1_ in
13042 let _endpos = _endpos__1_ in
13043 let _v : 'tv_ident_or_const =
13044 # 1978 "parser_cocci_menhir.mly"
13045 ( Ast0.wrap(Ast0.Ident(_1)) )
13046 # 13020 "parser_cocci_menhir.ml"
13047 in
13048 _menhir_env.MenhirLib.EngineTypes.stack <- {
13049 MenhirLib.EngineTypes.state = _menhir_s;
13050 MenhirLib.EngineTypes.semv = Obj.repr _v;
13051 MenhirLib.EngineTypes.startp = _startpos;
13052 MenhirLib.EngineTypes.endp = _endpos;
13053 MenhirLib.EngineTypes.next = _menhir_stack;
13054 });
13055 (fun _menhir_env ->
13056 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13057 let {
13058 MenhirLib.EngineTypes.state = _menhir_s;
13059 MenhirLib.EngineTypes.semv = _1;
13060 MenhirLib.EngineTypes.startp = _startpos__1_;
13061 MenhirLib.EngineTypes.endp = _endpos__1_;
13062 MenhirLib.EngineTypes.next = _menhir_stack;
13063 } = _menhir_stack in
13064 let _1 : (
13065 # 133 "parser_cocci_menhir.mly"
13066 (string * Data.clt)
13067 # 13041 "parser_cocci_menhir.ml"
13068 ) = Obj.magic _1 in
13069 let _startpos = _startpos__1_ in
13070 let _endpos = _endpos__1_ in
13071 let _v : 'tv_ident_or_const =
13072 # 1980 "parser_cocci_menhir.mly"
13073 ( let (x,clt) = _1 in
13074 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
13075 # 13049 "parser_cocci_menhir.ml"
13076 in
13077 _menhir_env.MenhirLib.EngineTypes.stack <- {
13078 MenhirLib.EngineTypes.state = _menhir_s;
13079 MenhirLib.EngineTypes.semv = Obj.repr _v;
13080 MenhirLib.EngineTypes.startp = _startpos;
13081 MenhirLib.EngineTypes.endp = _endpos;
13082 MenhirLib.EngineTypes.next = _menhir_stack;
13083 });
13084 (fun _menhir_env ->
13085 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13086 let {
13087 MenhirLib.EngineTypes.state = _menhir_s;
13088 MenhirLib.EngineTypes.semv = _1;
13089 MenhirLib.EngineTypes.startp = _startpos__1_;
13090 MenhirLib.EngineTypes.endp = _endpos__1_;
13091 MenhirLib.EngineTypes.next = _menhir_stack;
13092 } = _menhir_stack in
13093 let _1 : (
13094 # 126 "parser_cocci_menhir.mly"
13095 (string * Data.clt)
13096 # 13070 "parser_cocci_menhir.ml"
13097 ) = Obj.magic _1 in
13098 let _startpos = _startpos__1_ in
13099 let _endpos = _endpos__1_ in
13100 let _v : 'tv_incl =
13101 # 303 "parser_cocci_menhir.mly"
13102 ( let (x,_) = _1 in Data.Include(x) )
13103 # 13077 "parser_cocci_menhir.ml"
13104 in
13105 _menhir_env.MenhirLib.EngineTypes.stack <- {
13106 MenhirLib.EngineTypes.state = _menhir_s;
13107 MenhirLib.EngineTypes.semv = Obj.repr _v;
13108 MenhirLib.EngineTypes.startp = _startpos;
13109 MenhirLib.EngineTypes.endp = _endpos;
13110 MenhirLib.EngineTypes.next = _menhir_stack;
13111 });
13112 (fun _menhir_env ->
13113 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13114 let {
13115 MenhirLib.EngineTypes.semv = _2;
13116 MenhirLib.EngineTypes.startp = _startpos__2_;
13117 MenhirLib.EngineTypes.endp = _endpos__2_;
13118 MenhirLib.EngineTypes.next = {
13119 MenhirLib.EngineTypes.state = _menhir_s;
13120 MenhirLib.EngineTypes.startp = _startpos__1_;
13121 MenhirLib.EngineTypes.endp = _endpos__1_;
13122 MenhirLib.EngineTypes.next = _menhir_stack;
13123 };
13124 } = _menhir_stack in
13125 let _2 : (
13126 # 133 "parser_cocci_menhir.mly"
13127 (string * Data.clt)
13128 # 13102 "parser_cocci_menhir.ml"
13129 ) = Obj.magic _2 in
13130 let _startpos = _startpos__1_ in
13131 let _endpos = _endpos__2_ in
13132 let _v : 'tv_incl =
13133 # 304 "parser_cocci_menhir.mly"
13134 ( Data.Iso(Common.Left(P.id2name _2)) )
13135 # 13109 "parser_cocci_menhir.ml"
13136 in
13137 _menhir_env.MenhirLib.EngineTypes.stack <- {
13138 MenhirLib.EngineTypes.state = _menhir_s;
13139 MenhirLib.EngineTypes.semv = Obj.repr _v;
13140 MenhirLib.EngineTypes.startp = _startpos;
13141 MenhirLib.EngineTypes.endp = _endpos;
13142 MenhirLib.EngineTypes.next = _menhir_stack;
13143 });
13144 (fun _menhir_env ->
13145 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13146 let {
13147 MenhirLib.EngineTypes.semv = _2;
13148 MenhirLib.EngineTypes.startp = _startpos__2_;
13149 MenhirLib.EngineTypes.endp = _endpos__2_;
13150 MenhirLib.EngineTypes.next = {
13151 MenhirLib.EngineTypes.state = _menhir_s;
13152 MenhirLib.EngineTypes.startp = _startpos__1_;
13153 MenhirLib.EngineTypes.endp = _endpos__1_;
13154 MenhirLib.EngineTypes.next = _menhir_stack;
13155 };
13156 } = _menhir_stack in
13157 let _2 : (
13158 # 125 "parser_cocci_menhir.mly"
13159 (string)
13160 # 13134 "parser_cocci_menhir.ml"
13161 ) = Obj.magic _2 in
13162 let _startpos = _startpos__1_ in
13163 let _endpos = _endpos__2_ in
13164 let _v : 'tv_incl =
13165 # 305 "parser_cocci_menhir.mly"
13166 ( Data.Iso(Common.Right _2) )
13167 # 13141 "parser_cocci_menhir.ml"
13168 in
13169 _menhir_env.MenhirLib.EngineTypes.stack <- {
13170 MenhirLib.EngineTypes.state = _menhir_s;
13171 MenhirLib.EngineTypes.semv = Obj.repr _v;
13172 MenhirLib.EngineTypes.startp = _startpos;
13173 MenhirLib.EngineTypes.endp = _endpos;
13174 MenhirLib.EngineTypes.next = _menhir_stack;
13175 });
13176 (fun _menhir_env ->
13177 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13178 let {
13179 MenhirLib.EngineTypes.semv = _2;
13180 MenhirLib.EngineTypes.startp = _startpos__2_;
13181 MenhirLib.EngineTypes.endp = _endpos__2_;
13182 MenhirLib.EngineTypes.next = {
13183 MenhirLib.EngineTypes.state = _menhir_s;
13184 MenhirLib.EngineTypes.startp = _startpos__1_;
13185 MenhirLib.EngineTypes.endp = _endpos__1_;
13186 MenhirLib.EngineTypes.next = _menhir_stack;
13187 };
13188 } = _menhir_stack in
13189 let _2 : 'tv_comma_list_pure_ident_ = Obj.magic _2 in
13190 let _startpos = _startpos__1_ in
13191 let _endpos = _endpos__2_ in
13192 let _v : 'tv_incl =
13193 # 307 "parser_cocci_menhir.mly"
13194 ( let names = List.map P.id2name _2 in
13195 Iteration.parsed_virtual_rules :=
13196 Common.union_set names !Iteration.parsed_virtual_rules;
13197 (* ensure that the names of virtual and real rules don't overlap *)
13198 List.iter
13199 (function name -> Hashtbl.add Data.all_metadecls name [])
13200 names;
13201 Data.Virt(names) )
13202 # 13176 "parser_cocci_menhir.ml"
13203 in
13204 _menhir_env.MenhirLib.EngineTypes.stack <- {
13205 MenhirLib.EngineTypes.state = _menhir_s;
13206 MenhirLib.EngineTypes.semv = Obj.repr _v;
13207 MenhirLib.EngineTypes.startp = _startpos;
13208 MenhirLib.EngineTypes.endp = _endpos;
13209 MenhirLib.EngineTypes.next = _menhir_stack;
13210 });
13211 (fun _menhir_env ->
13212 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13213 let {
13214 MenhirLib.EngineTypes.startp = _startpos__2_;
13215 MenhirLib.EngineTypes.endp = _endpos__2_;
13216 MenhirLib.EngineTypes.next = {
13217 MenhirLib.EngineTypes.state = _menhir_s;
13218 MenhirLib.EngineTypes.semv = _1;
13219 MenhirLib.EngineTypes.startp = _startpos__1_;
13220 MenhirLib.EngineTypes.endp = _endpos__1_;
13221 MenhirLib.EngineTypes.next = _menhir_stack;
13222 };
13223 } = _menhir_stack in
13224 let _1 : 'tv_list_incl_ = Obj.magic _1 in
13225 let _startpos = _startpos__1_ in
13226 let _endpos = _endpos__2_ in
13227 let _v : (
13228 # 194 "parser_cocci_menhir.mly"
13229 (Data.incl_iso list)
13230 # 13204 "parser_cocci_menhir.ml"
13231 ) =
13232 # 299 "parser_cocci_menhir.mly"
13233 ( _1 )
13234 # 13208 "parser_cocci_menhir.ml"
13235 in
13236 _menhir_env.MenhirLib.EngineTypes.stack <- {
13237 MenhirLib.EngineTypes.state = _menhir_s;
13238 MenhirLib.EngineTypes.semv = Obj.repr _v;
13239 MenhirLib.EngineTypes.startp = _startpos;
13240 MenhirLib.EngineTypes.endp = _endpos;
13241 MenhirLib.EngineTypes.next = _menhir_stack;
13242 });
13243 (fun _menhir_env ->
13244 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13245 let {
13246 MenhirLib.EngineTypes.startp = _startpos__2_;
13247 MenhirLib.EngineTypes.endp = _endpos__2_;
13248 MenhirLib.EngineTypes.next = {
13249 MenhirLib.EngineTypes.state = _menhir_s;
13250 MenhirLib.EngineTypes.semv = _1;
13251 MenhirLib.EngineTypes.startp = _startpos__1_;
13252 MenhirLib.EngineTypes.endp = _endpos__1_;
13253 MenhirLib.EngineTypes.next = _menhir_stack;
13254 };
13255 } = _menhir_stack in
13256 let _1 : 'tv_list_incl_ = Obj.magic _1 in
13257 let _startpos = _startpos__1_ in
13258 let _endpos = _endpos__2_ in
13259 let _v : (
13260 # 194 "parser_cocci_menhir.mly"
13261 (Data.incl_iso list)
13262 # 13236 "parser_cocci_menhir.ml"
13263 ) =
13264 # 300 "parser_cocci_menhir.mly"
13265 ( _1 )
13266 # 13240 "parser_cocci_menhir.ml"
13267 in
13268 _menhir_env.MenhirLib.EngineTypes.stack <- {
13269 MenhirLib.EngineTypes.state = _menhir_s;
13270 MenhirLib.EngineTypes.semv = Obj.repr _v;
13271 MenhirLib.EngineTypes.startp = _startpos;
13272 MenhirLib.EngineTypes.endp = _endpos;
13273 MenhirLib.EngineTypes.next = _menhir_stack;
13274 });
13275 (fun _menhir_env ->
13276 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13277 let {
13278 MenhirLib.EngineTypes.state = _menhir_s;
13279 MenhirLib.EngineTypes.semv = _1;
13280 MenhirLib.EngineTypes.startp = _startpos__1_;
13281 MenhirLib.EngineTypes.endp = _endpos__1_;
13282 MenhirLib.EngineTypes.next = _menhir_stack;
13283 } = _menhir_stack in
13284 let _1 : (
13285 # 126 "parser_cocci_menhir.mly"
13286 (string * Data.clt)
13287 # 13261 "parser_cocci_menhir.ml"
13288 ) = Obj.magic _1 in
13289 let _startpos = _startpos__1_ in
13290 let _endpos = _endpos__1_ in
13291 let _v : 'tv_includes =
13292 # 870 "parser_cocci_menhir.mly"
13293 ( Ast0.wrap
13294 (Ast0.Include(P.clt2mcode "#include"
13295 (P.drop_pos (P.drop_aft (P.id2clt _1))),
13296 let (arity,ln,lln,offset,col,strbef,straft,pos) =
13297 P.id2clt _1 in
13298 let clt =
13299 (arity,ln,lln,offset,0,strbef,straft,pos) in
13300 P.clt2mcode
13301 (Ast.Local (Parse_aux.str2inc (P.id2name _1)))
13302 (P.drop_bef clt))) )
13303 # 13277 "parser_cocci_menhir.ml"
13304 in
13305 _menhir_env.MenhirLib.EngineTypes.stack <- {
13306 MenhirLib.EngineTypes.state = _menhir_s;
13307 MenhirLib.EngineTypes.semv = Obj.repr _v;
13308 MenhirLib.EngineTypes.startp = _startpos;
13309 MenhirLib.EngineTypes.endp = _endpos;
13310 MenhirLib.EngineTypes.next = _menhir_stack;
13311 });
13312 (fun _menhir_env ->
13313 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13314 let {
13315 MenhirLib.EngineTypes.state = _menhir_s;
13316 MenhirLib.EngineTypes.semv = _1;
13317 MenhirLib.EngineTypes.startp = _startpos__1_;
13318 MenhirLib.EngineTypes.endp = _endpos__1_;
13319 MenhirLib.EngineTypes.next = _menhir_stack;
13320 } = _menhir_stack in
13321 let _1 : (
13322 # 126 "parser_cocci_menhir.mly"
13323 (string * Data.clt)
13324 # 13298 "parser_cocci_menhir.ml"
13325 ) = Obj.magic _1 in
13326 let _startpos = _startpos__1_ in
13327 let _endpos = _endpos__1_ in
13328 let _v : 'tv_includes =
13329 # 881 "parser_cocci_menhir.mly"
13330 ( Ast0.wrap
13331 (Ast0.Include(P.clt2mcode "#include"
13332 (P.drop_pos (P.drop_aft (P.id2clt _1))),
13333 let (arity,ln,lln,offset,col,strbef,straft,pos) =
13334 P.id2clt _1 in
13335 let clt =
13336 (arity,ln,lln,offset,0,strbef,straft,pos) in
13337 P.clt2mcode
13338 (Ast.NonLocal (Parse_aux.str2inc (P.id2name _1)))
13339 (P.drop_bef clt))) )
13340 # 13314 "parser_cocci_menhir.ml"
13341 in
13342 _menhir_env.MenhirLib.EngineTypes.stack <- {
13343 MenhirLib.EngineTypes.state = _menhir_s;
13344 MenhirLib.EngineTypes.semv = Obj.repr _v;
13345 MenhirLib.EngineTypes.startp = _startpos;
13346 MenhirLib.EngineTypes.endp = _endpos;
13347 MenhirLib.EngineTypes.next = _menhir_stack;
13348 });
13349 (fun _menhir_env ->
13350 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13351 let {
13352 MenhirLib.EngineTypes.startp = _startpos__2_;
13353 MenhirLib.EngineTypes.endp = _endpos__2_;
13354 MenhirLib.EngineTypes.next = {
13355 MenhirLib.EngineTypes.state = _menhir_s;
13356 MenhirLib.EngineTypes.semv = _1;
13357 MenhirLib.EngineTypes.startp = _startpos__1_;
13358 MenhirLib.EngineTypes.endp = _endpos__1_;
13359 MenhirLib.EngineTypes.next = _menhir_stack;
13360 };
13361 } = _menhir_stack in
13362 let _1 : (
13363 # 127 "parser_cocci_menhir.mly"
13364 (Data.clt * token)
13365 # 13339 "parser_cocci_menhir.ml"
13366 ) = Obj.magic _1 in
13367 let _startpos = _startpos__1_ in
13368 let _endpos = _endpos__2_ in
13369 let _v : 'tv_includes =
13370 # 892 "parser_cocci_menhir.mly"
13371 ( let (clt,ident) = _1 in
13372 let aft = P.get_aft clt in (* move stuff after the define to the ident *)
13373 Ast0.wrap
13374 (Ast0.Undef
13375 (P.clt2mcode "#undef" (P.drop_aft clt),
13376 (match ident with
13377 TMetaId((nm,constraints,seed,pure,clt)) ->
13378 let clt = P.set_aft aft clt in
13379 Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure))
13380 | TIdent((nm,clt)) ->
13381 let clt = P.set_aft aft clt in
13382 Ast0.wrap(Ast0.Id(P.clt2mcode nm clt))
13383 | TSymId(nm,clt) ->
13384 let clt = P.set_aft aft clt in
13385 Ast0.wrap(Ast0.Id(P.clt2mcode nm clt))
13386 | _ ->
13387 raise
13388 (Semantic_cocci.Semantic
13389 "unexpected name for a #define")))) )
13390 # 13364 "parser_cocci_menhir.ml"
13391 in
13392 _menhir_env.MenhirLib.EngineTypes.stack <- {
13393 MenhirLib.EngineTypes.state = _menhir_s;
13394 MenhirLib.EngineTypes.semv = Obj.repr _v;
13395 MenhirLib.EngineTypes.startp = _startpos;
13396 MenhirLib.EngineTypes.endp = _endpos;
13397 MenhirLib.EngineTypes.next = _menhir_stack;
13398 });
13399 (fun _menhir_env ->
13400 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13401 let {
13402 MenhirLib.EngineTypes.startp = _startpos__2_;
13403 MenhirLib.EngineTypes.endp = _endpos__2_;
13404 MenhirLib.EngineTypes.next = {
13405 MenhirLib.EngineTypes.state = _menhir_s;
13406 MenhirLib.EngineTypes.semv = d;
13407 MenhirLib.EngineTypes.startp = _startpos_d_;
13408 MenhirLib.EngineTypes.endp = _endpos_d_;
13409 MenhirLib.EngineTypes.next = _menhir_stack;
13410 };
13411 } = _menhir_stack in
13412 let d : 'tv_defineop = Obj.magic d in
13413 let _startpos = _startpos_d_ in
13414 let _endpos = _endpos__2_ in
13415 let _v : 'tv_includes =
13416 # 912 "parser_cocci_menhir.mly"
13417 ( d (Ast0.wrap(Ast0.DOTS([]))) )
13418 # 13392 "parser_cocci_menhir.ml"
13419 in
13420 _menhir_env.MenhirLib.EngineTypes.stack <- {
13421 MenhirLib.EngineTypes.state = _menhir_s;
13422 MenhirLib.EngineTypes.semv = Obj.repr _v;
13423 MenhirLib.EngineTypes.startp = _startpos;
13424 MenhirLib.EngineTypes.endp = _endpos;
13425 MenhirLib.EngineTypes.next = _menhir_stack;
13426 });
13427 (fun _menhir_env ->
13428 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13429 let {
13430 MenhirLib.EngineTypes.startp = _startpos__3_;
13431 MenhirLib.EngineTypes.endp = _endpos__3_;
13432 MenhirLib.EngineTypes.next = {
13433 MenhirLib.EngineTypes.semv = t;
13434 MenhirLib.EngineTypes.startp = _startpos_t_;
13435 MenhirLib.EngineTypes.endp = _endpos_t_;
13436 MenhirLib.EngineTypes.next = {
13437 MenhirLib.EngineTypes.state = _menhir_s;
13438 MenhirLib.EngineTypes.semv = d;
13439 MenhirLib.EngineTypes.startp = _startpos_d_;
13440 MenhirLib.EngineTypes.endp = _endpos_d_;
13441 MenhirLib.EngineTypes.next = _menhir_stack;
13442 };
13443 };
13444 } = _menhir_stack in
13445 let t : 'tv_ctype = Obj.magic t in
13446 let d : 'tv_defineop = Obj.magic d in
13447 let _startpos = _startpos_d_ in
13448 let _endpos = _endpos__3_ in
13449 let _v : 'tv_includes =
13450 # 914 "parser_cocci_menhir.mly"
13451 ( let ty = Ast0.wrap(Ast0.TopExp(Ast0.wrap(Ast0.TypeExp(t)))) in
13452 d (Ast0.wrap(Ast0.DOTS([ty]))) )
13453 # 13427 "parser_cocci_menhir.ml"
13454 in
13455 _menhir_env.MenhirLib.EngineTypes.stack <- {
13456 MenhirLib.EngineTypes.state = _menhir_s;
13457 MenhirLib.EngineTypes.semv = Obj.repr _v;
13458 MenhirLib.EngineTypes.startp = _startpos;
13459 MenhirLib.EngineTypes.endp = _endpos;
13460 MenhirLib.EngineTypes.next = _menhir_stack;
13461 });
13462 (fun _menhir_env ->
13463 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13464 let {
13465 MenhirLib.EngineTypes.startp = _startpos__3_;
13466 MenhirLib.EngineTypes.endp = _endpos__3_;
13467 MenhirLib.EngineTypes.next = {
13468 MenhirLib.EngineTypes.semv = b;
13469 MenhirLib.EngineTypes.startp = _startpos_b_;
13470 MenhirLib.EngineTypes.endp = _endpos_b_;
13471 MenhirLib.EngineTypes.next = {
13472 MenhirLib.EngineTypes.state = _menhir_s;
13473 MenhirLib.EngineTypes.semv = _1;
13474 MenhirLib.EngineTypes.startp = _startpos__1_;
13475 MenhirLib.EngineTypes.endp = _endpos__1_;
13476 MenhirLib.EngineTypes.next = _menhir_stack;
13477 };
13478 };
13479 } = _menhir_stack in
13480 let b : 'tv_toplevel_seq_start_toplevel_after_dots_ = Obj.magic b in
13481 let _1 : 'tv_defineop = Obj.magic _1 in
13482 let _startpos = _startpos__1_ in
13483 let _endpos = _endpos__3_ in
13484 let _v : 'tv_includes =
13485 # 917 "parser_cocci_menhir.mly"
13486 ( let body =
13487 match b with
13488 [e] ->
13489 (match Ast0.unwrap e with
13490 Ast0.Exp(e1) ->
13491 [Ast0.rewrap e (Ast0.TopExp(Ast0.set_arg_exp (e1)))]
13492 | _ -> b)
13493 | _ -> b in
13494 _1 (Ast0.wrap(Ast0.DOTS(body))) )
13495 # 13469 "parser_cocci_menhir.ml"
13496 in
13497 _menhir_env.MenhirLib.EngineTypes.stack <- {
13498 MenhirLib.EngineTypes.state = _menhir_s;
13499 MenhirLib.EngineTypes.semv = Obj.repr _v;
13500 MenhirLib.EngineTypes.startp = _startpos;
13501 MenhirLib.EngineTypes.endp = _endpos;
13502 MenhirLib.EngineTypes.next = _menhir_stack;
13503 });
13504 (fun _menhir_env ->
13505 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13506 let {
13507 MenhirLib.EngineTypes.state = _menhir_s;
13508 MenhirLib.EngineTypes.semv = _1;
13509 MenhirLib.EngineTypes.startp = _startpos__1_;
13510 MenhirLib.EngineTypes.endp = _endpos__1_;
13511 MenhirLib.EngineTypes.next = _menhir_stack;
13512 } = _menhir_stack in
13513 let _1 : 'tv_eexpr = Obj.magic _1 in
13514 let _startpos = _startpos__1_ in
13515 let _endpos = _endpos__1_ in
13516 let _v : 'tv_initialize =
13517 # 1340 "parser_cocci_menhir.mly"
13518 ( Ast0.wrap(Ast0.InitExpr(_1)) )
13519 # 13493 "parser_cocci_menhir.ml"
13520 in
13521 _menhir_env.MenhirLib.EngineTypes.stack <- {
13522 MenhirLib.EngineTypes.state = _menhir_s;
13523 MenhirLib.EngineTypes.semv = Obj.repr _v;
13524 MenhirLib.EngineTypes.startp = _startpos;
13525 MenhirLib.EngineTypes.endp = _endpos;
13526 MenhirLib.EngineTypes.next = _menhir_stack;
13527 });
13528 (fun _menhir_env ->
13529 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13530 let {
13531 MenhirLib.EngineTypes.semv = _3;
13532 MenhirLib.EngineTypes.startp = _startpos__3_;
13533 MenhirLib.EngineTypes.endp = _endpos__3_;
13534 MenhirLib.EngineTypes.next = {
13535 MenhirLib.EngineTypes.semv = _2;
13536 MenhirLib.EngineTypes.startp = _startpos__2_;
13537 MenhirLib.EngineTypes.endp = _endpos__2_;
13538 MenhirLib.EngineTypes.next = {
13539 MenhirLib.EngineTypes.state = _menhir_s;
13540 MenhirLib.EngineTypes.semv = _1;
13541 MenhirLib.EngineTypes.startp = _startpos__1_;
13542 MenhirLib.EngineTypes.endp = _endpos__1_;
13543 MenhirLib.EngineTypes.next = _menhir_stack;
13544 };
13545 };
13546 } = _menhir_stack in
13547 let _3 : (
13548 # 147 "parser_cocci_menhir.mly"
13549 (Data.clt)
13550 # 13524 "parser_cocci_menhir.ml"
13551 ) = Obj.magic _3 in
13552 let _2 : 'tv_initialize_list = Obj.magic _2 in
13553 let _1 : (
13554 # 147 "parser_cocci_menhir.mly"
13555 (Data.clt)
13556 # 13530 "parser_cocci_menhir.ml"
13557 ) = Obj.magic _1 in
13558 let _startpos = _startpos__1_ in
13559 let _endpos = _endpos__3_ in
13560 let _v : 'tv_initialize =
13561 # 1342 "parser_cocci_menhir.mly"
13562 ( if P.struct_initializer _2
13563 then
13564 let il = P.drop_dot_commas _2 in
13565 Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,il,P.clt2mcode "}" _3,false))
13566 else
13567 Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3,true)) )
13568 # 13542 "parser_cocci_menhir.ml"
13569 in
13570 _menhir_env.MenhirLib.EngineTypes.stack <- {
13571 MenhirLib.EngineTypes.state = _menhir_s;
13572 MenhirLib.EngineTypes.semv = Obj.repr _v;
13573 MenhirLib.EngineTypes.startp = _startpos;
13574 MenhirLib.EngineTypes.endp = _endpos;
13575 MenhirLib.EngineTypes.next = _menhir_stack;
13576 });
13577 (fun _menhir_env ->
13578 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13579 let {
13580 MenhirLib.EngineTypes.state = _menhir_s;
13581 MenhirLib.EngineTypes.semv = _1;
13582 MenhirLib.EngineTypes.startp = _startpos__1_;
13583 MenhirLib.EngineTypes.endp = _endpos__1_;
13584 MenhirLib.EngineTypes.next = _menhir_stack;
13585 } = _menhir_stack in
13586 let _1 : (
13587 # 109 "parser_cocci_menhir.mly"
13588 (Parse_aux.info)
13589 # 13563 "parser_cocci_menhir.ml"
13590 ) = Obj.magic _1 in
13591 let _startpos = _startpos__1_ in
13592 let _endpos = _endpos__1_ in
13593 let _v : 'tv_initialize =
13594 # 1349 "parser_cocci_menhir.mly"
13595 (let (nm,pure,clt) = _1 in
13596 Ast0.wrap(Ast0.MetaInit(P.clt2mcode nm clt,pure)) )
13597 # 13571 "parser_cocci_menhir.ml"
13598 in
13599 _menhir_env.MenhirLib.EngineTypes.stack <- {
13600 MenhirLib.EngineTypes.state = _menhir_s;
13601 MenhirLib.EngineTypes.semv = Obj.repr _v;
13602 MenhirLib.EngineTypes.startp = _startpos;
13603 MenhirLib.EngineTypes.endp = _endpos;
13604 MenhirLib.EngineTypes.next = _menhir_stack;
13605 });
13606 (fun _menhir_env ->
13607 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13608 let {
13609 MenhirLib.EngineTypes.state = _menhir_s;
13610 MenhirLib.EngineTypes.semv = _1;
13611 MenhirLib.EngineTypes.startp = _startpos__1_;
13612 MenhirLib.EngineTypes.endp = _endpos__1_;
13613 MenhirLib.EngineTypes.next = _menhir_stack;
13614 } = _menhir_stack in
13615 let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
13616 let _startpos = _startpos__1_ in
13617 let _endpos = _endpos__1_ in
13618 let _v : 'tv_initialize2 =
13619 # 1355 "parser_cocci_menhir.mly"
13620 ( Ast0.wrap(Ast0.InitExpr(_1)) )
13621 # 13595 "parser_cocci_menhir.ml"
13622 in
13623 _menhir_env.MenhirLib.EngineTypes.stack <- {
13624 MenhirLib.EngineTypes.state = _menhir_s;
13625 MenhirLib.EngineTypes.semv = Obj.repr _v;
13626 MenhirLib.EngineTypes.startp = _startpos;
13627 MenhirLib.EngineTypes.endp = _endpos;
13628 MenhirLib.EngineTypes.next = _menhir_stack;
13629 });
13630 (fun _menhir_env ->
13631 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13632 let {
13633 MenhirLib.EngineTypes.state = _menhir_s;
13634 MenhirLib.EngineTypes.semv = _1;
13635 MenhirLib.EngineTypes.startp = _startpos__1_;
13636 MenhirLib.EngineTypes.endp = _endpos__1_;
13637 MenhirLib.EngineTypes.next = _menhir_stack;
13638 } = _menhir_stack in
13639 let _1 : 'tv_nest_expressions_only = Obj.magic _1 in
13640 let _startpos = _startpos__1_ in
13641 let _endpos = _endpos__1_ in
13642 let _v : 'tv_initialize2 =
13643 # 1356 "parser_cocci_menhir.mly"
13644 ( Ast0.wrap(Ast0.InitExpr(_1)) )
13645 # 13619 "parser_cocci_menhir.ml"
13646 in
13647 _menhir_env.MenhirLib.EngineTypes.stack <- {
13648 MenhirLib.EngineTypes.state = _menhir_s;
13649 MenhirLib.EngineTypes.semv = Obj.repr _v;
13650 MenhirLib.EngineTypes.startp = _startpos;
13651 MenhirLib.EngineTypes.endp = _endpos;
13652 MenhirLib.EngineTypes.next = _menhir_stack;
13653 });
13654 (fun _menhir_env ->
13655 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13656 let {
13657 MenhirLib.EngineTypes.semv = _3;
13658 MenhirLib.EngineTypes.startp = _startpos__3_;
13659 MenhirLib.EngineTypes.endp = _endpos__3_;
13660 MenhirLib.EngineTypes.next = {
13661 MenhirLib.EngineTypes.semv = _2;
13662 MenhirLib.EngineTypes.startp = _startpos__2_;
13663 MenhirLib.EngineTypes.endp = _endpos__2_;
13664 MenhirLib.EngineTypes.next = {
13665 MenhirLib.EngineTypes.state = _menhir_s;
13666 MenhirLib.EngineTypes.semv = _1;
13667 MenhirLib.EngineTypes.startp = _startpos__1_;
13668 MenhirLib.EngineTypes.endp = _endpos__1_;
13669 MenhirLib.EngineTypes.next = _menhir_stack;
13670 };
13671 };
13672 } = _menhir_stack in
13673 let _3 : (
13674 # 147 "parser_cocci_menhir.mly"
13675 (Data.clt)
13676 # 13650 "parser_cocci_menhir.ml"
13677 ) = Obj.magic _3 in
13678 let _2 : 'tv_initialize_list = Obj.magic _2 in
13679 let _1 : (
13680 # 147 "parser_cocci_menhir.mly"
13681 (Data.clt)
13682 # 13656 "parser_cocci_menhir.ml"
13683 ) = Obj.magic _1 in
13684 let _startpos = _startpos__1_ in
13685 let _endpos = _endpos__3_ in
13686 let _v : 'tv_initialize2 =
13687 # 1358 "parser_cocci_menhir.mly"
13688 ( if P.struct_initializer _2
13689 then
13690 let il = P.drop_dot_commas _2 in
13691 Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,il,P.clt2mcode "}" _3,false))
13692 else
13693 Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3,true)) )
13694 # 13668 "parser_cocci_menhir.ml"
13695 in
13696 _menhir_env.MenhirLib.EngineTypes.stack <- {
13697 MenhirLib.EngineTypes.state = _menhir_s;
13698 MenhirLib.EngineTypes.semv = Obj.repr _v;
13699 MenhirLib.EngineTypes.startp = _startpos;
13700 MenhirLib.EngineTypes.endp = _endpos;
13701 MenhirLib.EngineTypes.next = _menhir_stack;
13702 });
13703 (fun _menhir_env ->
13704 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13705 let {
13706 MenhirLib.EngineTypes.semv = _3;
13707 MenhirLib.EngineTypes.startp = _startpos__3_;
13708 MenhirLib.EngineTypes.endp = _endpos__3_;
13709 MenhirLib.EngineTypes.next = {
13710 MenhirLib.EngineTypes.semv = _2;
13711 MenhirLib.EngineTypes.startp = _startpos__2_;
13712 MenhirLib.EngineTypes.endp = _endpos__2_;
13713 MenhirLib.EngineTypes.next = {
13714 MenhirLib.EngineTypes.state = _menhir_s;
13715 MenhirLib.EngineTypes.semv = _1;
13716 MenhirLib.EngineTypes.startp = _startpos__1_;
13717 MenhirLib.EngineTypes.endp = _endpos__1_;
13718 MenhirLib.EngineTypes.next = _menhir_stack;
13719 };
13720 };
13721 } = _menhir_stack in
13722 let _3 : 'tv_initialize2 = Obj.magic _3 in
13723 let _2 : (
13724 # 153 "parser_cocci_menhir.mly"
13725 (Data.clt)
13726 # 13700 "parser_cocci_menhir.ml"
13727 ) = Obj.magic _2 in
13728 let _1 : 'tv_list_designator_ = Obj.magic _1 in
13729 let _startpos = _startpos__1_ in
13730 let _endpos = _endpos__3_ in
13731 let _v : 'tv_initialize2 =
13732 # 1366 "parser_cocci_menhir.mly"
13733 ( Ast0.wrap(Ast0.InitGccExt(_1,P.clt2mcode "=" _2,_3)) )
13734 # 13708 "parser_cocci_menhir.ml"
13735 in
13736 _menhir_env.MenhirLib.EngineTypes.stack <- {
13737 MenhirLib.EngineTypes.state = _menhir_s;
13738 MenhirLib.EngineTypes.semv = Obj.repr _v;
13739 MenhirLib.EngineTypes.startp = _startpos;
13740 MenhirLib.EngineTypes.endp = _endpos;
13741 MenhirLib.EngineTypes.next = _menhir_stack;
13742 });
13743 (fun _menhir_env ->
13744 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13745 let {
13746 MenhirLib.EngineTypes.semv = _3;
13747 MenhirLib.EngineTypes.startp = _startpos__3_;
13748 MenhirLib.EngineTypes.endp = _endpos__3_;
13749 MenhirLib.EngineTypes.next = {
13750 MenhirLib.EngineTypes.semv = _2;
13751 MenhirLib.EngineTypes.startp = _startpos__2_;
13752 MenhirLib.EngineTypes.endp = _endpos__2_;
13753 MenhirLib.EngineTypes.next = {
13754 MenhirLib.EngineTypes.state = _menhir_s;
13755 MenhirLib.EngineTypes.semv = _1;
13756 MenhirLib.EngineTypes.startp = _startpos__1_;
13757 MenhirLib.EngineTypes.endp = _endpos__1_;
13758 MenhirLib.EngineTypes.next = _menhir_stack;
13759 };
13760 };
13761 } = _menhir_stack in
13762 let _3 : 'tv_initialize2 = Obj.magic _3 in
13763 let _2 : (
13764 # 122 "parser_cocci_menhir.mly"
13765 (Data.clt)
13766 # 13740 "parser_cocci_menhir.ml"
13767 ) = Obj.magic _2 in
13768 let _1 : 'tv_mident = Obj.magic _1 in
13769 let _startpos = _startpos__1_ in
13770 let _endpos = _endpos__3_ in
13771 let _v : 'tv_initialize2 =
13772 # 1368 "parser_cocci_menhir.mly"
13773 ( Ast0.wrap(Ast0.InitGccName(_1,P.clt2mcode ":" _2,_3)) )
13774 # 13748 "parser_cocci_menhir.ml"
13775 in
13776 _menhir_env.MenhirLib.EngineTypes.stack <- {
13777 MenhirLib.EngineTypes.state = _menhir_s;
13778 MenhirLib.EngineTypes.semv = Obj.repr _v;
13779 MenhirLib.EngineTypes.startp = _startpos;
13780 MenhirLib.EngineTypes.endp = _endpos;
13781 MenhirLib.EngineTypes.next = _menhir_stack;
13782 });
13783 (fun _menhir_env ->
13784 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13785 let {
13786 MenhirLib.EngineTypes.state = _menhir_s;
13787 MenhirLib.EngineTypes.semv = _1;
13788 MenhirLib.EngineTypes.startp = _startpos__1_;
13789 MenhirLib.EngineTypes.endp = _endpos__1_;
13790 MenhirLib.EngineTypes.next = _menhir_stack;
13791 } = _menhir_stack in
13792 let _1 : (
13793 # 109 "parser_cocci_menhir.mly"
13794 (Parse_aux.info)
13795 # 13769 "parser_cocci_menhir.ml"
13796 ) = Obj.magic _1 in
13797 let _startpos = _startpos__1_ in
13798 let _endpos = _endpos__1_ in
13799 let _v : 'tv_initialize2 =
13800 # 1370 "parser_cocci_menhir.mly"
13801 (let (nm,pure,clt) = _1 in
13802 Ast0.wrap(Ast0.MetaInit(P.clt2mcode nm clt,pure)) )
13803 # 13777 "parser_cocci_menhir.ml"
13804 in
13805 _menhir_env.MenhirLib.EngineTypes.stack <- {
13806 MenhirLib.EngineTypes.state = _menhir_s;
13807 MenhirLib.EngineTypes.semv = Obj.repr _v;
13808 MenhirLib.EngineTypes.startp = _startpos;
13809 MenhirLib.EngineTypes.endp = _endpos;
13810 MenhirLib.EngineTypes.next = _menhir_stack;
13811 });
13812 (fun _menhir_env ->
13813 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13814 let {
13815 MenhirLib.EngineTypes.state = _menhir_s;
13816 MenhirLib.EngineTypes.semv = _1;
13817 MenhirLib.EngineTypes.startp = _startpos__1_;
13818 MenhirLib.EngineTypes.endp = _endpos__1_;
13819 MenhirLib.EngineTypes.next = _menhir_stack;
13820 } = _menhir_stack in
13821 let _1 : (
13822 # 110 "parser_cocci_menhir.mly"
13823 (Parse_aux.list_info)
13824 # 13798 "parser_cocci_menhir.ml"
13825 ) = Obj.magic _1 in
13826 let _startpos = _startpos__1_ in
13827 let _endpos = _endpos__1_ in
13828 let _v : 'tv_initialize2 =
13829 # 1373 "parser_cocci_menhir.mly"
13830 (let (nm,lenname,pure,clt) = _1 in
13831 let nm = P.clt2mcode nm clt in
13832 let lenname =
13833 match lenname with
13834 Ast.AnyLen -> Ast0.AnyListLen
13835 | Ast.MetaLen nm -> Ast0.MetaListLen(P.clt2mcode nm clt)
13836 | Ast.CstLen n -> Ast0.CstListLen n in
13837 Ast0.wrap(Ast0.MetaInitList(nm,lenname,pure)) )
13838 # 13812 "parser_cocci_menhir.ml"
13839 in
13840 _menhir_env.MenhirLib.EngineTypes.stack <- {
13841 MenhirLib.EngineTypes.state = _menhir_s;
13842 MenhirLib.EngineTypes.semv = Obj.repr _v;
13843 MenhirLib.EngineTypes.startp = _startpos;
13844 MenhirLib.EngineTypes.endp = _endpos;
13845 MenhirLib.EngineTypes.next = _menhir_stack;
13846 });
13847 (fun _menhir_env ->
13848 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13849 let {
13850 MenhirLib.EngineTypes.state = _menhir_s;
13851 MenhirLib.EngineTypes.semv = _1;
13852 MenhirLib.EngineTypes.startp = _startpos__1_;
13853 MenhirLib.EngineTypes.endp = _endpos__1_;
13854 MenhirLib.EngineTypes.next = _menhir_stack;
13855 } = _menhir_stack in
13856 let _1 : 'tv_empty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _1 in
13857 let _startpos = _startpos__1_ in
13858 let _endpos = _endpos__1_ in
13859 let _v : 'tv_initialize_list =
13860 # 1393 "parser_cocci_menhir.mly"
13861 ( Ast0.wrap(Ast0.DOTS(_1 P.mkidots (fun c -> Ast0.IComma c))) )
13862 # 13836 "parser_cocci_menhir.ml"
13863 in
13864 _menhir_env.MenhirLib.EngineTypes.stack <- {
13865 MenhirLib.EngineTypes.state = _menhir_s;
13866 MenhirLib.EngineTypes.semv = Obj.repr _v;
13867 MenhirLib.EngineTypes.startp = _startpos;
13868 MenhirLib.EngineTypes.endp = _endpos;
13869 MenhirLib.EngineTypes.next = _menhir_stack;
13870 });
13871 (fun _menhir_env ->
13872 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13873 let {
13874 MenhirLib.EngineTypes.state = _menhir_s;
13875 MenhirLib.EngineTypes.startp = _startpos__1_;
13876 MenhirLib.EngineTypes.endp = _endpos__1_;
13877 MenhirLib.EngineTypes.next = _menhir_stack;
13878 } = _menhir_stack in
13879 let _startpos = _startpos__1_ in
13880 let _endpos = _endpos__1_ in
13881 let _v : 'tv_invalid =
13882 # 1478 "parser_cocci_menhir.mly"
13883 ( raise (Semantic_cocci.Semantic "not matchable") )
13884 # 13858 "parser_cocci_menhir.ml"
13885 in
13886 _menhir_env.MenhirLib.EngineTypes.stack <- {
13887 MenhirLib.EngineTypes.state = _menhir_s;
13888 MenhirLib.EngineTypes.semv = Obj.repr _v;
13889 MenhirLib.EngineTypes.startp = _startpos;
13890 MenhirLib.EngineTypes.endp = _endpos;
13891 MenhirLib.EngineTypes.next = _menhir_stack;
13892 });
13893 (fun _menhir_env ->
13894 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13895 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
13896 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
13897 let _endpos = _startpos in
13898 let _v : 'tv_is_expression =
13899 # 295 "parser_cocci_menhir.mly"
13900 ( false )
13901 # 13875 "parser_cocci_menhir.ml"
13902 in
13903 _menhir_env.MenhirLib.EngineTypes.stack <- {
13904 MenhirLib.EngineTypes.state = _menhir_s;
13905 MenhirLib.EngineTypes.semv = Obj.repr _v;
13906 MenhirLib.EngineTypes.startp = _startpos;
13907 MenhirLib.EngineTypes.endp = _endpos;
13908 MenhirLib.EngineTypes.next = _menhir_stack;
13909 });
13910 (fun _menhir_env ->
13911 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13912 let {
13913 MenhirLib.EngineTypes.state = _menhir_s;
13914 MenhirLib.EngineTypes.startp = _startpos__1_;
13915 MenhirLib.EngineTypes.endp = _endpos__1_;
13916 MenhirLib.EngineTypes.next = _menhir_stack;
13917 } = _menhir_stack in
13918 let _startpos = _startpos__1_ in
13919 let _endpos = _endpos__1_ in
13920 let _v : 'tv_is_expression =
13921 # 296 "parser_cocci_menhir.mly"
13922 ( true )
13923 # 13897 "parser_cocci_menhir.ml"
13924 in
13925 _menhir_env.MenhirLib.EngineTypes.stack <- {
13926 MenhirLib.EngineTypes.state = _menhir_s;
13927 MenhirLib.EngineTypes.semv = Obj.repr _v;
13928 MenhirLib.EngineTypes.startp = _startpos;
13929 MenhirLib.EngineTypes.endp = _endpos;
13930 MenhirLib.EngineTypes.next = _menhir_stack;
13931 });
13932 (fun _menhir_env ->
13933 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13934 let {
13935 MenhirLib.EngineTypes.semv = t;
13936 MenhirLib.EngineTypes.startp = _startpos_t_;
13937 MenhirLib.EngineTypes.endp = _endpos_t_;
13938 MenhirLib.EngineTypes.next = {
13939 MenhirLib.EngineTypes.state = _menhir_s;
13940 MenhirLib.EngineTypes.startp = _startpos__1_;
13941 MenhirLib.EngineTypes.endp = _endpos__1_;
13942 MenhirLib.EngineTypes.next = _menhir_stack;
13943 };
13944 } = _menhir_stack in
13945 let t : 'tv_ctype = Obj.magic t in
13946 let _startpos = _startpos__1_ in
13947 let _endpos = _endpos_t_ in
13948 let _v : 'tv_iso_ctype_ =
13949 # 2417 "parser_cocci_menhir.mly"
13950 ( Common.Left t )
13951 # 13925 "parser_cocci_menhir.ml"
13952 in
13953 _menhir_env.MenhirLib.EngineTypes.stack <- {
13954 MenhirLib.EngineTypes.state = _menhir_s;
13955 MenhirLib.EngineTypes.semv = Obj.repr _v;
13956 MenhirLib.EngineTypes.startp = _startpos;
13957 MenhirLib.EngineTypes.endp = _endpos;
13958 MenhirLib.EngineTypes.next = _menhir_stack;
13959 });
13960 (fun _menhir_env ->
13961 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13962 let {
13963 MenhirLib.EngineTypes.semv = t;
13964 MenhirLib.EngineTypes.startp = _startpos_t_;
13965 MenhirLib.EngineTypes.endp = _endpos_t_;
13966 MenhirLib.EngineTypes.next = {
13967 MenhirLib.EngineTypes.state = _menhir_s;
13968 MenhirLib.EngineTypes.startp = _startpos__1_;
13969 MenhirLib.EngineTypes.endp = _endpos__1_;
13970 MenhirLib.EngineTypes.next = _menhir_stack;
13971 };
13972 } = _menhir_stack in
13973 let t : 'tv_ctype = Obj.magic t in
13974 let _startpos = _startpos__1_ in
13975 let _endpos = _endpos_t_ in
13976 let _v : 'tv_iso_ctype_ =
13977 # 2418 "parser_cocci_menhir.mly"
13978 ( Common.Right t )
13979 # 13953 "parser_cocci_menhir.ml"
13980 in
13981 _menhir_env.MenhirLib.EngineTypes.stack <- {
13982 MenhirLib.EngineTypes.state = _menhir_s;
13983 MenhirLib.EngineTypes.semv = Obj.repr _v;
13984 MenhirLib.EngineTypes.startp = _startpos;
13985 MenhirLib.EngineTypes.endp = _endpos;
13986 MenhirLib.EngineTypes.next = _menhir_stack;
13987 });
13988 (fun _menhir_env ->
13989 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
13990 let {
13991 MenhirLib.EngineTypes.semv = t;
13992 MenhirLib.EngineTypes.startp = _startpos_t_;
13993 MenhirLib.EngineTypes.endp = _endpos_t_;
13994 MenhirLib.EngineTypes.next = {
13995 MenhirLib.EngineTypes.state = _menhir_s;
13996 MenhirLib.EngineTypes.startp = _startpos__1_;
13997 MenhirLib.EngineTypes.endp = _endpos__1_;
13998 MenhirLib.EngineTypes.next = _menhir_stack;
13999 };
14000 } = _menhir_stack in
14001 let t : 'tv_decl_var = Obj.magic t in
14002 let _startpos = _startpos__1_ in
14003 let _endpos = _endpos_t_ in
14004 let _v : 'tv_iso_decl_var_ =
14005 # 2417 "parser_cocci_menhir.mly"
14006 ( Common.Left t )
14007 # 13981 "parser_cocci_menhir.ml"
14008 in
14009 _menhir_env.MenhirLib.EngineTypes.stack <- {
14010 MenhirLib.EngineTypes.state = _menhir_s;
14011 MenhirLib.EngineTypes.semv = Obj.repr _v;
14012 MenhirLib.EngineTypes.startp = _startpos;
14013 MenhirLib.EngineTypes.endp = _endpos;
14014 MenhirLib.EngineTypes.next = _menhir_stack;
14015 });
14016 (fun _menhir_env ->
14017 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14018 let {
14019 MenhirLib.EngineTypes.semv = t;
14020 MenhirLib.EngineTypes.startp = _startpos_t_;
14021 MenhirLib.EngineTypes.endp = _endpos_t_;
14022 MenhirLib.EngineTypes.next = {
14023 MenhirLib.EngineTypes.state = _menhir_s;
14024 MenhirLib.EngineTypes.startp = _startpos__1_;
14025 MenhirLib.EngineTypes.endp = _endpos__1_;
14026 MenhirLib.EngineTypes.next = _menhir_stack;
14027 };
14028 } = _menhir_stack in
14029 let t : 'tv_decl_var = Obj.magic t in
14030 let _startpos = _startpos__1_ in
14031 let _endpos = _endpos_t_ in
14032 let _v : 'tv_iso_decl_var_ =
14033 # 2418 "parser_cocci_menhir.mly"
14034 ( Common.Right t )
14035 # 14009 "parser_cocci_menhir.ml"
14036 in
14037 _menhir_env.MenhirLib.EngineTypes.stack <- {
14038 MenhirLib.EngineTypes.state = _menhir_s;
14039 MenhirLib.EngineTypes.semv = Obj.repr _v;
14040 MenhirLib.EngineTypes.startp = _startpos;
14041 MenhirLib.EngineTypes.endp = _endpos;
14042 MenhirLib.EngineTypes.next = _menhir_stack;
14043 });
14044 (fun _menhir_env ->
14045 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14046 let {
14047 MenhirLib.EngineTypes.semv = t;
14048 MenhirLib.EngineTypes.startp = _startpos_t_;
14049 MenhirLib.EngineTypes.endp = _endpos_t_;
14050 MenhirLib.EngineTypes.next = {
14051 MenhirLib.EngineTypes.state = _menhir_s;
14052 MenhirLib.EngineTypes.startp = _startpos__1_;
14053 MenhirLib.EngineTypes.endp = _endpos__1_;
14054 MenhirLib.EngineTypes.next = _menhir_stack;
14055 };
14056 } = _menhir_stack in
14057 let t : 'tv_eexpr = Obj.magic t in
14058 let _startpos = _startpos__1_ in
14059 let _endpos = _endpos_t_ in
14060 let _v : 'tv_iso_eexpr_ =
14061 # 2417 "parser_cocci_menhir.mly"
14062 ( Common.Left t )
14063 # 14037 "parser_cocci_menhir.ml"
14064 in
14065 _menhir_env.MenhirLib.EngineTypes.stack <- {
14066 MenhirLib.EngineTypes.state = _menhir_s;
14067 MenhirLib.EngineTypes.semv = Obj.repr _v;
14068 MenhirLib.EngineTypes.startp = _startpos;
14069 MenhirLib.EngineTypes.endp = _endpos;
14070 MenhirLib.EngineTypes.next = _menhir_stack;
14071 });
14072 (fun _menhir_env ->
14073 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14074 let {
14075 MenhirLib.EngineTypes.semv = t;
14076 MenhirLib.EngineTypes.startp = _startpos_t_;
14077 MenhirLib.EngineTypes.endp = _endpos_t_;
14078 MenhirLib.EngineTypes.next = {
14079 MenhirLib.EngineTypes.state = _menhir_s;
14080 MenhirLib.EngineTypes.startp = _startpos__1_;
14081 MenhirLib.EngineTypes.endp = _endpos__1_;
14082 MenhirLib.EngineTypes.next = _menhir_stack;
14083 };
14084 } = _menhir_stack in
14085 let t : 'tv_eexpr = Obj.magic t in
14086 let _startpos = _startpos__1_ in
14087 let _endpos = _endpos_t_ in
14088 let _v : 'tv_iso_eexpr_ =
14089 # 2418 "parser_cocci_menhir.mly"
14090 ( Common.Right t )
14091 # 14065 "parser_cocci_menhir.ml"
14092 in
14093 _menhir_env.MenhirLib.EngineTypes.stack <- {
14094 MenhirLib.EngineTypes.state = _menhir_s;
14095 MenhirLib.EngineTypes.semv = Obj.repr _v;
14096 MenhirLib.EngineTypes.startp = _startpos;
14097 MenhirLib.EngineTypes.endp = _endpos;
14098 MenhirLib.EngineTypes.next = _menhir_stack;
14099 });
14100 (fun _menhir_env ->
14101 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14102 let {
14103 MenhirLib.EngineTypes.semv = t;
14104 MenhirLib.EngineTypes.startp = _startpos_t_;
14105 MenhirLib.EngineTypes.endp = _endpos_t_;
14106 MenhirLib.EngineTypes.next = {
14107 MenhirLib.EngineTypes.state = _menhir_s;
14108 MenhirLib.EngineTypes.startp = _startpos__1_;
14109 MenhirLib.EngineTypes.endp = _endpos__1_;
14110 MenhirLib.EngineTypes.next = _menhir_stack;
14111 };
14112 } = _menhir_stack in
14113 let t : 'tv_iso_statement = Obj.magic t in
14114 let _startpos = _startpos__1_ in
14115 let _endpos = _endpos_t_ in
14116 let _v : 'tv_iso_iso_statement_ =
14117 # 2417 "parser_cocci_menhir.mly"
14118 ( Common.Left t )
14119 # 14093 "parser_cocci_menhir.ml"
14120 in
14121 _menhir_env.MenhirLib.EngineTypes.stack <- {
14122 MenhirLib.EngineTypes.state = _menhir_s;
14123 MenhirLib.EngineTypes.semv = Obj.repr _v;
14124 MenhirLib.EngineTypes.startp = _startpos;
14125 MenhirLib.EngineTypes.endp = _endpos;
14126 MenhirLib.EngineTypes.next = _menhir_stack;
14127 });
14128 (fun _menhir_env ->
14129 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14130 let {
14131 MenhirLib.EngineTypes.semv = t;
14132 MenhirLib.EngineTypes.startp = _startpos_t_;
14133 MenhirLib.EngineTypes.endp = _endpos_t_;
14134 MenhirLib.EngineTypes.next = {
14135 MenhirLib.EngineTypes.state = _menhir_s;
14136 MenhirLib.EngineTypes.startp = _startpos__1_;
14137 MenhirLib.EngineTypes.endp = _endpos__1_;
14138 MenhirLib.EngineTypes.next = _menhir_stack;
14139 };
14140 } = _menhir_stack in
14141 let t : 'tv_iso_statement = Obj.magic t in
14142 let _startpos = _startpos__1_ in
14143 let _endpos = _endpos_t_ in
14144 let _v : 'tv_iso_iso_statement_ =
14145 # 2418 "parser_cocci_menhir.mly"
14146 ( Common.Right t )
14147 # 14121 "parser_cocci_menhir.ml"
14148 in
14149 _menhir_env.MenhirLib.EngineTypes.stack <- {
14150 MenhirLib.EngineTypes.state = _menhir_s;
14151 MenhirLib.EngineTypes.semv = Obj.repr _v;
14152 MenhirLib.EngineTypes.startp = _startpos;
14153 MenhirLib.EngineTypes.endp = _endpos;
14154 MenhirLib.EngineTypes.next = _menhir_stack;
14155 });
14156 (fun _menhir_env ->
14157 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14158 let {
14159 MenhirLib.EngineTypes.semv = t;
14160 MenhirLib.EngineTypes.startp = _startpos_t_;
14161 MenhirLib.EngineTypes.endp = _endpos_t_;
14162 MenhirLib.EngineTypes.next = {
14163 MenhirLib.EngineTypes.state = _menhir_s;
14164 MenhirLib.EngineTypes.startp = _startpos__1_;
14165 MenhirLib.EngineTypes.endp = _endpos__1_;
14166 MenhirLib.EngineTypes.next = _menhir_stack;
14167 };
14168 } = _menhir_stack in
14169 let t : 'tv_nest_start = Obj.magic t in
14170 let _startpos = _startpos__1_ in
14171 let _endpos = _endpos_t_ in
14172 let _v : 'tv_iso_nest_start_ =
14173 # 2417 "parser_cocci_menhir.mly"
14174 ( Common.Left t )
14175 # 14149 "parser_cocci_menhir.ml"
14176 in
14177 _menhir_env.MenhirLib.EngineTypes.stack <- {
14178 MenhirLib.EngineTypes.state = _menhir_s;
14179 MenhirLib.EngineTypes.semv = Obj.repr _v;
14180 MenhirLib.EngineTypes.startp = _startpos;
14181 MenhirLib.EngineTypes.endp = _endpos;
14182 MenhirLib.EngineTypes.next = _menhir_stack;
14183 });
14184 (fun _menhir_env ->
14185 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14186 let {
14187 MenhirLib.EngineTypes.semv = t;
14188 MenhirLib.EngineTypes.startp = _startpos_t_;
14189 MenhirLib.EngineTypes.endp = _endpos_t_;
14190 MenhirLib.EngineTypes.next = {
14191 MenhirLib.EngineTypes.state = _menhir_s;
14192 MenhirLib.EngineTypes.startp = _startpos__1_;
14193 MenhirLib.EngineTypes.endp = _endpos__1_;
14194 MenhirLib.EngineTypes.next = _menhir_stack;
14195 };
14196 } = _menhir_stack in
14197 let t : 'tv_nest_start = Obj.magic t in
14198 let _startpos = _startpos__1_ in
14199 let _endpos = _endpos_t_ in
14200 let _v : 'tv_iso_nest_start_ =
14201 # 2418 "parser_cocci_menhir.mly"
14202 ( Common.Right t )
14203 # 14177 "parser_cocci_menhir.ml"
14204 in
14205 _menhir_env.MenhirLib.EngineTypes.stack <- {
14206 MenhirLib.EngineTypes.state = _menhir_s;
14207 MenhirLib.EngineTypes.semv = Obj.repr _v;
14208 MenhirLib.EngineTypes.startp = _startpos;
14209 MenhirLib.EngineTypes.endp = _endpos;
14210 MenhirLib.EngineTypes.next = _menhir_stack;
14211 });
14212 (fun _menhir_env ->
14213 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14214 let {
14215 MenhirLib.EngineTypes.startp = _startpos__4_;
14216 MenhirLib.EngineTypes.endp = _endpos__4_;
14217 MenhirLib.EngineTypes.next = {
14218 MenhirLib.EngineTypes.semv = el;
14219 MenhirLib.EngineTypes.startp = _startpos_el_;
14220 MenhirLib.EngineTypes.endp = _endpos_el_;
14221 MenhirLib.EngineTypes.next = {
14222 MenhirLib.EngineTypes.semv = e1;
14223 MenhirLib.EngineTypes.startp = _startpos_e1_;
14224 MenhirLib.EngineTypes.endp = _endpos_e1_;
14225 MenhirLib.EngineTypes.next = {
14226 MenhirLib.EngineTypes.state = _menhir_s;
14227 MenhirLib.EngineTypes.startp = _startpos__1_;
14228 MenhirLib.EngineTypes.endp = _endpos__1_;
14229 MenhirLib.EngineTypes.next = _menhir_stack;
14230 };
14231 };
14232 };
14233 } = _menhir_stack in
14234 let el : 'tv_list_iso_eexpr__ = Obj.magic el in
14235 let e1 : 'tv_eexpr = Obj.magic e1 in
14236 let _startpos = _startpos__1_ in
14237 let _endpos = _endpos__4_ in
14238 let _v : (
14239 # 210 "parser_cocci_menhir.mly"
14240 (Ast0_cocci.anything list list)
14241 # 14215 "parser_cocci_menhir.ml"
14242 ) =
14243 # 2385 "parser_cocci_menhir.mly"
14244 ( let fn x = Ast0.ExprTag x in P.iso_adjust fn fn e1 el )
14245 # 14219 "parser_cocci_menhir.ml"
14246 in
14247 _menhir_env.MenhirLib.EngineTypes.stack <- {
14248 MenhirLib.EngineTypes.state = _menhir_s;
14249 MenhirLib.EngineTypes.semv = Obj.repr _v;
14250 MenhirLib.EngineTypes.startp = _startpos;
14251 MenhirLib.EngineTypes.endp = _endpos;
14252 MenhirLib.EngineTypes.next = _menhir_stack;
14253 });
14254 (fun _menhir_env ->
14255 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14256 let {
14257 MenhirLib.EngineTypes.startp = _startpos__4_;
14258 MenhirLib.EngineTypes.endp = _endpos__4_;
14259 MenhirLib.EngineTypes.next = {
14260 MenhirLib.EngineTypes.semv = el;
14261 MenhirLib.EngineTypes.startp = _startpos_el_;
14262 MenhirLib.EngineTypes.endp = _endpos_el_;
14263 MenhirLib.EngineTypes.next = {
14264 MenhirLib.EngineTypes.semv = e1;
14265 MenhirLib.EngineTypes.startp = _startpos_e1_;
14266 MenhirLib.EngineTypes.endp = _endpos_e1_;
14267 MenhirLib.EngineTypes.next = {
14268 MenhirLib.EngineTypes.state = _menhir_s;
14269 MenhirLib.EngineTypes.startp = _startpos__1_;
14270 MenhirLib.EngineTypes.endp = _endpos__1_;
14271 MenhirLib.EngineTypes.next = _menhir_stack;
14272 };
14273 };
14274 };
14275 } = _menhir_stack in
14276 let el : 'tv_list_iso_eexpr__ = Obj.magic el in
14277 let e1 : 'tv_eexpr = Obj.magic e1 in
14278 let _startpos = _startpos__1_ in
14279 let _endpos = _endpos__4_ in
14280 let _v : (
14281 # 210 "parser_cocci_menhir.mly"
14282 (Ast0_cocci.anything list list)
14283 # 14257 "parser_cocci_menhir.ml"
14284 ) =
14285 # 2387 "parser_cocci_menhir.mly"
14286 ( let fn x = Ast0.ArgExprTag x in P.iso_adjust fn fn e1 el )
14287 # 14261 "parser_cocci_menhir.ml"
14288 in
14289 _menhir_env.MenhirLib.EngineTypes.stack <- {
14290 MenhirLib.EngineTypes.state = _menhir_s;
14291 MenhirLib.EngineTypes.semv = Obj.repr _v;
14292 MenhirLib.EngineTypes.startp = _startpos;
14293 MenhirLib.EngineTypes.endp = _endpos;
14294 MenhirLib.EngineTypes.next = _menhir_stack;
14295 });
14296 (fun _menhir_env ->
14297 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14298 let {
14299 MenhirLib.EngineTypes.startp = _startpos__4_;
14300 MenhirLib.EngineTypes.endp = _endpos__4_;
14301 MenhirLib.EngineTypes.next = {
14302 MenhirLib.EngineTypes.semv = el;
14303 MenhirLib.EngineTypes.startp = _startpos_el_;
14304 MenhirLib.EngineTypes.endp = _endpos_el_;
14305 MenhirLib.EngineTypes.next = {
14306 MenhirLib.EngineTypes.semv = e1;
14307 MenhirLib.EngineTypes.startp = _startpos_e1_;
14308 MenhirLib.EngineTypes.endp = _endpos_e1_;
14309 MenhirLib.EngineTypes.next = {
14310 MenhirLib.EngineTypes.state = _menhir_s;
14311 MenhirLib.EngineTypes.startp = _startpos__1_;
14312 MenhirLib.EngineTypes.endp = _endpos__1_;
14313 MenhirLib.EngineTypes.next = _menhir_stack;
14314 };
14315 };
14316 };
14317 } = _menhir_stack in
14318 let el : 'tv_list_iso_eexpr__ = Obj.magic el in
14319 let e1 : 'tv_eexpr = Obj.magic e1 in
14320 let _startpos = _startpos__1_ in
14321 let _endpos = _endpos__4_ in
14322 let _v : (
14323 # 210 "parser_cocci_menhir.mly"
14324 (Ast0_cocci.anything list list)
14325 # 14299 "parser_cocci_menhir.ml"
14326 ) =
14327 # 2389 "parser_cocci_menhir.mly"
14328 ( let fn x = Ast0.TestExprTag x in P.iso_adjust fn fn e1 el )
14329 # 14303 "parser_cocci_menhir.ml"
14330 in
14331 _menhir_env.MenhirLib.EngineTypes.stack <- {
14332 MenhirLib.EngineTypes.state = _menhir_s;
14333 MenhirLib.EngineTypes.semv = Obj.repr _v;
14334 MenhirLib.EngineTypes.startp = _startpos;
14335 MenhirLib.EngineTypes.endp = _endpos;
14336 MenhirLib.EngineTypes.next = _menhir_stack;
14337 });
14338 (fun _menhir_env ->
14339 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14340 let {
14341 MenhirLib.EngineTypes.startp = _startpos__4_;
14342 MenhirLib.EngineTypes.endp = _endpos__4_;
14343 MenhirLib.EngineTypes.next = {
14344 MenhirLib.EngineTypes.semv = el;
14345 MenhirLib.EngineTypes.startp = _startpos_el_;
14346 MenhirLib.EngineTypes.endp = _endpos_el_;
14347 MenhirLib.EngineTypes.next = {
14348 MenhirLib.EngineTypes.semv = e1;
14349 MenhirLib.EngineTypes.startp = _startpos_e1_;
14350 MenhirLib.EngineTypes.endp = _endpos_e1_;
14351 MenhirLib.EngineTypes.next = {
14352 MenhirLib.EngineTypes.state = _menhir_s;
14353 MenhirLib.EngineTypes.startp = _startpos__1_;
14354 MenhirLib.EngineTypes.endp = _endpos__1_;
14355 MenhirLib.EngineTypes.next = _menhir_stack;
14356 };
14357 };
14358 };
14359 } = _menhir_stack in
14360 let el : 'tv_list_iso_eexpr__ = Obj.magic el in
14361 let e1 : 'tv_eexpr = Obj.magic e1 in
14362 let _startpos = _startpos__1_ in
14363 let _endpos = _endpos__4_ in
14364 let _v : (
14365 # 210 "parser_cocci_menhir.mly"
14366 (Ast0_cocci.anything list list)
14367 # 14341 "parser_cocci_menhir.ml"
14368 ) =
14369 # 2391 "parser_cocci_menhir.mly"
14370 ( let ffn x = Ast0.ExprTag x in
14371 let fn x = Ast0.TestExprTag x in
14372 P.iso_adjust ffn fn e1 el )
14373 # 14347 "parser_cocci_menhir.ml"
14374 in
14375 _menhir_env.MenhirLib.EngineTypes.stack <- {
14376 MenhirLib.EngineTypes.state = _menhir_s;
14377 MenhirLib.EngineTypes.semv = Obj.repr _v;
14378 MenhirLib.EngineTypes.startp = _startpos;
14379 MenhirLib.EngineTypes.endp = _endpos;
14380 MenhirLib.EngineTypes.next = _menhir_stack;
14381 });
14382 (fun _menhir_env ->
14383 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14384 let {
14385 MenhirLib.EngineTypes.startp = _startpos__4_;
14386 MenhirLib.EngineTypes.endp = _endpos__4_;
14387 MenhirLib.EngineTypes.next = {
14388 MenhirLib.EngineTypes.semv = sl;
14389 MenhirLib.EngineTypes.startp = _startpos_sl_;
14390 MenhirLib.EngineTypes.endp = _endpos_sl_;
14391 MenhirLib.EngineTypes.next = {
14392 MenhirLib.EngineTypes.semv = s1;
14393 MenhirLib.EngineTypes.startp = _startpos_s1_;
14394 MenhirLib.EngineTypes.endp = _endpos_s1_;
14395 MenhirLib.EngineTypes.next = {
14396 MenhirLib.EngineTypes.state = _menhir_s;
14397 MenhirLib.EngineTypes.startp = _startpos__1_;
14398 MenhirLib.EngineTypes.endp = _endpos__1_;
14399 MenhirLib.EngineTypes.next = _menhir_stack;
14400 };
14401 };
14402 };
14403 } = _menhir_stack in
14404 let sl : 'tv_list_iso_iso_statement__ = Obj.magic sl in
14405 let s1 : 'tv_iso_statement = Obj.magic s1 in
14406 let _startpos = _startpos__1_ in
14407 let _endpos = _endpos__4_ in
14408 let _v : (
14409 # 210 "parser_cocci_menhir.mly"
14410 (Ast0_cocci.anything list list)
14411 # 14385 "parser_cocci_menhir.ml"
14412 ) =
14413 # 2395 "parser_cocci_menhir.mly"
14414 ( let fn x = Ast0.StmtTag x in P.iso_adjust fn fn s1 sl )
14415 # 14389 "parser_cocci_menhir.ml"
14416 in
14417 _menhir_env.MenhirLib.EngineTypes.stack <- {
14418 MenhirLib.EngineTypes.state = _menhir_s;
14419 MenhirLib.EngineTypes.semv = Obj.repr _v;
14420 MenhirLib.EngineTypes.startp = _startpos;
14421 MenhirLib.EngineTypes.endp = _endpos;
14422 MenhirLib.EngineTypes.next = _menhir_stack;
14423 });
14424 (fun _menhir_env ->
14425 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14426 let {
14427 MenhirLib.EngineTypes.startp = _startpos__4_;
14428 MenhirLib.EngineTypes.endp = _endpos__4_;
14429 MenhirLib.EngineTypes.next = {
14430 MenhirLib.EngineTypes.semv = tl;
14431 MenhirLib.EngineTypes.startp = _startpos_tl_;
14432 MenhirLib.EngineTypes.endp = _endpos_tl_;
14433 MenhirLib.EngineTypes.next = {
14434 MenhirLib.EngineTypes.semv = t1;
14435 MenhirLib.EngineTypes.startp = _startpos_t1_;
14436 MenhirLib.EngineTypes.endp = _endpos_t1_;
14437 MenhirLib.EngineTypes.next = {
14438 MenhirLib.EngineTypes.state = _menhir_s;
14439 MenhirLib.EngineTypes.startp = _startpos__1_;
14440 MenhirLib.EngineTypes.endp = _endpos__1_;
14441 MenhirLib.EngineTypes.next = _menhir_stack;
14442 };
14443 };
14444 };
14445 } = _menhir_stack in
14446 let tl : 'tv_list_iso_ctype__ = Obj.magic tl in
14447 let t1 : 'tv_ctype = Obj.magic t1 in
14448 let _startpos = _startpos__1_ in
14449 let _endpos = _endpos__4_ in
14450 let _v : (
14451 # 210 "parser_cocci_menhir.mly"
14452 (Ast0_cocci.anything list list)
14453 # 14427 "parser_cocci_menhir.ml"
14454 ) =
14455 # 2397 "parser_cocci_menhir.mly"
14456 ( let fn x = Ast0.TypeCTag x in P.iso_adjust fn fn t1 tl )
14457 # 14431 "parser_cocci_menhir.ml"
14458 in
14459 _menhir_env.MenhirLib.EngineTypes.stack <- {
14460 MenhirLib.EngineTypes.state = _menhir_s;
14461 MenhirLib.EngineTypes.semv = Obj.repr _v;
14462 MenhirLib.EngineTypes.startp = _startpos;
14463 MenhirLib.EngineTypes.endp = _endpos;
14464 MenhirLib.EngineTypes.next = _menhir_stack;
14465 });
14466 (fun _menhir_env ->
14467 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14468 let {
14469 MenhirLib.EngineTypes.startp = _startpos__4_;
14470 MenhirLib.EngineTypes.endp = _endpos__4_;
14471 MenhirLib.EngineTypes.next = {
14472 MenhirLib.EngineTypes.semv = el;
14473 MenhirLib.EngineTypes.startp = _startpos_el_;
14474 MenhirLib.EngineTypes.endp = _endpos_el_;
14475 MenhirLib.EngineTypes.next = {
14476 MenhirLib.EngineTypes.semv = e1;
14477 MenhirLib.EngineTypes.startp = _startpos_e1_;
14478 MenhirLib.EngineTypes.endp = _endpos_e1_;
14479 MenhirLib.EngineTypes.next = {
14480 MenhirLib.EngineTypes.state = _menhir_s;
14481 MenhirLib.EngineTypes.startp = _startpos__1_;
14482 MenhirLib.EngineTypes.endp = _endpos__1_;
14483 MenhirLib.EngineTypes.next = _menhir_stack;
14484 };
14485 };
14486 };
14487 } = _menhir_stack in
14488 let el : 'tv_list_iso_nest_start__ = Obj.magic el in
14489 let e1 : 'tv_nest_start = Obj.magic e1 in
14490 let _startpos = _startpos__1_ in
14491 let _endpos = _endpos__4_ in
14492 let _v : (
14493 # 210 "parser_cocci_menhir.mly"
14494 (Ast0_cocci.anything list list)
14495 # 14469 "parser_cocci_menhir.ml"
14496 ) =
14497 # 2399 "parser_cocci_menhir.mly"
14498 ( let fn x = Ast0.DotsStmtTag x in P.iso_adjust fn fn e1 el )
14499 # 14473 "parser_cocci_menhir.ml"
14500 in
14501 _menhir_env.MenhirLib.EngineTypes.stack <- {
14502 MenhirLib.EngineTypes.state = _menhir_s;
14503 MenhirLib.EngineTypes.semv = Obj.repr _v;
14504 MenhirLib.EngineTypes.startp = _startpos;
14505 MenhirLib.EngineTypes.endp = _endpos;
14506 MenhirLib.EngineTypes.next = _menhir_stack;
14507 });
14508 (fun _menhir_env ->
14509 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14510 let {
14511 MenhirLib.EngineTypes.startp = _startpos__4_;
14512 MenhirLib.EngineTypes.endp = _endpos__4_;
14513 MenhirLib.EngineTypes.next = {
14514 MenhirLib.EngineTypes.semv = dl;
14515 MenhirLib.EngineTypes.startp = _startpos_dl_;
14516 MenhirLib.EngineTypes.endp = _endpos_dl_;
14517 MenhirLib.EngineTypes.next = {
14518 MenhirLib.EngineTypes.semv = d1;
14519 MenhirLib.EngineTypes.startp = _startpos_d1_;
14520 MenhirLib.EngineTypes.endp = _endpos_d1_;
14521 MenhirLib.EngineTypes.next = {
14522 MenhirLib.EngineTypes.state = _menhir_s;
14523 MenhirLib.EngineTypes.startp = _startpos__1_;
14524 MenhirLib.EngineTypes.endp = _endpos__1_;
14525 MenhirLib.EngineTypes.next = _menhir_stack;
14526 };
14527 };
14528 };
14529 } = _menhir_stack in
14530 let dl : 'tv_list_iso_decl_var__ = Obj.magic dl in
14531 let d1 : 'tv_decl_var = Obj.magic d1 in
14532 let _startpos = _startpos__1_ in
14533 let _endpos = _endpos__4_ in
14534 let _v : (
14535 # 210 "parser_cocci_menhir.mly"
14536 (Ast0_cocci.anything list list)
14537 # 14511 "parser_cocci_menhir.ml"
14538 ) =
14539 # 2401 "parser_cocci_menhir.mly"
14540 ( let check_one = function
14541 [x] -> x
14542 | _ ->
14543 raise
14544 (Semantic_cocci.Semantic
14545 "only one variable per declaration in an isomorphism rule") in
14546 let d1 = check_one d1 in
14547 let dl =
14548 List.map
14549 (function
14550 Common.Left x -> Common.Left(check_one x)
14551 | Common.Right x -> Common.Right(check_one x))
14552 dl in
14553 let fn x = Ast0.DeclTag x in P.iso_adjust fn fn d1 dl )
14554 # 14528 "parser_cocci_menhir.ml"
14555 in
14556 _menhir_env.MenhirLib.EngineTypes.stack <- {
14557 MenhirLib.EngineTypes.state = _menhir_s;
14558 MenhirLib.EngineTypes.semv = Obj.repr _v;
14559 MenhirLib.EngineTypes.startp = _startpos;
14560 MenhirLib.EngineTypes.endp = _endpos;
14561 MenhirLib.EngineTypes.next = _menhir_stack;
14562 });
14563 (fun _menhir_env ->
14564 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14565 let {
14566 MenhirLib.EngineTypes.state = _menhir_s;
14567 MenhirLib.EngineTypes.semv = m;
14568 MenhirLib.EngineTypes.startp = _startpos_m_;
14569 MenhirLib.EngineTypes.endp = _endpos_m_;
14570 MenhirLib.EngineTypes.next = _menhir_stack;
14571 } = _menhir_stack in
14572 let m : 'tv_metadec = Obj.magic m in
14573 let _startpos = _startpos_m_ in
14574 let _endpos = _endpos_m_ in
14575 let _v : (
14576 # 213 "parser_cocci_menhir.mly"
14577 ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
14578 # 14552 "parser_cocci_menhir.ml"
14579 ) =
14580 # 230 "parser_cocci_menhir.mly"
14581 ( m "" )
14582 # 14556 "parser_cocci_menhir.ml"
14583 in
14584 _menhir_env.MenhirLib.EngineTypes.stack <- {
14585 MenhirLib.EngineTypes.state = _menhir_s;
14586 MenhirLib.EngineTypes.semv = Obj.repr _v;
14587 MenhirLib.EngineTypes.startp = _startpos;
14588 MenhirLib.EngineTypes.endp = _endpos;
14589 MenhirLib.EngineTypes.next = _menhir_stack;
14590 });
14591 (fun _menhir_env ->
14592 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14593 let {
14594 MenhirLib.EngineTypes.startp = _startpos__2_;
14595 MenhirLib.EngineTypes.endp = _endpos__2_;
14596 MenhirLib.EngineTypes.next = {
14597 MenhirLib.EngineTypes.state = _menhir_s;
14598 MenhirLib.EngineTypes.semv = nm;
14599 MenhirLib.EngineTypes.startp = _startpos_nm_;
14600 MenhirLib.EngineTypes.endp = _endpos_nm_;
14601 MenhirLib.EngineTypes.next = _menhir_stack;
14602 };
14603 } = _menhir_stack in
14604 let nm : 'tv_pure_ident = Obj.magic nm in
14605 let _startpos = _startpos_nm_ in
14606 let _endpos = _endpos__2_ in
14607 let _v : (
14608 # 197 "parser_cocci_menhir.mly"
14609 (Ast_cocci.rulename)
14610 # 14584 "parser_cocci_menhir.ml"
14611 ) =
14612 # 245 "parser_cocci_menhir.mly"
14613 ( P.make_iso_rule_name_result (P.id2name nm) )
14614 # 14588 "parser_cocci_menhir.ml"
14615 in
14616 _menhir_env.MenhirLib.EngineTypes.stack <- {
14617 MenhirLib.EngineTypes.state = _menhir_s;
14618 MenhirLib.EngineTypes.semv = Obj.repr _v;
14619 MenhirLib.EngineTypes.startp = _startpos;
14620 MenhirLib.EngineTypes.endp = _endpos;
14621 MenhirLib.EngineTypes.next = _menhir_stack;
14622 });
14623 (fun _menhir_env ->
14624 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14625 let {
14626 MenhirLib.EngineTypes.state = _menhir_s;
14627 MenhirLib.EngineTypes.semv = _1;
14628 MenhirLib.EngineTypes.startp = _startpos__1_;
14629 MenhirLib.EngineTypes.endp = _endpos__1_;
14630 MenhirLib.EngineTypes.next = _menhir_stack;
14631 } = _menhir_stack in
14632 let _1 : 'tv_statement = Obj.magic _1 in
14633 let _startpos = _startpos__1_ in
14634 let _endpos = _endpos__1_ in
14635 let _v : 'tv_iso_statement =
14636 # 1183 "parser_cocci_menhir.mly"
14637 ( _1 )
14638 # 14612 "parser_cocci_menhir.ml"
14639 in
14640 _menhir_env.MenhirLib.EngineTypes.stack <- {
14641 MenhirLib.EngineTypes.state = _menhir_s;
14642 MenhirLib.EngineTypes.semv = Obj.repr _v;
14643 MenhirLib.EngineTypes.startp = _startpos;
14644 MenhirLib.EngineTypes.endp = _endpos;
14645 MenhirLib.EngineTypes.next = _menhir_stack;
14646 });
14647 (fun _menhir_env ->
14648 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14649 let {
14650 MenhirLib.EngineTypes.state = _menhir_s;
14651 MenhirLib.EngineTypes.semv = _1;
14652 MenhirLib.EngineTypes.startp = _startpos__1_;
14653 MenhirLib.EngineTypes.endp = _endpos__1_;
14654 MenhirLib.EngineTypes.next = _menhir_stack;
14655 } = _menhir_stack in
14656 let _1 : 'tv_decl_var = Obj.magic _1 in
14657 let _startpos = _startpos__1_ in
14658 let _endpos = _endpos__1_ in
14659 let _v : 'tv_iso_statement =
14660 # 1185 "parser_cocci_menhir.mly"
14661 ( match _1 with
14662 [decl] ->
14663 Ast0.wrap
14664 (Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),decl))
14665 | _ -> failwith "exactly one decl allowed in statement iso" )
14666 # 14640 "parser_cocci_menhir.ml"
14667 in
14668 _menhir_env.MenhirLib.EngineTypes.stack <- {
14669 MenhirLib.EngineTypes.state = _menhir_s;
14670 MenhirLib.EngineTypes.semv = Obj.repr _v;
14671 MenhirLib.EngineTypes.startp = _startpos;
14672 MenhirLib.EngineTypes.endp = _endpos;
14673 MenhirLib.EngineTypes.next = _menhir_stack;
14674 });
14675 (fun _menhir_env ->
14676 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14677 let {
14678 MenhirLib.EngineTypes.state = _menhir_s;
14679 MenhirLib.EngineTypes.semv = _1;
14680 MenhirLib.EngineTypes.startp = _startpos__1_;
14681 MenhirLib.EngineTypes.endp = _endpos__1_;
14682 MenhirLib.EngineTypes.next = _menhir_stack;
14683 } = _menhir_stack in
14684 let _1 : (
14685 # 101 "parser_cocci_menhir.mly"
14686 (string * Data.clt)
14687 # 14661 "parser_cocci_menhir.ml"
14688 ) = Obj.magic _1 in
14689 let _startpos = _startpos__1_ in
14690 let _endpos = _endpos__1_ in
14691 let _v : 'tv_iter_ident =
14692 # 2058 "parser_cocci_menhir.mly"
14693 ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
14694 # 14668 "parser_cocci_menhir.ml"
14695 in
14696 _menhir_env.MenhirLib.EngineTypes.stack <- {
14697 MenhirLib.EngineTypes.state = _menhir_s;
14698 MenhirLib.EngineTypes.semv = Obj.repr _v;
14699 MenhirLib.EngineTypes.startp = _startpos;
14700 MenhirLib.EngineTypes.endp = _endpos;
14701 MenhirLib.EngineTypes.next = _menhir_stack;
14702 });
14703 (fun _menhir_env ->
14704 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14705 let {
14706 MenhirLib.EngineTypes.state = _menhir_s;
14707 MenhirLib.EngineTypes.semv = _1;
14708 MenhirLib.EngineTypes.startp = _startpos__1_;
14709 MenhirLib.EngineTypes.endp = _endpos__1_;
14710 MenhirLib.EngineTypes.next = _menhir_stack;
14711 } = _menhir_stack in
14712 let _1 : (
14713 # 106 "parser_cocci_menhir.mly"
14714 (Parse_aux.idinfo)
14715 # 14689 "parser_cocci_menhir.ml"
14716 ) = Obj.magic _1 in
14717 let _startpos = _startpos__1_ in
14718 let _endpos = _endpos__1_ in
14719 let _v : 'tv_iter_ident =
14720 # 2060 "parser_cocci_menhir.mly"
14721 ( let (nm,constraints,pure,clt) = _1 in
14722 Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,Ast.NoVal,pure)) )
14723 # 14697 "parser_cocci_menhir.ml"
14724 in
14725 _menhir_env.MenhirLib.EngineTypes.stack <- {
14726 MenhirLib.EngineTypes.state = _menhir_s;
14727 MenhirLib.EngineTypes.semv = Obj.repr _v;
14728 MenhirLib.EngineTypes.startp = _startpos;
14729 MenhirLib.EngineTypes.endp = _endpos;
14730 MenhirLib.EngineTypes.next = _menhir_stack;
14731 });
14732 (fun _menhir_env ->
14733 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14734 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14735 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14736 let _endpos = _startpos in
14737 let _v : 'tv_list_TMul_ =
14738 # 114 "standard.mly"
14739 ( [] )
14740 # 14714 "parser_cocci_menhir.ml"
14741 in
14742 _menhir_env.MenhirLib.EngineTypes.stack <- {
14743 MenhirLib.EngineTypes.state = _menhir_s;
14744 MenhirLib.EngineTypes.semv = Obj.repr _v;
14745 MenhirLib.EngineTypes.startp = _startpos;
14746 MenhirLib.EngineTypes.endp = _endpos;
14747 MenhirLib.EngineTypes.next = _menhir_stack;
14748 });
14749 (fun _menhir_env ->
14750 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14751 let {
14752 MenhirLib.EngineTypes.semv = xs;
14753 MenhirLib.EngineTypes.startp = _startpos_xs_;
14754 MenhirLib.EngineTypes.endp = _endpos_xs_;
14755 MenhirLib.EngineTypes.next = {
14756 MenhirLib.EngineTypes.state = _menhir_s;
14757 MenhirLib.EngineTypes.semv = x;
14758 MenhirLib.EngineTypes.startp = _startpos_x_;
14759 MenhirLib.EngineTypes.endp = _endpos_x_;
14760 MenhirLib.EngineTypes.next = _menhir_stack;
14761 };
14762 } = _menhir_stack in
14763 let xs : 'tv_list_TMul_ = Obj.magic xs in
14764 let x : (
14765 # 145 "parser_cocci_menhir.mly"
14766 (Data.clt)
14767 # 14741 "parser_cocci_menhir.ml"
14768 ) = Obj.magic x in
14769 let _startpos = _startpos_x_ in
14770 let _endpos = _endpos_xs_ in
14771 let _v : 'tv_list_TMul_ =
14772 # 116 "standard.mly"
14773 ( x :: xs )
14774 # 14748 "parser_cocci_menhir.ml"
14775 in
14776 _menhir_env.MenhirLib.EngineTypes.stack <- {
14777 MenhirLib.EngineTypes.state = _menhir_s;
14778 MenhirLib.EngineTypes.semv = Obj.repr _v;
14779 MenhirLib.EngineTypes.startp = _startpos;
14780 MenhirLib.EngineTypes.endp = _endpos;
14781 MenhirLib.EngineTypes.next = _menhir_stack;
14782 });
14783 (fun _menhir_env ->
14784 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14785 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14786 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14787 let _endpos = _startpos in
14788 let _v : 'tv_list_array_dec_ =
14789 # 114 "standard.mly"
14790 ( [] )
14791 # 14765 "parser_cocci_menhir.ml"
14792 in
14793 _menhir_env.MenhirLib.EngineTypes.stack <- {
14794 MenhirLib.EngineTypes.state = _menhir_s;
14795 MenhirLib.EngineTypes.semv = Obj.repr _v;
14796 MenhirLib.EngineTypes.startp = _startpos;
14797 MenhirLib.EngineTypes.endp = _endpos;
14798 MenhirLib.EngineTypes.next = _menhir_stack;
14799 });
14800 (fun _menhir_env ->
14801 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14802 let {
14803 MenhirLib.EngineTypes.semv = xs;
14804 MenhirLib.EngineTypes.startp = _startpos_xs_;
14805 MenhirLib.EngineTypes.endp = _endpos_xs_;
14806 MenhirLib.EngineTypes.next = {
14807 MenhirLib.EngineTypes.state = _menhir_s;
14808 MenhirLib.EngineTypes.semv = x;
14809 MenhirLib.EngineTypes.startp = _startpos_x_;
14810 MenhirLib.EngineTypes.endp = _endpos_x_;
14811 MenhirLib.EngineTypes.next = _menhir_stack;
14812 };
14813 } = _menhir_stack in
14814 let xs : 'tv_list_array_dec_ = Obj.magic xs in
14815 let x : 'tv_array_dec = Obj.magic x in
14816 let _startpos = _startpos_x_ in
14817 let _endpos = _endpos_xs_ in
14818 let _v : 'tv_list_array_dec_ =
14819 # 116 "standard.mly"
14820 ( x :: xs )
14821 # 14795 "parser_cocci_menhir.ml"
14822 in
14823 _menhir_env.MenhirLib.EngineTypes.stack <- {
14824 MenhirLib.EngineTypes.state = _menhir_s;
14825 MenhirLib.EngineTypes.semv = Obj.repr _v;
14826 MenhirLib.EngineTypes.startp = _startpos;
14827 MenhirLib.EngineTypes.endp = _endpos;
14828 MenhirLib.EngineTypes.next = _menhir_stack;
14829 });
14830 (fun _menhir_env ->
14831 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14832 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14833 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14834 let _endpos = _startpos in
14835 let _v : 'tv_list_case_line_ =
14836 # 114 "standard.mly"
14837 ( [] )
14838 # 14812 "parser_cocci_menhir.ml"
14839 in
14840 _menhir_env.MenhirLib.EngineTypes.stack <- {
14841 MenhirLib.EngineTypes.state = _menhir_s;
14842 MenhirLib.EngineTypes.semv = Obj.repr _v;
14843 MenhirLib.EngineTypes.startp = _startpos;
14844 MenhirLib.EngineTypes.endp = _endpos;
14845 MenhirLib.EngineTypes.next = _menhir_stack;
14846 });
14847 (fun _menhir_env ->
14848 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14849 let {
14850 MenhirLib.EngineTypes.semv = xs;
14851 MenhirLib.EngineTypes.startp = _startpos_xs_;
14852 MenhirLib.EngineTypes.endp = _endpos_xs_;
14853 MenhirLib.EngineTypes.next = {
14854 MenhirLib.EngineTypes.state = _menhir_s;
14855 MenhirLib.EngineTypes.semv = x;
14856 MenhirLib.EngineTypes.startp = _startpos_x_;
14857 MenhirLib.EngineTypes.endp = _endpos_x_;
14858 MenhirLib.EngineTypes.next = _menhir_stack;
14859 };
14860 } = _menhir_stack in
14861 let xs : 'tv_list_case_line_ = Obj.magic xs in
14862 let x : 'tv_case_line = Obj.magic x in
14863 let _startpos = _startpos_x_ in
14864 let _endpos = _endpos_xs_ in
14865 let _v : 'tv_list_case_line_ =
14866 # 116 "standard.mly"
14867 ( x :: xs )
14868 # 14842 "parser_cocci_menhir.ml"
14869 in
14870 _menhir_env.MenhirLib.EngineTypes.stack <- {
14871 MenhirLib.EngineTypes.state = _menhir_s;
14872 MenhirLib.EngineTypes.semv = Obj.repr _v;
14873 MenhirLib.EngineTypes.startp = _startpos;
14874 MenhirLib.EngineTypes.endp = _endpos;
14875 MenhirLib.EngineTypes.next = _menhir_stack;
14876 });
14877 (fun _menhir_env ->
14878 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14879 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14880 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14881 let _endpos = _startpos in
14882 let _v : 'tv_list_decl_var_ =
14883 # 114 "standard.mly"
14884 ( [] )
14885 # 14859 "parser_cocci_menhir.ml"
14886 in
14887 _menhir_env.MenhirLib.EngineTypes.stack <- {
14888 MenhirLib.EngineTypes.state = _menhir_s;
14889 MenhirLib.EngineTypes.semv = Obj.repr _v;
14890 MenhirLib.EngineTypes.startp = _startpos;
14891 MenhirLib.EngineTypes.endp = _endpos;
14892 MenhirLib.EngineTypes.next = _menhir_stack;
14893 });
14894 (fun _menhir_env ->
14895 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14896 let {
14897 MenhirLib.EngineTypes.semv = xs;
14898 MenhirLib.EngineTypes.startp = _startpos_xs_;
14899 MenhirLib.EngineTypes.endp = _endpos_xs_;
14900 MenhirLib.EngineTypes.next = {
14901 MenhirLib.EngineTypes.state = _menhir_s;
14902 MenhirLib.EngineTypes.semv = x;
14903 MenhirLib.EngineTypes.startp = _startpos_x_;
14904 MenhirLib.EngineTypes.endp = _endpos_x_;
14905 MenhirLib.EngineTypes.next = _menhir_stack;
14906 };
14907 } = _menhir_stack in
14908 let xs : 'tv_list_decl_var_ = Obj.magic xs in
14909 let x : 'tv_decl_var = Obj.magic x in
14910 let _startpos = _startpos_x_ in
14911 let _endpos = _endpos_xs_ in
14912 let _v : 'tv_list_decl_var_ =
14913 # 116 "standard.mly"
14914 ( x :: xs )
14915 # 14889 "parser_cocci_menhir.ml"
14916 in
14917 _menhir_env.MenhirLib.EngineTypes.stack <- {
14918 MenhirLib.EngineTypes.state = _menhir_s;
14919 MenhirLib.EngineTypes.semv = Obj.repr _v;
14920 MenhirLib.EngineTypes.startp = _startpos;
14921 MenhirLib.EngineTypes.endp = _endpos;
14922 MenhirLib.EngineTypes.next = _menhir_stack;
14923 });
14924 (fun _menhir_env ->
14925 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14926 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14927 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14928 let _endpos = _startpos in
14929 let _v : 'tv_list_designator_ =
14930 # 114 "standard.mly"
14931 ( [] )
14932 # 14906 "parser_cocci_menhir.ml"
14933 in
14934 _menhir_env.MenhirLib.EngineTypes.stack <- {
14935 MenhirLib.EngineTypes.state = _menhir_s;
14936 MenhirLib.EngineTypes.semv = Obj.repr _v;
14937 MenhirLib.EngineTypes.startp = _startpos;
14938 MenhirLib.EngineTypes.endp = _endpos;
14939 MenhirLib.EngineTypes.next = _menhir_stack;
14940 });
14941 (fun _menhir_env ->
14942 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14943 let {
14944 MenhirLib.EngineTypes.semv = xs;
14945 MenhirLib.EngineTypes.startp = _startpos_xs_;
14946 MenhirLib.EngineTypes.endp = _endpos_xs_;
14947 MenhirLib.EngineTypes.next = {
14948 MenhirLib.EngineTypes.state = _menhir_s;
14949 MenhirLib.EngineTypes.semv = x;
14950 MenhirLib.EngineTypes.startp = _startpos_x_;
14951 MenhirLib.EngineTypes.endp = _endpos_x_;
14952 MenhirLib.EngineTypes.next = _menhir_stack;
14953 };
14954 } = _menhir_stack in
14955 let xs : 'tv_list_designator_ = Obj.magic xs in
14956 let x : 'tv_designator = Obj.magic x in
14957 let _startpos = _startpos_x_ in
14958 let _endpos = _endpos_xs_ in
14959 let _v : 'tv_list_designator_ =
14960 # 116 "standard.mly"
14961 ( x :: xs )
14962 # 14936 "parser_cocci_menhir.ml"
14963 in
14964 _menhir_env.MenhirLib.EngineTypes.stack <- {
14965 MenhirLib.EngineTypes.state = _menhir_s;
14966 MenhirLib.EngineTypes.semv = Obj.repr _v;
14967 MenhirLib.EngineTypes.startp = _startpos;
14968 MenhirLib.EngineTypes.endp = _endpos;
14969 MenhirLib.EngineTypes.next = _menhir_stack;
14970 });
14971 (fun _menhir_env ->
14972 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14973 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
14974 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
14975 let _endpos = _startpos in
14976 let _v : 'tv_list_incl_ =
14977 # 114 "standard.mly"
14978 ( [] )
14979 # 14953 "parser_cocci_menhir.ml"
14980 in
14981 _menhir_env.MenhirLib.EngineTypes.stack <- {
14982 MenhirLib.EngineTypes.state = _menhir_s;
14983 MenhirLib.EngineTypes.semv = Obj.repr _v;
14984 MenhirLib.EngineTypes.startp = _startpos;
14985 MenhirLib.EngineTypes.endp = _endpos;
14986 MenhirLib.EngineTypes.next = _menhir_stack;
14987 });
14988 (fun _menhir_env ->
14989 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
14990 let {
14991 MenhirLib.EngineTypes.semv = xs;
14992 MenhirLib.EngineTypes.startp = _startpos_xs_;
14993 MenhirLib.EngineTypes.endp = _endpos_xs_;
14994 MenhirLib.EngineTypes.next = {
14995 MenhirLib.EngineTypes.state = _menhir_s;
14996 MenhirLib.EngineTypes.semv = x;
14997 MenhirLib.EngineTypes.startp = _startpos_x_;
14998 MenhirLib.EngineTypes.endp = _endpos_x_;
14999 MenhirLib.EngineTypes.next = _menhir_stack;
15000 };
15001 } = _menhir_stack in
15002 let xs : 'tv_list_incl_ = Obj.magic xs in
15003 let x : 'tv_incl = Obj.magic x in
15004 let _startpos = _startpos_x_ in
15005 let _endpos = _endpos_xs_ in
15006 let _v : 'tv_list_incl_ =
15007 # 116 "standard.mly"
15008 ( x :: xs )
15009 # 14983 "parser_cocci_menhir.ml"
15010 in
15011 _menhir_env.MenhirLib.EngineTypes.stack <- {
15012 MenhirLib.EngineTypes.state = _menhir_s;
15013 MenhirLib.EngineTypes.semv = Obj.repr _v;
15014 MenhirLib.EngineTypes.startp = _startpos;
15015 MenhirLib.EngineTypes.endp = _endpos;
15016 MenhirLib.EngineTypes.next = _menhir_stack;
15017 });
15018 (fun _menhir_env ->
15019 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15020 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15021 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15022 let _endpos = _startpos in
15023 let _v : 'tv_list_iso_ctype__ =
15024 # 114 "standard.mly"
15025 ( [] )
15026 # 15000 "parser_cocci_menhir.ml"
15027 in
15028 _menhir_env.MenhirLib.EngineTypes.stack <- {
15029 MenhirLib.EngineTypes.state = _menhir_s;
15030 MenhirLib.EngineTypes.semv = Obj.repr _v;
15031 MenhirLib.EngineTypes.startp = _startpos;
15032 MenhirLib.EngineTypes.endp = _endpos;
15033 MenhirLib.EngineTypes.next = _menhir_stack;
15034 });
15035 (fun _menhir_env ->
15036 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15037 let {
15038 MenhirLib.EngineTypes.semv = xs;
15039 MenhirLib.EngineTypes.startp = _startpos_xs_;
15040 MenhirLib.EngineTypes.endp = _endpos_xs_;
15041 MenhirLib.EngineTypes.next = {
15042 MenhirLib.EngineTypes.state = _menhir_s;
15043 MenhirLib.EngineTypes.semv = x;
15044 MenhirLib.EngineTypes.startp = _startpos_x_;
15045 MenhirLib.EngineTypes.endp = _endpos_x_;
15046 MenhirLib.EngineTypes.next = _menhir_stack;
15047 };
15048 } = _menhir_stack in
15049 let xs : 'tv_list_iso_ctype__ = Obj.magic xs in
15050 let x : 'tv_iso_ctype_ = Obj.magic x in
15051 let _startpos = _startpos_x_ in
15052 let _endpos = _endpos_xs_ in
15053 let _v : 'tv_list_iso_ctype__ =
15054 # 116 "standard.mly"
15055 ( x :: xs )
15056 # 15030 "parser_cocci_menhir.ml"
15057 in
15058 _menhir_env.MenhirLib.EngineTypes.stack <- {
15059 MenhirLib.EngineTypes.state = _menhir_s;
15060 MenhirLib.EngineTypes.semv = Obj.repr _v;
15061 MenhirLib.EngineTypes.startp = _startpos;
15062 MenhirLib.EngineTypes.endp = _endpos;
15063 MenhirLib.EngineTypes.next = _menhir_stack;
15064 });
15065 (fun _menhir_env ->
15066 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15067 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15068 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15069 let _endpos = _startpos in
15070 let _v : 'tv_list_iso_decl_var__ =
15071 # 114 "standard.mly"
15072 ( [] )
15073 # 15047 "parser_cocci_menhir.ml"
15074 in
15075 _menhir_env.MenhirLib.EngineTypes.stack <- {
15076 MenhirLib.EngineTypes.state = _menhir_s;
15077 MenhirLib.EngineTypes.semv = Obj.repr _v;
15078 MenhirLib.EngineTypes.startp = _startpos;
15079 MenhirLib.EngineTypes.endp = _endpos;
15080 MenhirLib.EngineTypes.next = _menhir_stack;
15081 });
15082 (fun _menhir_env ->
15083 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15084 let {
15085 MenhirLib.EngineTypes.semv = xs;
15086 MenhirLib.EngineTypes.startp = _startpos_xs_;
15087 MenhirLib.EngineTypes.endp = _endpos_xs_;
15088 MenhirLib.EngineTypes.next = {
15089 MenhirLib.EngineTypes.state = _menhir_s;
15090 MenhirLib.EngineTypes.semv = x;
15091 MenhirLib.EngineTypes.startp = _startpos_x_;
15092 MenhirLib.EngineTypes.endp = _endpos_x_;
15093 MenhirLib.EngineTypes.next = _menhir_stack;
15094 };
15095 } = _menhir_stack in
15096 let xs : 'tv_list_iso_decl_var__ = Obj.magic xs in
15097 let x : 'tv_iso_decl_var_ = Obj.magic x in
15098 let _startpos = _startpos_x_ in
15099 let _endpos = _endpos_xs_ in
15100 let _v : 'tv_list_iso_decl_var__ =
15101 # 116 "standard.mly"
15102 ( x :: xs )
15103 # 15077 "parser_cocci_menhir.ml"
15104 in
15105 _menhir_env.MenhirLib.EngineTypes.stack <- {
15106 MenhirLib.EngineTypes.state = _menhir_s;
15107 MenhirLib.EngineTypes.semv = Obj.repr _v;
15108 MenhirLib.EngineTypes.startp = _startpos;
15109 MenhirLib.EngineTypes.endp = _endpos;
15110 MenhirLib.EngineTypes.next = _menhir_stack;
15111 });
15112 (fun _menhir_env ->
15113 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15114 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15115 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15116 let _endpos = _startpos in
15117 let _v : 'tv_list_iso_eexpr__ =
15118 # 114 "standard.mly"
15119 ( [] )
15120 # 15094 "parser_cocci_menhir.ml"
15121 in
15122 _menhir_env.MenhirLib.EngineTypes.stack <- {
15123 MenhirLib.EngineTypes.state = _menhir_s;
15124 MenhirLib.EngineTypes.semv = Obj.repr _v;
15125 MenhirLib.EngineTypes.startp = _startpos;
15126 MenhirLib.EngineTypes.endp = _endpos;
15127 MenhirLib.EngineTypes.next = _menhir_stack;
15128 });
15129 (fun _menhir_env ->
15130 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15131 let {
15132 MenhirLib.EngineTypes.semv = xs;
15133 MenhirLib.EngineTypes.startp = _startpos_xs_;
15134 MenhirLib.EngineTypes.endp = _endpos_xs_;
15135 MenhirLib.EngineTypes.next = {
15136 MenhirLib.EngineTypes.state = _menhir_s;
15137 MenhirLib.EngineTypes.semv = x;
15138 MenhirLib.EngineTypes.startp = _startpos_x_;
15139 MenhirLib.EngineTypes.endp = _endpos_x_;
15140 MenhirLib.EngineTypes.next = _menhir_stack;
15141 };
15142 } = _menhir_stack in
15143 let xs : 'tv_list_iso_eexpr__ = Obj.magic xs in
15144 let x : 'tv_iso_eexpr_ = Obj.magic x in
15145 let _startpos = _startpos_x_ in
15146 let _endpos = _endpos_xs_ in
15147 let _v : 'tv_list_iso_eexpr__ =
15148 # 116 "standard.mly"
15149 ( x :: xs )
15150 # 15124 "parser_cocci_menhir.ml"
15151 in
15152 _menhir_env.MenhirLib.EngineTypes.stack <- {
15153 MenhirLib.EngineTypes.state = _menhir_s;
15154 MenhirLib.EngineTypes.semv = Obj.repr _v;
15155 MenhirLib.EngineTypes.startp = _startpos;
15156 MenhirLib.EngineTypes.endp = _endpos;
15157 MenhirLib.EngineTypes.next = _menhir_stack;
15158 });
15159 (fun _menhir_env ->
15160 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15161 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15162 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15163 let _endpos = _startpos in
15164 let _v : 'tv_list_iso_iso_statement__ =
15165 # 114 "standard.mly"
15166 ( [] )
15167 # 15141 "parser_cocci_menhir.ml"
15168 in
15169 _menhir_env.MenhirLib.EngineTypes.stack <- {
15170 MenhirLib.EngineTypes.state = _menhir_s;
15171 MenhirLib.EngineTypes.semv = Obj.repr _v;
15172 MenhirLib.EngineTypes.startp = _startpos;
15173 MenhirLib.EngineTypes.endp = _endpos;
15174 MenhirLib.EngineTypes.next = _menhir_stack;
15175 });
15176 (fun _menhir_env ->
15177 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15178 let {
15179 MenhirLib.EngineTypes.semv = xs;
15180 MenhirLib.EngineTypes.startp = _startpos_xs_;
15181 MenhirLib.EngineTypes.endp = _endpos_xs_;
15182 MenhirLib.EngineTypes.next = {
15183 MenhirLib.EngineTypes.state = _menhir_s;
15184 MenhirLib.EngineTypes.semv = x;
15185 MenhirLib.EngineTypes.startp = _startpos_x_;
15186 MenhirLib.EngineTypes.endp = _endpos_x_;
15187 MenhirLib.EngineTypes.next = _menhir_stack;
15188 };
15189 } = _menhir_stack in
15190 let xs : 'tv_list_iso_iso_statement__ = Obj.magic xs in
15191 let x : 'tv_iso_iso_statement_ = Obj.magic x in
15192 let _startpos = _startpos_x_ in
15193 let _endpos = _endpos_xs_ in
15194 let _v : 'tv_list_iso_iso_statement__ =
15195 # 116 "standard.mly"
15196 ( x :: xs )
15197 # 15171 "parser_cocci_menhir.ml"
15198 in
15199 _menhir_env.MenhirLib.EngineTypes.stack <- {
15200 MenhirLib.EngineTypes.state = _menhir_s;
15201 MenhirLib.EngineTypes.semv = Obj.repr _v;
15202 MenhirLib.EngineTypes.startp = _startpos;
15203 MenhirLib.EngineTypes.endp = _endpos;
15204 MenhirLib.EngineTypes.next = _menhir_stack;
15205 });
15206 (fun _menhir_env ->
15207 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15208 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15209 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15210 let _endpos = _startpos in
15211 let _v : 'tv_list_iso_nest_start__ =
15212 # 114 "standard.mly"
15213 ( [] )
15214 # 15188 "parser_cocci_menhir.ml"
15215 in
15216 _menhir_env.MenhirLib.EngineTypes.stack <- {
15217 MenhirLib.EngineTypes.state = _menhir_s;
15218 MenhirLib.EngineTypes.semv = Obj.repr _v;
15219 MenhirLib.EngineTypes.startp = _startpos;
15220 MenhirLib.EngineTypes.endp = _endpos;
15221 MenhirLib.EngineTypes.next = _menhir_stack;
15222 });
15223 (fun _menhir_env ->
15224 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15225 let {
15226 MenhirLib.EngineTypes.semv = xs;
15227 MenhirLib.EngineTypes.startp = _startpos_xs_;
15228 MenhirLib.EngineTypes.endp = _endpos_xs_;
15229 MenhirLib.EngineTypes.next = {
15230 MenhirLib.EngineTypes.state = _menhir_s;
15231 MenhirLib.EngineTypes.semv = x;
15232 MenhirLib.EngineTypes.startp = _startpos_x_;
15233 MenhirLib.EngineTypes.endp = _endpos_x_;
15234 MenhirLib.EngineTypes.next = _menhir_stack;
15235 };
15236 } = _menhir_stack in
15237 let xs : 'tv_list_iso_nest_start__ = Obj.magic xs in
15238 let x : 'tv_iso_nest_start_ = Obj.magic x in
15239 let _startpos = _startpos_x_ in
15240 let _endpos = _endpos_xs_ in
15241 let _v : 'tv_list_iso_nest_start__ =
15242 # 116 "standard.mly"
15243 ( x :: xs )
15244 # 15218 "parser_cocci_menhir.ml"
15245 in
15246 _menhir_env.MenhirLib.EngineTypes.stack <- {
15247 MenhirLib.EngineTypes.state = _menhir_s;
15248 MenhirLib.EngineTypes.semv = Obj.repr _v;
15249 MenhirLib.EngineTypes.startp = _startpos;
15250 MenhirLib.EngineTypes.endp = _endpos;
15251 MenhirLib.EngineTypes.next = _menhir_stack;
15252 });
15253 (fun _menhir_env ->
15254 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15255 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15256 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15257 let _endpos = _startpos in
15258 let _v : 'tv_list_mul_ =
15259 # 114 "standard.mly"
15260 ( [] )
15261 # 15235 "parser_cocci_menhir.ml"
15262 in
15263 _menhir_env.MenhirLib.EngineTypes.stack <- {
15264 MenhirLib.EngineTypes.state = _menhir_s;
15265 MenhirLib.EngineTypes.semv = Obj.repr _v;
15266 MenhirLib.EngineTypes.startp = _startpos;
15267 MenhirLib.EngineTypes.endp = _endpos;
15268 MenhirLib.EngineTypes.next = _menhir_stack;
15269 });
15270 (fun _menhir_env ->
15271 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15272 let {
15273 MenhirLib.EngineTypes.semv = xs;
15274 MenhirLib.EngineTypes.startp = _startpos_xs_;
15275 MenhirLib.EngineTypes.endp = _endpos_xs_;
15276 MenhirLib.EngineTypes.next = {
15277 MenhirLib.EngineTypes.state = _menhir_s;
15278 MenhirLib.EngineTypes.semv = x;
15279 MenhirLib.EngineTypes.startp = _startpos_x_;
15280 MenhirLib.EngineTypes.endp = _endpos_x_;
15281 MenhirLib.EngineTypes.next = _menhir_stack;
15282 };
15283 } = _menhir_stack in
15284 let xs : 'tv_list_mul_ = Obj.magic xs in
15285 let x : 'tv_mul = Obj.magic x in
15286 let _startpos = _startpos_x_ in
15287 let _endpos = _endpos_xs_ in
15288 let _v : 'tv_list_mul_ =
15289 # 116 "standard.mly"
15290 ( x :: xs )
15291 # 15265 "parser_cocci_menhir.ml"
15292 in
15293 _menhir_env.MenhirLib.EngineTypes.stack <- {
15294 MenhirLib.EngineTypes.state = _menhir_s;
15295 MenhirLib.EngineTypes.semv = Obj.repr _v;
15296 MenhirLib.EngineTypes.startp = _startpos;
15297 MenhirLib.EngineTypes.endp = _endpos;
15298 MenhirLib.EngineTypes.next = _menhir_stack;
15299 });
15300 (fun _menhir_env ->
15301 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15302 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15303 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15304 let _endpos = _startpos in
15305 let _v : 'tv_list_mzl_ctype__ =
15306 # 114 "standard.mly"
15307 ( [] )
15308 # 15282 "parser_cocci_menhir.ml"
15309 in
15310 _menhir_env.MenhirLib.EngineTypes.stack <- {
15311 MenhirLib.EngineTypes.state = _menhir_s;
15312 MenhirLib.EngineTypes.semv = Obj.repr _v;
15313 MenhirLib.EngineTypes.startp = _startpos;
15314 MenhirLib.EngineTypes.endp = _endpos;
15315 MenhirLib.EngineTypes.next = _menhir_stack;
15316 });
15317 (fun _menhir_env ->
15318 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15319 let {
15320 MenhirLib.EngineTypes.semv = xs;
15321 MenhirLib.EngineTypes.startp = _startpos_xs_;
15322 MenhirLib.EngineTypes.endp = _endpos_xs_;
15323 MenhirLib.EngineTypes.next = {
15324 MenhirLib.EngineTypes.state = _menhir_s;
15325 MenhirLib.EngineTypes.semv = x;
15326 MenhirLib.EngineTypes.startp = _startpos_x_;
15327 MenhirLib.EngineTypes.endp = _endpos_x_;
15328 MenhirLib.EngineTypes.next = _menhir_stack;
15329 };
15330 } = _menhir_stack in
15331 let xs : 'tv_list_mzl_ctype__ = Obj.magic xs in
15332 let x : 'tv_mzl_ctype_ = Obj.magic x in
15333 let _startpos = _startpos_x_ in
15334 let _endpos = _endpos_xs_ in
15335 let _v : 'tv_list_mzl_ctype__ =
15336 # 116 "standard.mly"
15337 ( x :: xs )
15338 # 15312 "parser_cocci_menhir.ml"
15339 in
15340 _menhir_env.MenhirLib.EngineTypes.stack <- {
15341 MenhirLib.EngineTypes.state = _menhir_s;
15342 MenhirLib.EngineTypes.semv = Obj.repr _v;
15343 MenhirLib.EngineTypes.startp = _startpos;
15344 MenhirLib.EngineTypes.endp = _endpos;
15345 MenhirLib.EngineTypes.next = _menhir_stack;
15346 });
15347 (fun _menhir_env ->
15348 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15349 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15350 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15351 let _endpos = _startpos in
15352 let _v : 'tv_list_mzl_disj_ident__ =
15353 # 114 "standard.mly"
15354 ( [] )
15355 # 15329 "parser_cocci_menhir.ml"
15356 in
15357 _menhir_env.MenhirLib.EngineTypes.stack <- {
15358 MenhirLib.EngineTypes.state = _menhir_s;
15359 MenhirLib.EngineTypes.semv = Obj.repr _v;
15360 MenhirLib.EngineTypes.startp = _startpos;
15361 MenhirLib.EngineTypes.endp = _endpos;
15362 MenhirLib.EngineTypes.next = _menhir_stack;
15363 });
15364 (fun _menhir_env ->
15365 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15366 let {
15367 MenhirLib.EngineTypes.semv = xs;
15368 MenhirLib.EngineTypes.startp = _startpos_xs_;
15369 MenhirLib.EngineTypes.endp = _endpos_xs_;
15370 MenhirLib.EngineTypes.next = {
15371 MenhirLib.EngineTypes.state = _menhir_s;
15372 MenhirLib.EngineTypes.semv = x;
15373 MenhirLib.EngineTypes.startp = _startpos_x_;
15374 MenhirLib.EngineTypes.endp = _endpos_x_;
15375 MenhirLib.EngineTypes.next = _menhir_stack;
15376 };
15377 } = _menhir_stack in
15378 let xs : 'tv_list_mzl_disj_ident__ = Obj.magic xs in
15379 let x : 'tv_mzl_disj_ident_ = Obj.magic x in
15380 let _startpos = _startpos_x_ in
15381 let _endpos = _endpos_xs_ in
15382 let _v : 'tv_list_mzl_disj_ident__ =
15383 # 116 "standard.mly"
15384 ( x :: xs )
15385 # 15359 "parser_cocci_menhir.ml"
15386 in
15387 _menhir_env.MenhirLib.EngineTypes.stack <- {
15388 MenhirLib.EngineTypes.state = _menhir_s;
15389 MenhirLib.EngineTypes.semv = Obj.repr _v;
15390 MenhirLib.EngineTypes.startp = _startpos;
15391 MenhirLib.EngineTypes.endp = _endpos;
15392 MenhirLib.EngineTypes.next = _menhir_stack;
15393 });
15394 (fun _menhir_env ->
15395 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15396 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15397 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15398 let _endpos = _startpos in
15399 let _v : 'tv_list_mzl_eexpr__ =
15400 # 114 "standard.mly"
15401 ( [] )
15402 # 15376 "parser_cocci_menhir.ml"
15403 in
15404 _menhir_env.MenhirLib.EngineTypes.stack <- {
15405 MenhirLib.EngineTypes.state = _menhir_s;
15406 MenhirLib.EngineTypes.semv = Obj.repr _v;
15407 MenhirLib.EngineTypes.startp = _startpos;
15408 MenhirLib.EngineTypes.endp = _endpos;
15409 MenhirLib.EngineTypes.next = _menhir_stack;
15410 });
15411 (fun _menhir_env ->
15412 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15413 let {
15414 MenhirLib.EngineTypes.semv = xs;
15415 MenhirLib.EngineTypes.startp = _startpos_xs_;
15416 MenhirLib.EngineTypes.endp = _endpos_xs_;
15417 MenhirLib.EngineTypes.next = {
15418 MenhirLib.EngineTypes.state = _menhir_s;
15419 MenhirLib.EngineTypes.semv = x;
15420 MenhirLib.EngineTypes.startp = _startpos_x_;
15421 MenhirLib.EngineTypes.endp = _endpos_x_;
15422 MenhirLib.EngineTypes.next = _menhir_stack;
15423 };
15424 } = _menhir_stack in
15425 let xs : 'tv_list_mzl_eexpr__ = Obj.magic xs in
15426 let x : 'tv_mzl_eexpr_ = Obj.magic x in
15427 let _startpos = _startpos_x_ in
15428 let _endpos = _endpos_xs_ in
15429 let _v : 'tv_list_mzl_eexpr__ =
15430 # 116 "standard.mly"
15431 ( x :: xs )
15432 # 15406 "parser_cocci_menhir.ml"
15433 in
15434 _menhir_env.MenhirLib.EngineTypes.stack <- {
15435 MenhirLib.EngineTypes.state = _menhir_s;
15436 MenhirLib.EngineTypes.semv = Obj.repr _v;
15437 MenhirLib.EngineTypes.startp = _startpos;
15438 MenhirLib.EngineTypes.endp = _endpos;
15439 MenhirLib.EngineTypes.next = _menhir_stack;
15440 });
15441 (fun _menhir_env ->
15442 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15443 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15444 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15445 let _endpos = _startpos in
15446 let _v : 'tv_list_mzl_fun_after_dots_or__ =
15447 # 114 "standard.mly"
15448 ( [] )
15449 # 15423 "parser_cocci_menhir.ml"
15450 in
15451 _menhir_env.MenhirLib.EngineTypes.stack <- {
15452 MenhirLib.EngineTypes.state = _menhir_s;
15453 MenhirLib.EngineTypes.semv = Obj.repr _v;
15454 MenhirLib.EngineTypes.startp = _startpos;
15455 MenhirLib.EngineTypes.endp = _endpos;
15456 MenhirLib.EngineTypes.next = _menhir_stack;
15457 });
15458 (fun _menhir_env ->
15459 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15460 let {
15461 MenhirLib.EngineTypes.semv = xs;
15462 MenhirLib.EngineTypes.startp = _startpos_xs_;
15463 MenhirLib.EngineTypes.endp = _endpos_xs_;
15464 MenhirLib.EngineTypes.next = {
15465 MenhirLib.EngineTypes.state = _menhir_s;
15466 MenhirLib.EngineTypes.semv = x;
15467 MenhirLib.EngineTypes.startp = _startpos_x_;
15468 MenhirLib.EngineTypes.endp = _endpos_x_;
15469 MenhirLib.EngineTypes.next = _menhir_stack;
15470 };
15471 } = _menhir_stack in
15472 let xs : 'tv_list_mzl_fun_after_dots_or__ = Obj.magic xs in
15473 let x : 'tv_mzl_fun_after_dots_or_ = Obj.magic x in
15474 let _startpos = _startpos_x_ in
15475 let _endpos = _endpos_xs_ in
15476 let _v : 'tv_list_mzl_fun_after_dots_or__ =
15477 # 116 "standard.mly"
15478 ( x :: xs )
15479 # 15453 "parser_cocci_menhir.ml"
15480 in
15481 _menhir_env.MenhirLib.EngineTypes.stack <- {
15482 MenhirLib.EngineTypes.state = _menhir_s;
15483 MenhirLib.EngineTypes.semv = Obj.repr _v;
15484 MenhirLib.EngineTypes.startp = _startpos;
15485 MenhirLib.EngineTypes.endp = _endpos;
15486 MenhirLib.EngineTypes.next = _menhir_stack;
15487 });
15488 (fun _menhir_env ->
15489 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15490 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15491 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15492 let _endpos = _startpos in
15493 let _v : 'tv_list_mzl_fun_start__ =
15494 # 114 "standard.mly"
15495 ( [] )
15496 # 15470 "parser_cocci_menhir.ml"
15497 in
15498 _menhir_env.MenhirLib.EngineTypes.stack <- {
15499 MenhirLib.EngineTypes.state = _menhir_s;
15500 MenhirLib.EngineTypes.semv = Obj.repr _v;
15501 MenhirLib.EngineTypes.startp = _startpos;
15502 MenhirLib.EngineTypes.endp = _endpos;
15503 MenhirLib.EngineTypes.next = _menhir_stack;
15504 });
15505 (fun _menhir_env ->
15506 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15507 let {
15508 MenhirLib.EngineTypes.semv = xs;
15509 MenhirLib.EngineTypes.startp = _startpos_xs_;
15510 MenhirLib.EngineTypes.endp = _endpos_xs_;
15511 MenhirLib.EngineTypes.next = {
15512 MenhirLib.EngineTypes.state = _menhir_s;
15513 MenhirLib.EngineTypes.semv = x;
15514 MenhirLib.EngineTypes.startp = _startpos_x_;
15515 MenhirLib.EngineTypes.endp = _endpos_x_;
15516 MenhirLib.EngineTypes.next = _menhir_stack;
15517 };
15518 } = _menhir_stack in
15519 let xs : 'tv_list_mzl_fun_start__ = Obj.magic xs in
15520 let x : 'tv_mzl_fun_start_ = Obj.magic x in
15521 let _startpos = _startpos_x_ in
15522 let _endpos = _endpos_xs_ in
15523 let _v : 'tv_list_mzl_fun_start__ =
15524 # 116 "standard.mly"
15525 ( x :: xs )
15526 # 15500 "parser_cocci_menhir.ml"
15527 in
15528 _menhir_env.MenhirLib.EngineTypes.stack <- {
15529 MenhirLib.EngineTypes.state = _menhir_s;
15530 MenhirLib.EngineTypes.semv = Obj.repr _v;
15531 MenhirLib.EngineTypes.startp = _startpos;
15532 MenhirLib.EngineTypes.endp = _endpos;
15533 MenhirLib.EngineTypes.next = _menhir_stack;
15534 });
15535 (fun _menhir_env ->
15536 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15537 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15538 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15539 let _endpos = _startpos in
15540 let _v : 'tv_list_mzl_mctype__ =
15541 # 114 "standard.mly"
15542 ( [] )
15543 # 15517 "parser_cocci_menhir.ml"
15544 in
15545 _menhir_env.MenhirLib.EngineTypes.stack <- {
15546 MenhirLib.EngineTypes.state = _menhir_s;
15547 MenhirLib.EngineTypes.semv = Obj.repr _v;
15548 MenhirLib.EngineTypes.startp = _startpos;
15549 MenhirLib.EngineTypes.endp = _endpos;
15550 MenhirLib.EngineTypes.next = _menhir_stack;
15551 });
15552 (fun _menhir_env ->
15553 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15554 let {
15555 MenhirLib.EngineTypes.semv = xs;
15556 MenhirLib.EngineTypes.startp = _startpos_xs_;
15557 MenhirLib.EngineTypes.endp = _endpos_xs_;
15558 MenhirLib.EngineTypes.next = {
15559 MenhirLib.EngineTypes.state = _menhir_s;
15560 MenhirLib.EngineTypes.semv = x;
15561 MenhirLib.EngineTypes.startp = _startpos_x_;
15562 MenhirLib.EngineTypes.endp = _endpos_x_;
15563 MenhirLib.EngineTypes.next = _menhir_stack;
15564 };
15565 } = _menhir_stack in
15566 let xs : 'tv_list_mzl_mctype__ = Obj.magic xs in
15567 let x : 'tv_mzl_mctype_ = Obj.magic x in
15568 let _startpos = _startpos_x_ in
15569 let _endpos = _endpos_xs_ in
15570 let _v : 'tv_list_mzl_mctype__ =
15571 # 116 "standard.mly"
15572 ( x :: xs )
15573 # 15547 "parser_cocci_menhir.ml"
15574 in
15575 _menhir_env.MenhirLib.EngineTypes.stack <- {
15576 MenhirLib.EngineTypes.state = _menhir_s;
15577 MenhirLib.EngineTypes.semv = Obj.repr _v;
15578 MenhirLib.EngineTypes.startp = _startpos;
15579 MenhirLib.EngineTypes.endp = _endpos;
15580 MenhirLib.EngineTypes.next = _menhir_stack;
15581 });
15582 (fun _menhir_env ->
15583 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15584 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15585 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15586 let _endpos = _startpos in
15587 let _v : 'tv_list_mzl_rule_elem_statement__ =
15588 # 114 "standard.mly"
15589 ( [] )
15590 # 15564 "parser_cocci_menhir.ml"
15591 in
15592 _menhir_env.MenhirLib.EngineTypes.stack <- {
15593 MenhirLib.EngineTypes.state = _menhir_s;
15594 MenhirLib.EngineTypes.semv = Obj.repr _v;
15595 MenhirLib.EngineTypes.startp = _startpos;
15596 MenhirLib.EngineTypes.endp = _endpos;
15597 MenhirLib.EngineTypes.next = _menhir_stack;
15598 });
15599 (fun _menhir_env ->
15600 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15601 let {
15602 MenhirLib.EngineTypes.semv = xs;
15603 MenhirLib.EngineTypes.startp = _startpos_xs_;
15604 MenhirLib.EngineTypes.endp = _endpos_xs_;
15605 MenhirLib.EngineTypes.next = {
15606 MenhirLib.EngineTypes.state = _menhir_s;
15607 MenhirLib.EngineTypes.semv = x;
15608 MenhirLib.EngineTypes.startp = _startpos_x_;
15609 MenhirLib.EngineTypes.endp = _endpos_x_;
15610 MenhirLib.EngineTypes.next = _menhir_stack;
15611 };
15612 } = _menhir_stack in
15613 let xs : 'tv_list_mzl_rule_elem_statement__ = Obj.magic xs in
15614 let x : 'tv_mzl_rule_elem_statement_ = Obj.magic x in
15615 let _startpos = _startpos_x_ in
15616 let _endpos = _endpos_xs_ in
15617 let _v : 'tv_list_mzl_rule_elem_statement__ =
15618 # 116 "standard.mly"
15619 ( x :: xs )
15620 # 15594 "parser_cocci_menhir.ml"
15621 in
15622 _menhir_env.MenhirLib.EngineTypes.stack <- {
15623 MenhirLib.EngineTypes.state = _menhir_s;
15624 MenhirLib.EngineTypes.semv = Obj.repr _v;
15625 MenhirLib.EngineTypes.startp = _startpos;
15626 MenhirLib.EngineTypes.endp = _endpos;
15627 MenhirLib.EngineTypes.next = _menhir_stack;
15628 });
15629 (fun _menhir_env ->
15630 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15631 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15632 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15633 let _endpos = _startpos in
15634 let _v : 'tv_list_mzl_statement__ =
15635 # 114 "standard.mly"
15636 ( [] )
15637 # 15611 "parser_cocci_menhir.ml"
15638 in
15639 _menhir_env.MenhirLib.EngineTypes.stack <- {
15640 MenhirLib.EngineTypes.state = _menhir_s;
15641 MenhirLib.EngineTypes.semv = Obj.repr _v;
15642 MenhirLib.EngineTypes.startp = _startpos;
15643 MenhirLib.EngineTypes.endp = _endpos;
15644 MenhirLib.EngineTypes.next = _menhir_stack;
15645 });
15646 (fun _menhir_env ->
15647 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15648 let {
15649 MenhirLib.EngineTypes.semv = xs;
15650 MenhirLib.EngineTypes.startp = _startpos_xs_;
15651 MenhirLib.EngineTypes.endp = _endpos_xs_;
15652 MenhirLib.EngineTypes.next = {
15653 MenhirLib.EngineTypes.state = _menhir_s;
15654 MenhirLib.EngineTypes.semv = x;
15655 MenhirLib.EngineTypes.startp = _startpos_x_;
15656 MenhirLib.EngineTypes.endp = _endpos_x_;
15657 MenhirLib.EngineTypes.next = _menhir_stack;
15658 };
15659 } = _menhir_stack in
15660 let xs : 'tv_list_mzl_statement__ = Obj.magic xs in
15661 let x : 'tv_mzl_statement_ = Obj.magic x in
15662 let _startpos = _startpos_x_ in
15663 let _endpos = _endpos_xs_ in
15664 let _v : 'tv_list_mzl_statement__ =
15665 # 116 "standard.mly"
15666 ( x :: xs )
15667 # 15641 "parser_cocci_menhir.ml"
15668 in
15669 _menhir_env.MenhirLib.EngineTypes.stack <- {
15670 MenhirLib.EngineTypes.state = _menhir_s;
15671 MenhirLib.EngineTypes.semv = Obj.repr _v;
15672 MenhirLib.EngineTypes.startp = _startpos;
15673 MenhirLib.EngineTypes.endp = _endpos;
15674 MenhirLib.EngineTypes.next = _menhir_stack;
15675 });
15676 (fun _menhir_env ->
15677 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15678 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15679 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15680 let _endpos = _startpos in
15681 let _v : 'tv_list_mzl_struct_decl_one__ =
15682 # 114 "standard.mly"
15683 ( [] )
15684 # 15658 "parser_cocci_menhir.ml"
15685 in
15686 _menhir_env.MenhirLib.EngineTypes.stack <- {
15687 MenhirLib.EngineTypes.state = _menhir_s;
15688 MenhirLib.EngineTypes.semv = Obj.repr _v;
15689 MenhirLib.EngineTypes.startp = _startpos;
15690 MenhirLib.EngineTypes.endp = _endpos;
15691 MenhirLib.EngineTypes.next = _menhir_stack;
15692 });
15693 (fun _menhir_env ->
15694 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15695 let {
15696 MenhirLib.EngineTypes.semv = xs;
15697 MenhirLib.EngineTypes.startp = _startpos_xs_;
15698 MenhirLib.EngineTypes.endp = _endpos_xs_;
15699 MenhirLib.EngineTypes.next = {
15700 MenhirLib.EngineTypes.state = _menhir_s;
15701 MenhirLib.EngineTypes.semv = x;
15702 MenhirLib.EngineTypes.startp = _startpos_x_;
15703 MenhirLib.EngineTypes.endp = _endpos_x_;
15704 MenhirLib.EngineTypes.next = _menhir_stack;
15705 };
15706 } = _menhir_stack in
15707 let xs : 'tv_list_mzl_struct_decl_one__ = Obj.magic xs in
15708 let x : 'tv_mzl_struct_decl_one_ = Obj.magic x in
15709 let _startpos = _startpos_x_ in
15710 let _endpos = _endpos_xs_ in
15711 let _v : 'tv_list_mzl_struct_decl_one__ =
15712 # 116 "standard.mly"
15713 ( x :: xs )
15714 # 15688 "parser_cocci_menhir.ml"
15715 in
15716 _menhir_env.MenhirLib.EngineTypes.stack <- {
15717 MenhirLib.EngineTypes.state = _menhir_s;
15718 MenhirLib.EngineTypes.semv = Obj.repr _v;
15719 MenhirLib.EngineTypes.startp = _startpos;
15720 MenhirLib.EngineTypes.endp = _endpos;
15721 MenhirLib.EngineTypes.next = _menhir_stack;
15722 });
15723 (fun _menhir_env ->
15724 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15725 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15726 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15727 let _endpos = _startpos in
15728 let _v : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ =
15729 # 114 "standard.mly"
15730 ( [] )
15731 # 15705 "parser_cocci_menhir.ml"
15732 in
15733 _menhir_env.MenhirLib.EngineTypes.stack <- {
15734 MenhirLib.EngineTypes.state = _menhir_s;
15735 MenhirLib.EngineTypes.semv = Obj.repr _v;
15736 MenhirLib.EngineTypes.startp = _startpos;
15737 MenhirLib.EngineTypes.endp = _endpos;
15738 MenhirLib.EngineTypes.next = _menhir_stack;
15739 });
15740 (fun _menhir_env ->
15741 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15742 let {
15743 MenhirLib.EngineTypes.semv = xs;
15744 MenhirLib.EngineTypes.startp = _startpos_xs_;
15745 MenhirLib.EngineTypes.endp = _endpos_xs_;
15746 MenhirLib.EngineTypes.next = {
15747 MenhirLib.EngineTypes.semv = y0;
15748 MenhirLib.EngineTypes.startp = _startpos_y0_;
15749 MenhirLib.EngineTypes.endp = _endpos_y0_;
15750 MenhirLib.EngineTypes.next = {
15751 MenhirLib.EngineTypes.state = _menhir_s;
15752 MenhirLib.EngineTypes.semv = x0;
15753 MenhirLib.EngineTypes.startp = _startpos_x0_;
15754 MenhirLib.EngineTypes.endp = _endpos_x0_;
15755 MenhirLib.EngineTypes.next = _menhir_stack;
15756 };
15757 };
15758 } = _menhir_stack in
15759 let xs : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = Obj.magic xs in
15760 let y0 : 'tv_dexpr = Obj.magic y0 in
15761 let x0 : 'tv_edots_when_TEllipsis_eexpr_ = Obj.magic x0 in
15762 let _startpos = _startpos_x0_ in
15763 let _endpos = _endpos_xs_ in
15764 let _v : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = let x =
15765 let y = y0 in
15766 let x = x0 in
15767
15768 # 70 "standard.mly"
15769 ( (x, y) )
15770 # 15744 "parser_cocci_menhir.ml"
15771
15772 in
15773
15774 # 116 "standard.mly"
15775 ( x :: xs )
15776 # 15750 "parser_cocci_menhir.ml"
15777 in
15778 _menhir_env.MenhirLib.EngineTypes.stack <- {
15779 MenhirLib.EngineTypes.state = _menhir_s;
15780 MenhirLib.EngineTypes.semv = Obj.repr _v;
15781 MenhirLib.EngineTypes.startp = _startpos;
15782 MenhirLib.EngineTypes.endp = _endpos;
15783 MenhirLib.EngineTypes.next = _menhir_stack;
15784 });
15785 (fun _menhir_env ->
15786 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15787 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15788 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15789 let _endpos = _startpos in
15790 let _v : 'tv_list_whenppdecs_ =
15791 # 114 "standard.mly"
15792 ( [] )
15793 # 15767 "parser_cocci_menhir.ml"
15794 in
15795 _menhir_env.MenhirLib.EngineTypes.stack <- {
15796 MenhirLib.EngineTypes.state = _menhir_s;
15797 MenhirLib.EngineTypes.semv = Obj.repr _v;
15798 MenhirLib.EngineTypes.startp = _startpos;
15799 MenhirLib.EngineTypes.endp = _endpos;
15800 MenhirLib.EngineTypes.next = _menhir_stack;
15801 });
15802 (fun _menhir_env ->
15803 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15804 let {
15805 MenhirLib.EngineTypes.semv = xs;
15806 MenhirLib.EngineTypes.startp = _startpos_xs_;
15807 MenhirLib.EngineTypes.endp = _endpos_xs_;
15808 MenhirLib.EngineTypes.next = {
15809 MenhirLib.EngineTypes.state = _menhir_s;
15810 MenhirLib.EngineTypes.semv = x;
15811 MenhirLib.EngineTypes.startp = _startpos_x_;
15812 MenhirLib.EngineTypes.endp = _endpos_x_;
15813 MenhirLib.EngineTypes.next = _menhir_stack;
15814 };
15815 } = _menhir_stack in
15816 let xs : 'tv_list_whenppdecs_ = Obj.magic xs in
15817 let x : 'tv_whenppdecs = Obj.magic x in
15818 let _startpos = _startpos_x_ in
15819 let _endpos = _endpos_xs_ in
15820 let _v : 'tv_list_whenppdecs_ =
15821 # 116 "standard.mly"
15822 ( x :: xs )
15823 # 15797 "parser_cocci_menhir.ml"
15824 in
15825 _menhir_env.MenhirLib.EngineTypes.stack <- {
15826 MenhirLib.EngineTypes.state = _menhir_s;
15827 MenhirLib.EngineTypes.semv = Obj.repr _v;
15828 MenhirLib.EngineTypes.startp = _startpos;
15829 MenhirLib.EngineTypes.endp = _endpos;
15830 MenhirLib.EngineTypes.next = _menhir_stack;
15831 });
15832 (fun _menhir_env ->
15833 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15834 let {
15835 MenhirLib.EngineTypes.state = _menhir_s;
15836 MenhirLib.EngineTypes.semv = _1;
15837 MenhirLib.EngineTypes.startp = _startpos__1_;
15838 MenhirLib.EngineTypes.endp = _endpos__1_;
15839 MenhirLib.EngineTypes.next = _menhir_stack;
15840 } = _menhir_stack in
15841 let _1 : 'tv_pure_ident_or_meta_ident = Obj.magic _1 in
15842 let _startpos = _startpos__1_ in
15843 let _endpos = _endpos__1_ in
15844 let _v : 'tv_list_len =
15845 # 399 "parser_cocci_menhir.mly"
15846 ( Common.Left _1 )
15847 # 15821 "parser_cocci_menhir.ml"
15848 in
15849 _menhir_env.MenhirLib.EngineTypes.stack <- {
15850 MenhirLib.EngineTypes.state = _menhir_s;
15851 MenhirLib.EngineTypes.semv = Obj.repr _v;
15852 MenhirLib.EngineTypes.startp = _startpos;
15853 MenhirLib.EngineTypes.endp = _endpos;
15854 MenhirLib.EngineTypes.next = _menhir_stack;
15855 });
15856 (fun _menhir_env ->
15857 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15858 let {
15859 MenhirLib.EngineTypes.state = _menhir_s;
15860 MenhirLib.EngineTypes.semv = _1;
15861 MenhirLib.EngineTypes.startp = _startpos__1_;
15862 MenhirLib.EngineTypes.endp = _endpos__1_;
15863 MenhirLib.EngineTypes.next = _menhir_stack;
15864 } = _menhir_stack in
15865 let _1 : (
15866 # 133 "parser_cocci_menhir.mly"
15867 (string * Data.clt)
15868 # 15842 "parser_cocci_menhir.ml"
15869 ) = Obj.magic _1 in
15870 let _startpos = _startpos__1_ in
15871 let _endpos = _endpos__1_ in
15872 let _v : 'tv_list_len =
15873 # 400 "parser_cocci_menhir.mly"
15874 ( let (x,clt) = _1 in Common.Right (int_of_string x) )
15875 # 15849 "parser_cocci_menhir.ml"
15876 in
15877 _menhir_env.MenhirLib.EngineTypes.stack <- {
15878 MenhirLib.EngineTypes.state = _menhir_s;
15879 MenhirLib.EngineTypes.semv = Obj.repr _v;
15880 MenhirLib.EngineTypes.startp = _startpos;
15881 MenhirLib.EngineTypes.endp = _endpos;
15882 MenhirLib.EngineTypes.next = _menhir_stack;
15883 });
15884 (fun _menhir_env ->
15885 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15886 let {
15887 MenhirLib.EngineTypes.semv = _3;
15888 MenhirLib.EngineTypes.startp = _startpos__3_;
15889 MenhirLib.EngineTypes.endp = _endpos__3_;
15890 MenhirLib.EngineTypes.next = {
15891 MenhirLib.EngineTypes.startp = _startpos__2_;
15892 MenhirLib.EngineTypes.endp = _endpos__2_;
15893 MenhirLib.EngineTypes.next = {
15894 MenhirLib.EngineTypes.state = _menhir_s;
15895 MenhirLib.EngineTypes.startp = _startpos__1_;
15896 MenhirLib.EngineTypes.endp = _endpos__1_;
15897 MenhirLib.EngineTypes.next = _menhir_stack;
15898 };
15899 };
15900 } = _menhir_stack in
15901 let _3 : 'tv_pure_ident = Obj.magic _3 in
15902 let _startpos = _startpos__1_ in
15903 let _endpos = _endpos__3_ in
15904 let _v : 'tv_list_len =
15905 # 402 "parser_cocci_menhir.mly"
15906 ( let nm = ("virtual",P.id2name _3) in
15907 Iteration.parsed_virtual_identifiers :=
15908 Common.union_set [snd nm]
15909 !Iteration.parsed_virtual_identifiers;
15910 try
15911 Common.Right (int_of_string
15912 (List.assoc (snd nm) !Flag.defined_virtual_env))
15913 with Not_found | Failure "int_of_string" ->
15914 begin
15915 Common.Left (Some "virtual",P.id2name _3)
15916 end
15917 )
15918 # 15892 "parser_cocci_menhir.ml"
15919 in
15920 _menhir_env.MenhirLib.EngineTypes.stack <- {
15921 MenhirLib.EngineTypes.state = _menhir_s;
15922 MenhirLib.EngineTypes.semv = Obj.repr _v;
15923 MenhirLib.EngineTypes.startp = _startpos;
15924 MenhirLib.EngineTypes.endp = _endpos;
15925 MenhirLib.EngineTypes.next = _menhir_stack;
15926 });
15927 (fun _menhir_env ->
15928 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15929 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15930 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15931 let _endpos = _startpos in
15932 let _v : 'tv_loption_choose_iso_ =
15933 # 57 "standard.mly"
15934 ( [] )
15935 # 15909 "parser_cocci_menhir.ml"
15936 in
15937 _menhir_env.MenhirLib.EngineTypes.stack <- {
15938 MenhirLib.EngineTypes.state = _menhir_s;
15939 MenhirLib.EngineTypes.semv = Obj.repr _v;
15940 MenhirLib.EngineTypes.startp = _startpos;
15941 MenhirLib.EngineTypes.endp = _endpos;
15942 MenhirLib.EngineTypes.next = _menhir_stack;
15943 });
15944 (fun _menhir_env ->
15945 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15946 let {
15947 MenhirLib.EngineTypes.state = _menhir_s;
15948 MenhirLib.EngineTypes.semv = x;
15949 MenhirLib.EngineTypes.startp = _startpos_x_;
15950 MenhirLib.EngineTypes.endp = _endpos_x_;
15951 MenhirLib.EngineTypes.next = _menhir_stack;
15952 } = _menhir_stack in
15953 let x : 'tv_choose_iso = Obj.magic x in
15954 let _startpos = _startpos_x_ in
15955 let _endpos = _endpos_x_ in
15956 let _v : 'tv_loption_choose_iso_ =
15957 # 59 "standard.mly"
15958 ( x )
15959 # 15933 "parser_cocci_menhir.ml"
15960 in
15961 _menhir_env.MenhirLib.EngineTypes.stack <- {
15962 MenhirLib.EngineTypes.state = _menhir_s;
15963 MenhirLib.EngineTypes.semv = Obj.repr _v;
15964 MenhirLib.EngineTypes.startp = _startpos;
15965 MenhirLib.EngineTypes.endp = _endpos;
15966 MenhirLib.EngineTypes.next = _menhir_stack;
15967 });
15968 (fun _menhir_env ->
15969 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15970 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
15971 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
15972 let _endpos = _startpos in
15973 let _v : 'tv_loption_disable_ =
15974 # 57 "standard.mly"
15975 ( [] )
15976 # 15950 "parser_cocci_menhir.ml"
15977 in
15978 _menhir_env.MenhirLib.EngineTypes.stack <- {
15979 MenhirLib.EngineTypes.state = _menhir_s;
15980 MenhirLib.EngineTypes.semv = Obj.repr _v;
15981 MenhirLib.EngineTypes.startp = _startpos;
15982 MenhirLib.EngineTypes.endp = _endpos;
15983 MenhirLib.EngineTypes.next = _menhir_stack;
15984 });
15985 (fun _menhir_env ->
15986 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
15987 let {
15988 MenhirLib.EngineTypes.state = _menhir_s;
15989 MenhirLib.EngineTypes.semv = x;
15990 MenhirLib.EngineTypes.startp = _startpos_x_;
15991 MenhirLib.EngineTypes.endp = _endpos_x_;
15992 MenhirLib.EngineTypes.next = _menhir_stack;
15993 } = _menhir_stack in
15994 let x : 'tv_disable = Obj.magic x in
15995 let _startpos = _startpos_x_ in
15996 let _endpos = _endpos_x_ in
15997 let _v : 'tv_loption_disable_ =
15998 # 59 "standard.mly"
15999 ( x )
16000 # 15974 "parser_cocci_menhir.ml"
16001 in
16002 _menhir_env.MenhirLib.EngineTypes.stack <- {
16003 MenhirLib.EngineTypes.state = _menhir_s;
16004 MenhirLib.EngineTypes.semv = Obj.repr _v;
16005 MenhirLib.EngineTypes.startp = _startpos;
16006 MenhirLib.EngineTypes.endp = _endpos;
16007 MenhirLib.EngineTypes.next = _menhir_stack;
16008 });
16009 (fun _menhir_env ->
16010 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16011 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
16012 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
16013 let _endpos = _startpos in
16014 let _v : 'tv_loption_filespec_ =
16015 # 57 "standard.mly"
16016 ( [] )
16017 # 15991 "parser_cocci_menhir.ml"
16018 in
16019 _menhir_env.MenhirLib.EngineTypes.stack <- {
16020 MenhirLib.EngineTypes.state = _menhir_s;
16021 MenhirLib.EngineTypes.semv = Obj.repr _v;
16022 MenhirLib.EngineTypes.startp = _startpos;
16023 MenhirLib.EngineTypes.endp = _endpos;
16024 MenhirLib.EngineTypes.next = _menhir_stack;
16025 });
16026 (fun _menhir_env ->
16027 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16028 let {
16029 MenhirLib.EngineTypes.state = _menhir_s;
16030 MenhirLib.EngineTypes.semv = x;
16031 MenhirLib.EngineTypes.startp = _startpos_x_;
16032 MenhirLib.EngineTypes.endp = _endpos_x_;
16033 MenhirLib.EngineTypes.next = _menhir_stack;
16034 } = _menhir_stack in
16035 let x : 'tv_filespec = Obj.magic x in
16036 let _startpos = _startpos_x_ in
16037 let _endpos = _endpos_x_ in
16038 let _v : 'tv_loption_filespec_ =
16039 # 59 "standard.mly"
16040 ( x )
16041 # 16015 "parser_cocci_menhir.ml"
16042 in
16043 _menhir_env.MenhirLib.EngineTypes.stack <- {
16044 MenhirLib.EngineTypes.state = _menhir_s;
16045 MenhirLib.EngineTypes.semv = Obj.repr _v;
16046 MenhirLib.EngineTypes.startp = _startpos;
16047 MenhirLib.EngineTypes.endp = _endpos;
16048 MenhirLib.EngineTypes.next = _menhir_stack;
16049 });
16050 (fun _menhir_env ->
16051 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16052 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
16053 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
16054 let _endpos = _startpos in
16055 let _v : 'tv_loption_minus_start_ =
16056 # 57 "standard.mly"
16057 ( [] )
16058 # 16032 "parser_cocci_menhir.ml"
16059 in
16060 _menhir_env.MenhirLib.EngineTypes.stack <- {
16061 MenhirLib.EngineTypes.state = _menhir_s;
16062 MenhirLib.EngineTypes.semv = Obj.repr _v;
16063 MenhirLib.EngineTypes.startp = _startpos;
16064 MenhirLib.EngineTypes.endp = _endpos;
16065 MenhirLib.EngineTypes.next = _menhir_stack;
16066 });
16067 (fun _menhir_env ->
16068 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16069 let {
16070 MenhirLib.EngineTypes.state = _menhir_s;
16071 MenhirLib.EngineTypes.semv = x;
16072 MenhirLib.EngineTypes.startp = _startpos_x_;
16073 MenhirLib.EngineTypes.endp = _endpos_x_;
16074 MenhirLib.EngineTypes.next = _menhir_stack;
16075 } = _menhir_stack in
16076 let x : 'tv_minus_start = Obj.magic x in
16077 let _startpos = _startpos_x_ in
16078 let _endpos = _endpos_x_ in
16079 let _v : 'tv_loption_minus_start_ =
16080 # 59 "standard.mly"
16081 ( x )
16082 # 16056 "parser_cocci_menhir.ml"
16083 in
16084 _menhir_env.MenhirLib.EngineTypes.stack <- {
16085 MenhirLib.EngineTypes.state = _menhir_s;
16086 MenhirLib.EngineTypes.semv = Obj.repr _v;
16087 MenhirLib.EngineTypes.startp = _startpos;
16088 MenhirLib.EngineTypes.endp = _endpos;
16089 MenhirLib.EngineTypes.next = _menhir_stack;
16090 });
16091 (fun _menhir_env ->
16092 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16093 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
16094 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
16095 let _endpos = _startpos in
16096 let _v : 'tv_loption_not_pos_ =
16097 # 57 "standard.mly"
16098 ( [] )
16099 # 16073 "parser_cocci_menhir.ml"
16100 in
16101 _menhir_env.MenhirLib.EngineTypes.stack <- {
16102 MenhirLib.EngineTypes.state = _menhir_s;
16103 MenhirLib.EngineTypes.semv = Obj.repr _v;
16104 MenhirLib.EngineTypes.startp = _startpos;
16105 MenhirLib.EngineTypes.endp = _endpos;
16106 MenhirLib.EngineTypes.next = _menhir_stack;
16107 });
16108 (fun _menhir_env ->
16109 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16110 let {
16111 MenhirLib.EngineTypes.state = _menhir_s;
16112 MenhirLib.EngineTypes.semv = x;
16113 MenhirLib.EngineTypes.startp = _startpos_x_;
16114 MenhirLib.EngineTypes.endp = _endpos_x_;
16115 MenhirLib.EngineTypes.next = _menhir_stack;
16116 } = _menhir_stack in
16117 let x : 'tv_not_pos = Obj.magic x in
16118 let _startpos = _startpos_x_ in
16119 let _endpos = _endpos_x_ in
16120 let _v : 'tv_loption_not_pos_ =
16121 # 59 "standard.mly"
16122 ( x )
16123 # 16097 "parser_cocci_menhir.ml"
16124 in
16125 _menhir_env.MenhirLib.EngineTypes.stack <- {
16126 MenhirLib.EngineTypes.state = _menhir_s;
16127 MenhirLib.EngineTypes.semv = Obj.repr _v;
16128 MenhirLib.EngineTypes.startp = _startpos;
16129 MenhirLib.EngineTypes.endp = _endpos;
16130 MenhirLib.EngineTypes.next = _menhir_stack;
16131 });
16132 (fun _menhir_env ->
16133 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16134 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
16135 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
16136 let _endpos = _startpos in
16137 let _v : 'tv_loption_plus_start_ =
16138 # 57 "standard.mly"
16139 ( [] )
16140 # 16114 "parser_cocci_menhir.ml"
16141 in
16142 _menhir_env.MenhirLib.EngineTypes.stack <- {
16143 MenhirLib.EngineTypes.state = _menhir_s;
16144 MenhirLib.EngineTypes.semv = Obj.repr _v;
16145 MenhirLib.EngineTypes.startp = _startpos;
16146 MenhirLib.EngineTypes.endp = _endpos;
16147 MenhirLib.EngineTypes.next = _menhir_stack;
16148 });
16149 (fun _menhir_env ->
16150 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16151 let {
16152 MenhirLib.EngineTypes.state = _menhir_s;
16153 MenhirLib.EngineTypes.semv = x;
16154 MenhirLib.EngineTypes.startp = _startpos_x_;
16155 MenhirLib.EngineTypes.endp = _endpos_x_;
16156 MenhirLib.EngineTypes.next = _menhir_stack;
16157 } = _menhir_stack in
16158 let x : 'tv_plus_start = Obj.magic x in
16159 let _startpos = _startpos_x_ in
16160 let _endpos = _endpos_x_ in
16161 let _v : 'tv_loption_plus_start_ =
16162 # 59 "standard.mly"
16163 ( x )
16164 # 16138 "parser_cocci_menhir.ml"
16165 in
16166 _menhir_env.MenhirLib.EngineTypes.stack <- {
16167 MenhirLib.EngineTypes.state = _menhir_s;
16168 MenhirLib.EngineTypes.semv = Obj.repr _v;
16169 MenhirLib.EngineTypes.startp = _startpos;
16170 MenhirLib.EngineTypes.endp = _endpos;
16171 MenhirLib.EngineTypes.next = _menhir_stack;
16172 });
16173 (fun _menhir_env ->
16174 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16175 let {
16176 MenhirLib.EngineTypes.state = _menhir_s;
16177 MenhirLib.EngineTypes.semv = _1;
16178 MenhirLib.EngineTypes.startp = _startpos__1_;
16179 MenhirLib.EngineTypes.endp = _endpos__1_;
16180 MenhirLib.EngineTypes.next = _menhir_stack;
16181 } = _menhir_stack in
16182 let _1 : (
16183 # 109 "parser_cocci_menhir.mly"
16184 (Parse_aux.info)
16185 # 16159 "parser_cocci_menhir.ml"
16186 ) = Obj.magic _1 in
16187 let _startpos = _startpos__1_ in
16188 let _endpos = _endpos__1_ in
16189 let _v : 'tv_mctype =
16190 # 731 "parser_cocci_menhir.mly"
16191 ( tmeta_to_type _1 )
16192 # 16166 "parser_cocci_menhir.ml"
16193 in
16194 _menhir_env.MenhirLib.EngineTypes.stack <- {
16195 MenhirLib.EngineTypes.state = _menhir_s;
16196 MenhirLib.EngineTypes.semv = Obj.repr _v;
16197 MenhirLib.EngineTypes.startp = _startpos;
16198 MenhirLib.EngineTypes.endp = _endpos;
16199 MenhirLib.EngineTypes.next = _menhir_stack;
16200 });
16201 (fun _menhir_env ->
16202 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16203 let {
16204 MenhirLib.EngineTypes.state = _menhir_s;
16205 MenhirLib.EngineTypes.semv = _1;
16206 MenhirLib.EngineTypes.startp = _startpos__1_;
16207 MenhirLib.EngineTypes.endp = _endpos__1_;
16208 MenhirLib.EngineTypes.next = _menhir_stack;
16209 } = _menhir_stack in
16210 let _1 : 'tv_ctype = Obj.magic _1 in
16211 let _startpos = _startpos__1_ in
16212 let _endpos = _endpos__1_ in
16213 let _v : 'tv_mctype =
16214 # 732 "parser_cocci_menhir.mly"
16215 (_1)
16216 # 16190 "parser_cocci_menhir.ml"
16217 in
16218 _menhir_env.MenhirLib.EngineTypes.stack <- {
16219 MenhirLib.EngineTypes.state = _menhir_s;
16220 MenhirLib.EngineTypes.semv = Obj.repr _v;
16221 MenhirLib.EngineTypes.startp = _startpos;
16222 MenhirLib.EngineTypes.endp = _endpos;
16223 MenhirLib.EngineTypes.next = _menhir_stack;
16224 });
16225 (fun _menhir_env ->
16226 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16227 let {
16228 MenhirLib.EngineTypes.state = _menhir_s;
16229 MenhirLib.EngineTypes.semv = t;
16230 MenhirLib.EngineTypes.startp = _startpos_t_;
16231 MenhirLib.EngineTypes.endp = _endpos_t_;
16232 MenhirLib.EngineTypes.next = _menhir_stack;
16233 } = _menhir_stack in
16234 let t : 'tv_typedef_ctype = Obj.magic t in
16235 let _startpos = _startpos_t_ in
16236 let _endpos = _endpos_t_ in
16237 let _v : 'tv_meta_exp_type =
16238 # 609 "parser_cocci_menhir.mly"
16239 ( [Ast0_cocci.ast0_type_to_type t] )
16240 # 16214 "parser_cocci_menhir.ml"
16241 in
16242 _menhir_env.MenhirLib.EngineTypes.stack <- {
16243 MenhirLib.EngineTypes.state = _menhir_s;
16244 MenhirLib.EngineTypes.semv = Obj.repr _v;
16245 MenhirLib.EngineTypes.startp = _startpos;
16246 MenhirLib.EngineTypes.endp = _endpos;
16247 MenhirLib.EngineTypes.next = _menhir_stack;
16248 });
16249 (fun _menhir_env ->
16250 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16251 let {
16252 MenhirLib.EngineTypes.startp = _startpos__3_;
16253 MenhirLib.EngineTypes.endp = _endpos__3_;
16254 MenhirLib.EngineTypes.next = {
16255 MenhirLib.EngineTypes.startp = _startpos__2_;
16256 MenhirLib.EngineTypes.endp = _endpos__2_;
16257 MenhirLib.EngineTypes.next = {
16258 MenhirLib.EngineTypes.state = _menhir_s;
16259 MenhirLib.EngineTypes.semv = t;
16260 MenhirLib.EngineTypes.startp = _startpos_t_;
16261 MenhirLib.EngineTypes.endp = _endpos_t_;
16262 MenhirLib.EngineTypes.next = _menhir_stack;
16263 };
16264 };
16265 } = _menhir_stack in
16266 let t : 'tv_typedef_ctype = Obj.magic t in
16267 let _startpos = _startpos_t_ in
16268 let _endpos = _endpos__3_ in
16269 let _v : 'tv_meta_exp_type =
16270 # 611 "parser_cocci_menhir.mly"
16271 ( [Type_cocci.Array (Ast0_cocci.ast0_type_to_type t)] )
16272 # 16246 "parser_cocci_menhir.ml"
16273 in
16274 _menhir_env.MenhirLib.EngineTypes.stack <- {
16275 MenhirLib.EngineTypes.state = _menhir_s;
16276 MenhirLib.EngineTypes.semv = Obj.repr _v;
16277 MenhirLib.EngineTypes.startp = _startpos;
16278 MenhirLib.EngineTypes.endp = _endpos;
16279 MenhirLib.EngineTypes.next = _menhir_stack;
16280 });
16281 (fun _menhir_env ->
16282 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16283 let {
16284 MenhirLib.EngineTypes.semv = m;
16285 MenhirLib.EngineTypes.startp = _startpos_m_;
16286 MenhirLib.EngineTypes.endp = _endpos_m_;
16287 MenhirLib.EngineTypes.next = {
16288 MenhirLib.EngineTypes.startp = _startpos__3_;
16289 MenhirLib.EngineTypes.endp = _endpos__3_;
16290 MenhirLib.EngineTypes.next = {
16291 MenhirLib.EngineTypes.semv = t;
16292 MenhirLib.EngineTypes.startp = _startpos_t_;
16293 MenhirLib.EngineTypes.endp = _endpos_t_;
16294 MenhirLib.EngineTypes.next = {
16295 MenhirLib.EngineTypes.state = _menhir_s;
16296 MenhirLib.EngineTypes.startp = _startpos__1_;
16297 MenhirLib.EngineTypes.endp = _endpos__1_;
16298 MenhirLib.EngineTypes.next = _menhir_stack;
16299 };
16300 };
16301 };
16302 } = _menhir_stack in
16303 let m : 'tv_list_TMul_ = Obj.magic m in
16304 let t : 'tv_comma_list_ctype_ = Obj.magic t in
16305 let _startpos = _startpos__1_ in
16306 let _endpos = _endpos_m_ in
16307 let _v : 'tv_meta_exp_type =
16308 # 613 "parser_cocci_menhir.mly"
16309 ( List.map
16310 (function x -> P.ty_pointerify (Ast0_cocci.ast0_type_to_type x) m)
16311 t )
16312 # 16286 "parser_cocci_menhir.ml"
16313 in
16314 _menhir_env.MenhirLib.EngineTypes.stack <- {
16315 MenhirLib.EngineTypes.state = _menhir_s;
16316 MenhirLib.EngineTypes.semv = Obj.repr _v;
16317 MenhirLib.EngineTypes.startp = _startpos;
16318 MenhirLib.EngineTypes.endp = _endpos;
16319 MenhirLib.EngineTypes.next = _menhir_stack;
16320 });
16321 (fun _menhir_env ->
16322 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16323 let {
16324 MenhirLib.EngineTypes.semv = _3;
16325 MenhirLib.EngineTypes.startp = _startpos__3_;
16326 MenhirLib.EngineTypes.endp = _endpos__3_;
16327 MenhirLib.EngineTypes.next = {
16328 MenhirLib.EngineTypes.startp = _startpos__2_;
16329 MenhirLib.EngineTypes.endp = _endpos__2_;
16330 MenhirLib.EngineTypes.next = {
16331 MenhirLib.EngineTypes.state = _menhir_s;
16332 MenhirLib.EngineTypes.semv = _1;
16333 MenhirLib.EngineTypes.startp = _startpos__1_;
16334 MenhirLib.EngineTypes.endp = _endpos__1_;
16335 MenhirLib.EngineTypes.next = _menhir_stack;
16336 };
16337 };
16338 } = _menhir_stack in
16339 let _3 : 'tv_pure_ident = Obj.magic _3 in
16340 let _1 : (
16341 # 88 "parser_cocci_menhir.mly"
16342 (string)
16343 # 16317 "parser_cocci_menhir.ml"
16344 ) = Obj.magic _1 in
16345 let _startpos = _startpos__1_ in
16346 let _endpos = _endpos__3_ in
16347 let _v : 'tv_meta_ident =
16348 # 1782 "parser_cocci_menhir.mly"
16349 ( (Some _1,P.id2name _3) )
16350 # 16324 "parser_cocci_menhir.ml"
16351 in
16352 _menhir_env.MenhirLib.EngineTypes.stack <- {
16353 MenhirLib.EngineTypes.state = _menhir_s;
16354 MenhirLib.EngineTypes.semv = Obj.repr _v;
16355 MenhirLib.EngineTypes.startp = _startpos;
16356 MenhirLib.EngineTypes.endp = _endpos;
16357 MenhirLib.EngineTypes.next = _menhir_stack;
16358 });
16359 (fun _menhir_env ->
16360 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16361 let {
16362 MenhirLib.EngineTypes.semv = _3;
16363 MenhirLib.EngineTypes.startp = _startpos__3_;
16364 MenhirLib.EngineTypes.endp = _endpos__3_;
16365 MenhirLib.EngineTypes.next = {
16366 MenhirLib.EngineTypes.startp = _startpos__2_;
16367 MenhirLib.EngineTypes.endp = _endpos__2_;
16368 MenhirLib.EngineTypes.next = {
16369 MenhirLib.EngineTypes.state = _menhir_s;
16370 MenhirLib.EngineTypes.semv = _1;
16371 MenhirLib.EngineTypes.startp = _startpos__1_;
16372 MenhirLib.EngineTypes.endp = _endpos__1_;
16373 MenhirLib.EngineTypes.next = _menhir_stack;
16374 };
16375 };
16376 } = _menhir_stack in
16377 let _3 : 'tv_pure_ident_kwd = Obj.magic _3 in
16378 let _1 : (
16379 # 88 "parser_cocci_menhir.mly"
16380 (string)
16381 # 16355 "parser_cocci_menhir.ml"
16382 ) = Obj.magic _1 in
16383 let _startpos = _startpos__1_ in
16384 let _endpos = _endpos__3_ in
16385 let _v : 'tv_meta_ident =
16386 # 1783 "parser_cocci_menhir.mly"
16387 ( (Some _1,_3) )
16388 # 16362 "parser_cocci_menhir.ml"
16389 in
16390 _menhir_env.MenhirLib.EngineTypes.stack <- {
16391 MenhirLib.EngineTypes.state = _menhir_s;
16392 MenhirLib.EngineTypes.semv = Obj.repr _v;
16393 MenhirLib.EngineTypes.startp = _startpos;
16394 MenhirLib.EngineTypes.endp = _endpos;
16395 MenhirLib.EngineTypes.next = _menhir_stack;
16396 });
16397 (fun _menhir_env ->
16398 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16399 let {
16400 MenhirLib.EngineTypes.state = _menhir_s;
16401 MenhirLib.EngineTypes.semv = m;
16402 MenhirLib.EngineTypes.startp = _startpos_m_;
16403 MenhirLib.EngineTypes.endp = _endpos_m_;
16404 MenhirLib.EngineTypes.next = _menhir_stack;
16405 } = _menhir_stack in
16406 let m : 'tv_metadec = Obj.magic m in
16407 let _startpos = _startpos_m_ in
16408 let _endpos = _endpos_m_ in
16409 let _v : (
16410 # 205 "parser_cocci_menhir.mly"
16411 ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
16412 # 16386 "parser_cocci_menhir.ml"
16413 ) =
16414 # 229 "parser_cocci_menhir.mly"
16415 ( m (!Ast0.rule_name) )
16416 # 16390 "parser_cocci_menhir.ml"
16417 in
16418 _menhir_env.MenhirLib.EngineTypes.stack <- {
16419 MenhirLib.EngineTypes.state = _menhir_s;
16420 MenhirLib.EngineTypes.semv = Obj.repr _v;
16421 MenhirLib.EngineTypes.startp = _startpos;
16422 MenhirLib.EngineTypes.endp = _endpos;
16423 MenhirLib.EngineTypes.next = _menhir_stack;
16424 });
16425 (fun _menhir_env ->
16426 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16427 let {
16428 MenhirLib.EngineTypes.startp = _startpos__5_;
16429 MenhirLib.EngineTypes.endp = _endpos__5_;
16430 MenhirLib.EngineTypes.next = {
16431 MenhirLib.EngineTypes.semv = ids;
16432 MenhirLib.EngineTypes.startp = _startpos_ids_;
16433 MenhirLib.EngineTypes.endp = _endpos_ids_;
16434 MenhirLib.EngineTypes.next = {
16435 MenhirLib.EngineTypes.startp = _startpos__3_;
16436 MenhirLib.EngineTypes.endp = _endpos__3_;
16437 MenhirLib.EngineTypes.next = {
16438 MenhirLib.EngineTypes.semv = ispure;
16439 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16440 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16441 MenhirLib.EngineTypes.next = {
16442 MenhirLib.EngineTypes.state = _menhir_s;
16443 MenhirLib.EngineTypes.semv = ar;
16444 MenhirLib.EngineTypes.startp = _startpos_ar_;
16445 MenhirLib.EngineTypes.endp = _endpos_ar_;
16446 MenhirLib.EngineTypes.next = _menhir_stack;
16447 };
16448 };
16449 };
16450 };
16451 } = _menhir_stack in
16452 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16453 let ispure : 'tv_pure = Obj.magic ispure in
16454 let ar : 'tv_arity = Obj.magic ar in
16455 let _startpos = _startpos_ar_ in
16456 let _endpos = _endpos__5_ in
16457 let _v : 'tv_metadec = let kindfn =
16458
16459 # 425 "parser_cocci_menhir.mly"
16460 ( (fun arity name pure check_meta ->
16461 let tok = check_meta(Ast.MetaMetaDecl(arity,name)) in
16462 !Data.add_meta_meta name pure; tok) )
16463 # 16437 "parser_cocci_menhir.ml"
16464
16465 in
16466
16467 # 319 "parser_cocci_menhir.mly"
16468 ( P.create_metadec ar ispure kindfn ids )
16469 # 16443 "parser_cocci_menhir.ml"
16470 in
16471 _menhir_env.MenhirLib.EngineTypes.stack <- {
16472 MenhirLib.EngineTypes.state = _menhir_s;
16473 MenhirLib.EngineTypes.semv = Obj.repr _v;
16474 MenhirLib.EngineTypes.startp = _startpos;
16475 MenhirLib.EngineTypes.endp = _endpos;
16476 MenhirLib.EngineTypes.next = _menhir_stack;
16477 });
16478 (fun _menhir_env ->
16479 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16480 let {
16481 MenhirLib.EngineTypes.startp = _startpos__5_;
16482 MenhirLib.EngineTypes.endp = _endpos__5_;
16483 MenhirLib.EngineTypes.next = {
16484 MenhirLib.EngineTypes.semv = ids;
16485 MenhirLib.EngineTypes.startp = _startpos_ids_;
16486 MenhirLib.EngineTypes.endp = _endpos_ids_;
16487 MenhirLib.EngineTypes.next = {
16488 MenhirLib.EngineTypes.startp = _startpos__3_;
16489 MenhirLib.EngineTypes.endp = _endpos__3_;
16490 MenhirLib.EngineTypes.next = {
16491 MenhirLib.EngineTypes.semv = ispure;
16492 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16493 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16494 MenhirLib.EngineTypes.next = {
16495 MenhirLib.EngineTypes.state = _menhir_s;
16496 MenhirLib.EngineTypes.semv = ar;
16497 MenhirLib.EngineTypes.startp = _startpos_ar_;
16498 MenhirLib.EngineTypes.endp = _endpos_ar_;
16499 MenhirLib.EngineTypes.next = _menhir_stack;
16500 };
16501 };
16502 };
16503 };
16504 } = _menhir_stack in
16505 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16506 let ispure : 'tv_pure = Obj.magic ispure in
16507 let ar : 'tv_arity = Obj.magic ar in
16508 let _startpos = _startpos_ar_ in
16509 let _endpos = _endpos__5_ in
16510 let _v : 'tv_metadec = let kindfn =
16511
16512 # 429 "parser_cocci_menhir.mly"
16513 ( (fun arity name pure check_meta ->
16514 let tok = check_meta(Ast.MetaParamDecl(arity,name)) in
16515 !Data.add_param_meta name pure; tok) )
16516 # 16490 "parser_cocci_menhir.ml"
16517
16518 in
16519
16520 # 319 "parser_cocci_menhir.mly"
16521 ( P.create_metadec ar ispure kindfn ids )
16522 # 16496 "parser_cocci_menhir.ml"
16523 in
16524 _menhir_env.MenhirLib.EngineTypes.stack <- {
16525 MenhirLib.EngineTypes.state = _menhir_s;
16526 MenhirLib.EngineTypes.semv = Obj.repr _v;
16527 MenhirLib.EngineTypes.startp = _startpos;
16528 MenhirLib.EngineTypes.endp = _endpos;
16529 MenhirLib.EngineTypes.next = _menhir_stack;
16530 });
16531 (fun _menhir_env ->
16532 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16533 let {
16534 MenhirLib.EngineTypes.startp = _startpos__6_;
16535 MenhirLib.EngineTypes.endp = _endpos__6_;
16536 MenhirLib.EngineTypes.next = {
16537 MenhirLib.EngineTypes.semv = ids;
16538 MenhirLib.EngineTypes.startp = _startpos_ids_;
16539 MenhirLib.EngineTypes.endp = _endpos_ids_;
16540 MenhirLib.EngineTypes.next = {
16541 MenhirLib.EngineTypes.startp = _startpos__4_;
16542 MenhirLib.EngineTypes.endp = _endpos__4_;
16543 MenhirLib.EngineTypes.next = {
16544 MenhirLib.EngineTypes.startp = _startpos__3_;
16545 MenhirLib.EngineTypes.endp = _endpos__3_;
16546 MenhirLib.EngineTypes.next = {
16547 MenhirLib.EngineTypes.semv = ispure;
16548 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16549 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16550 MenhirLib.EngineTypes.next = {
16551 MenhirLib.EngineTypes.state = _menhir_s;
16552 MenhirLib.EngineTypes.semv = ar;
16553 MenhirLib.EngineTypes.startp = _startpos_ar_;
16554 MenhirLib.EngineTypes.endp = _endpos_ar_;
16555 MenhirLib.EngineTypes.next = _menhir_stack;
16556 };
16557 };
16558 };
16559 };
16560 };
16561 } = _menhir_stack in
16562 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16563 let ispure : 'tv_pure = Obj.magic ispure in
16564 let ar : 'tv_arity = Obj.magic ar in
16565 let _startpos = _startpos_ar_ in
16566 let _endpos = _endpos__6_ in
16567 let _v : 'tv_metadec = let kindfn =
16568
16569 # 433 "parser_cocci_menhir.mly"
16570 ( (fun arity name pure check_meta ->
16571 let len = Ast.AnyLen in
16572 let tok = check_meta(Ast.MetaParamListDecl(arity,name,len)) in
16573 !Data.add_paramlist_meta name len pure; tok) )
16574 # 16548 "parser_cocci_menhir.ml"
16575
16576 in
16577
16578 # 319 "parser_cocci_menhir.mly"
16579 ( P.create_metadec ar ispure kindfn ids )
16580 # 16554 "parser_cocci_menhir.ml"
16581 in
16582 _menhir_env.MenhirLib.EngineTypes.stack <- {
16583 MenhirLib.EngineTypes.state = _menhir_s;
16584 MenhirLib.EngineTypes.semv = Obj.repr _v;
16585 MenhirLib.EngineTypes.startp = _startpos;
16586 MenhirLib.EngineTypes.endp = _endpos;
16587 MenhirLib.EngineTypes.next = _menhir_stack;
16588 });
16589 (fun _menhir_env ->
16590 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16591 let {
16592 MenhirLib.EngineTypes.startp = _startpos__6_;
16593 MenhirLib.EngineTypes.endp = _endpos__6_;
16594 MenhirLib.EngineTypes.next = {
16595 MenhirLib.EngineTypes.semv = ids;
16596 MenhirLib.EngineTypes.startp = _startpos_ids_;
16597 MenhirLib.EngineTypes.endp = _endpos_ids_;
16598 MenhirLib.EngineTypes.next = {
16599 MenhirLib.EngineTypes.startp = _startpos__4_;
16600 MenhirLib.EngineTypes.endp = _endpos__4_;
16601 MenhirLib.EngineTypes.next = {
16602 MenhirLib.EngineTypes.startp = _startpos__3_;
16603 MenhirLib.EngineTypes.endp = _endpos__3_;
16604 MenhirLib.EngineTypes.next = {
16605 MenhirLib.EngineTypes.semv = ispure;
16606 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16607 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16608 MenhirLib.EngineTypes.next = {
16609 MenhirLib.EngineTypes.state = _menhir_s;
16610 MenhirLib.EngineTypes.semv = ar;
16611 MenhirLib.EngineTypes.startp = _startpos_ar_;
16612 MenhirLib.EngineTypes.endp = _endpos_ar_;
16613 MenhirLib.EngineTypes.next = _menhir_stack;
16614 };
16615 };
16616 };
16617 };
16618 };
16619 } = _menhir_stack in
16620 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16621 let ispure : 'tv_pure = Obj.magic ispure in
16622 let ar : 'tv_arity = Obj.magic ar in
16623 let _startpos = _startpos_ar_ in
16624 let _endpos = _endpos__6_ in
16625 let _v : 'tv_metadec = let kindfn =
16626
16627 # 438 "parser_cocci_menhir.mly"
16628 ( (fun arity name pure check_meta ->
16629 let len = Ast.AnyLen in
16630 let tok = check_meta(Ast.MetaExpListDecl(arity,name,len)) in
16631 !Data.add_explist_meta name len pure; tok) )
16632 # 16606 "parser_cocci_menhir.ml"
16633
16634 in
16635
16636 # 319 "parser_cocci_menhir.mly"
16637 ( P.create_metadec ar ispure kindfn ids )
16638 # 16612 "parser_cocci_menhir.ml"
16639 in
16640 _menhir_env.MenhirLib.EngineTypes.stack <- {
16641 MenhirLib.EngineTypes.state = _menhir_s;
16642 MenhirLib.EngineTypes.semv = Obj.repr _v;
16643 MenhirLib.EngineTypes.startp = _startpos;
16644 MenhirLib.EngineTypes.endp = _endpos;
16645 MenhirLib.EngineTypes.next = _menhir_stack;
16646 });
16647 (fun _menhir_env ->
16648 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16649 let {
16650 MenhirLib.EngineTypes.startp = _startpos__5_;
16651 MenhirLib.EngineTypes.endp = _endpos__5_;
16652 MenhirLib.EngineTypes.next = {
16653 MenhirLib.EngineTypes.semv = ids;
16654 MenhirLib.EngineTypes.startp = _startpos_ids_;
16655 MenhirLib.EngineTypes.endp = _endpos_ids_;
16656 MenhirLib.EngineTypes.next = {
16657 MenhirLib.EngineTypes.startp = _startpos__3_;
16658 MenhirLib.EngineTypes.endp = _endpos__3_;
16659 MenhirLib.EngineTypes.next = {
16660 MenhirLib.EngineTypes.semv = ispure;
16661 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16662 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16663 MenhirLib.EngineTypes.next = {
16664 MenhirLib.EngineTypes.state = _menhir_s;
16665 MenhirLib.EngineTypes.semv = ar;
16666 MenhirLib.EngineTypes.startp = _startpos_ar_;
16667 MenhirLib.EngineTypes.endp = _endpos_ar_;
16668 MenhirLib.EngineTypes.next = _menhir_stack;
16669 };
16670 };
16671 };
16672 };
16673 } = _menhir_stack in
16674 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16675 let ispure : 'tv_pure = Obj.magic ispure in
16676 let ar : 'tv_arity = Obj.magic ar in
16677 let _startpos = _startpos_ar_ in
16678 let _endpos = _endpos__5_ in
16679 let _v : 'tv_metadec = let kindfn =
16680
16681 # 443 "parser_cocci_menhir.mly"
16682 ( (fun arity name pure check_meta ->
16683 let tok = check_meta(Ast.MetaTypeDecl(arity,name)) in
16684 !Data.add_type_meta name pure; tok) )
16685 # 16659 "parser_cocci_menhir.ml"
16686
16687 in
16688
16689 # 319 "parser_cocci_menhir.mly"
16690 ( P.create_metadec ar ispure kindfn ids )
16691 # 16665 "parser_cocci_menhir.ml"
16692 in
16693 _menhir_env.MenhirLib.EngineTypes.stack <- {
16694 MenhirLib.EngineTypes.state = _menhir_s;
16695 MenhirLib.EngineTypes.semv = Obj.repr _v;
16696 MenhirLib.EngineTypes.startp = _startpos;
16697 MenhirLib.EngineTypes.endp = _endpos;
16698 MenhirLib.EngineTypes.next = _menhir_stack;
16699 });
16700 (fun _menhir_env ->
16701 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16702 let {
16703 MenhirLib.EngineTypes.startp = _startpos__5_;
16704 MenhirLib.EngineTypes.endp = _endpos__5_;
16705 MenhirLib.EngineTypes.next = {
16706 MenhirLib.EngineTypes.semv = ids;
16707 MenhirLib.EngineTypes.startp = _startpos_ids_;
16708 MenhirLib.EngineTypes.endp = _endpos_ids_;
16709 MenhirLib.EngineTypes.next = {
16710 MenhirLib.EngineTypes.startp = _startpos__3_;
16711 MenhirLib.EngineTypes.endp = _endpos__3_;
16712 MenhirLib.EngineTypes.next = {
16713 MenhirLib.EngineTypes.semv = ispure;
16714 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16715 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16716 MenhirLib.EngineTypes.next = {
16717 MenhirLib.EngineTypes.state = _menhir_s;
16718 MenhirLib.EngineTypes.semv = ar;
16719 MenhirLib.EngineTypes.startp = _startpos_ar_;
16720 MenhirLib.EngineTypes.endp = _endpos_ar_;
16721 MenhirLib.EngineTypes.next = _menhir_stack;
16722 };
16723 };
16724 };
16725 };
16726 } = _menhir_stack in
16727 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16728 let ispure : 'tv_pure = Obj.magic ispure in
16729 let ar : 'tv_arity = Obj.magic ar in
16730 let _startpos = _startpos_ar_ in
16731 let _endpos = _endpos__5_ in
16732 let _v : 'tv_metadec = let kindfn =
16733
16734 # 447 "parser_cocci_menhir.mly"
16735 ( (fun arity name pure check_meta ->
16736 let tok = check_meta(Ast.MetaInitDecl(arity,name)) in
16737 !Data.add_init_meta name pure; tok) )
16738 # 16712 "parser_cocci_menhir.ml"
16739
16740 in
16741
16742 # 319 "parser_cocci_menhir.mly"
16743 ( P.create_metadec ar ispure kindfn ids )
16744 # 16718 "parser_cocci_menhir.ml"
16745 in
16746 _menhir_env.MenhirLib.EngineTypes.stack <- {
16747 MenhirLib.EngineTypes.state = _menhir_s;
16748 MenhirLib.EngineTypes.semv = Obj.repr _v;
16749 MenhirLib.EngineTypes.startp = _startpos;
16750 MenhirLib.EngineTypes.endp = _endpos;
16751 MenhirLib.EngineTypes.next = _menhir_stack;
16752 });
16753 (fun _menhir_env ->
16754 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16755 let {
16756 MenhirLib.EngineTypes.startp = _startpos__6_;
16757 MenhirLib.EngineTypes.endp = _endpos__6_;
16758 MenhirLib.EngineTypes.next = {
16759 MenhirLib.EngineTypes.semv = ids;
16760 MenhirLib.EngineTypes.startp = _startpos_ids_;
16761 MenhirLib.EngineTypes.endp = _endpos_ids_;
16762 MenhirLib.EngineTypes.next = {
16763 MenhirLib.EngineTypes.startp = _startpos__4_;
16764 MenhirLib.EngineTypes.endp = _endpos__4_;
16765 MenhirLib.EngineTypes.next = {
16766 MenhirLib.EngineTypes.startp = _startpos__3_;
16767 MenhirLib.EngineTypes.endp = _endpos__3_;
16768 MenhirLib.EngineTypes.next = {
16769 MenhirLib.EngineTypes.semv = ispure;
16770 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16771 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16772 MenhirLib.EngineTypes.next = {
16773 MenhirLib.EngineTypes.state = _menhir_s;
16774 MenhirLib.EngineTypes.semv = ar;
16775 MenhirLib.EngineTypes.startp = _startpos_ar_;
16776 MenhirLib.EngineTypes.endp = _endpos_ar_;
16777 MenhirLib.EngineTypes.next = _menhir_stack;
16778 };
16779 };
16780 };
16781 };
16782 };
16783 } = _menhir_stack in
16784 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16785 let ispure : 'tv_pure = Obj.magic ispure in
16786 let ar : 'tv_arity = Obj.magic ar in
16787 let _startpos = _startpos_ar_ in
16788 let _endpos = _endpos__6_ in
16789 let _v : 'tv_metadec = let kindfn =
16790
16791 # 451 "parser_cocci_menhir.mly"
16792 ( (fun arity name pure check_meta ->
16793 let len = Ast.AnyLen in
16794 let tok = check_meta(Ast.MetaInitListDecl(arity,name,len)) in
16795 !Data.add_initlist_meta name len pure; tok) )
16796 # 16770 "parser_cocci_menhir.ml"
16797
16798 in
16799
16800 # 319 "parser_cocci_menhir.mly"
16801 ( P.create_metadec ar ispure kindfn ids )
16802 # 16776 "parser_cocci_menhir.ml"
16803 in
16804 _menhir_env.MenhirLib.EngineTypes.stack <- {
16805 MenhirLib.EngineTypes.state = _menhir_s;
16806 MenhirLib.EngineTypes.semv = Obj.repr _v;
16807 MenhirLib.EngineTypes.startp = _startpos;
16808 MenhirLib.EngineTypes.endp = _endpos;
16809 MenhirLib.EngineTypes.next = _menhir_stack;
16810 });
16811 (fun _menhir_env ->
16812 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16813 let {
16814 MenhirLib.EngineTypes.startp = _startpos__5_;
16815 MenhirLib.EngineTypes.endp = _endpos__5_;
16816 MenhirLib.EngineTypes.next = {
16817 MenhirLib.EngineTypes.semv = ids;
16818 MenhirLib.EngineTypes.startp = _startpos_ids_;
16819 MenhirLib.EngineTypes.endp = _endpos_ids_;
16820 MenhirLib.EngineTypes.next = {
16821 MenhirLib.EngineTypes.startp = _startpos__3_;
16822 MenhirLib.EngineTypes.endp = _endpos__3_;
16823 MenhirLib.EngineTypes.next = {
16824 MenhirLib.EngineTypes.semv = ispure;
16825 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16826 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16827 MenhirLib.EngineTypes.next = {
16828 MenhirLib.EngineTypes.state = _menhir_s;
16829 MenhirLib.EngineTypes.semv = ar;
16830 MenhirLib.EngineTypes.startp = _startpos_ar_;
16831 MenhirLib.EngineTypes.endp = _endpos_ar_;
16832 MenhirLib.EngineTypes.next = _menhir_stack;
16833 };
16834 };
16835 };
16836 };
16837 } = _menhir_stack in
16838 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16839 let ispure : 'tv_pure = Obj.magic ispure in
16840 let ar : 'tv_arity = Obj.magic ar in
16841 let _startpos = _startpos_ar_ in
16842 let _endpos = _endpos__5_ in
16843 let _v : 'tv_metadec = let kindfn =
16844
16845 # 456 "parser_cocci_menhir.mly"
16846 ( (fun arity name pure check_meta ->
16847 let tok = check_meta(Ast.MetaStmDecl(arity,name)) in
16848 !Data.add_stm_meta name pure; tok) )
16849 # 16823 "parser_cocci_menhir.ml"
16850
16851 in
16852
16853 # 319 "parser_cocci_menhir.mly"
16854 ( P.create_metadec ar ispure kindfn ids )
16855 # 16829 "parser_cocci_menhir.ml"
16856 in
16857 _menhir_env.MenhirLib.EngineTypes.stack <- {
16858 MenhirLib.EngineTypes.state = _menhir_s;
16859 MenhirLib.EngineTypes.semv = Obj.repr _v;
16860 MenhirLib.EngineTypes.startp = _startpos;
16861 MenhirLib.EngineTypes.endp = _endpos;
16862 MenhirLib.EngineTypes.next = _menhir_stack;
16863 });
16864 (fun _menhir_env ->
16865 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16866 let {
16867 MenhirLib.EngineTypes.startp = _startpos__5_;
16868 MenhirLib.EngineTypes.endp = _endpos__5_;
16869 MenhirLib.EngineTypes.next = {
16870 MenhirLib.EngineTypes.semv = ids;
16871 MenhirLib.EngineTypes.startp = _startpos_ids_;
16872 MenhirLib.EngineTypes.endp = _endpos_ids_;
16873 MenhirLib.EngineTypes.next = {
16874 MenhirLib.EngineTypes.startp = _startpos__3_;
16875 MenhirLib.EngineTypes.endp = _endpos__3_;
16876 MenhirLib.EngineTypes.next = {
16877 MenhirLib.EngineTypes.semv = ispure;
16878 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16879 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16880 MenhirLib.EngineTypes.next = {
16881 MenhirLib.EngineTypes.state = _menhir_s;
16882 MenhirLib.EngineTypes.semv = ar;
16883 MenhirLib.EngineTypes.startp = _startpos_ar_;
16884 MenhirLib.EngineTypes.endp = _endpos_ar_;
16885 MenhirLib.EngineTypes.next = _menhir_stack;
16886 };
16887 };
16888 };
16889 };
16890 } = _menhir_stack in
16891 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16892 let ispure : 'tv_pure = Obj.magic ispure in
16893 let ar : 'tv_arity = Obj.magic ar in
16894 let _startpos = _startpos_ar_ in
16895 let _endpos = _endpos__5_ in
16896 let _v : 'tv_metadec = let kindfn =
16897
16898 # 460 "parser_cocci_menhir.mly"
16899 ( (fun arity name pure check_meta ->
16900 let tok = check_meta(Ast.MetaDeclDecl(arity,name)) in
16901 !Data.add_decl_meta name pure; tok) )
16902 # 16876 "parser_cocci_menhir.ml"
16903
16904 in
16905
16906 # 319 "parser_cocci_menhir.mly"
16907 ( P.create_metadec ar ispure kindfn ids )
16908 # 16882 "parser_cocci_menhir.ml"
16909 in
16910 _menhir_env.MenhirLib.EngineTypes.stack <- {
16911 MenhirLib.EngineTypes.state = _menhir_s;
16912 MenhirLib.EngineTypes.semv = Obj.repr _v;
16913 MenhirLib.EngineTypes.startp = _startpos;
16914 MenhirLib.EngineTypes.endp = _endpos;
16915 MenhirLib.EngineTypes.next = _menhir_stack;
16916 });
16917 (fun _menhir_env ->
16918 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16919 let {
16920 MenhirLib.EngineTypes.startp = _startpos__5_;
16921 MenhirLib.EngineTypes.endp = _endpos__5_;
16922 MenhirLib.EngineTypes.next = {
16923 MenhirLib.EngineTypes.semv = ids;
16924 MenhirLib.EngineTypes.startp = _startpos_ids_;
16925 MenhirLib.EngineTypes.endp = _endpos_ids_;
16926 MenhirLib.EngineTypes.next = {
16927 MenhirLib.EngineTypes.startp = _startpos__3_;
16928 MenhirLib.EngineTypes.endp = _endpos__3_;
16929 MenhirLib.EngineTypes.next = {
16930 MenhirLib.EngineTypes.semv = ispure;
16931 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16932 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16933 MenhirLib.EngineTypes.next = {
16934 MenhirLib.EngineTypes.state = _menhir_s;
16935 MenhirLib.EngineTypes.semv = ar;
16936 MenhirLib.EngineTypes.startp = _startpos_ar_;
16937 MenhirLib.EngineTypes.endp = _endpos_ar_;
16938 MenhirLib.EngineTypes.next = _menhir_stack;
16939 };
16940 };
16941 };
16942 };
16943 } = _menhir_stack in
16944 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
16945 let ispure : 'tv_pure = Obj.magic ispure in
16946 let ar : 'tv_arity = Obj.magic ar in
16947 let _startpos = _startpos_ar_ in
16948 let _endpos = _endpos__5_ in
16949 let _v : 'tv_metadec = let kindfn =
16950
16951 # 464 "parser_cocci_menhir.mly"
16952 ( (fun arity name pure check_meta ->
16953 let tok = check_meta(Ast.MetaFieldDecl(arity,name)) in
16954 !Data.add_field_meta name pure; tok) )
16955 # 16929 "parser_cocci_menhir.ml"
16956
16957 in
16958
16959 # 319 "parser_cocci_menhir.mly"
16960 ( P.create_metadec ar ispure kindfn ids )
16961 # 16935 "parser_cocci_menhir.ml"
16962 in
16963 _menhir_env.MenhirLib.EngineTypes.stack <- {
16964 MenhirLib.EngineTypes.state = _menhir_s;
16965 MenhirLib.EngineTypes.semv = Obj.repr _v;
16966 MenhirLib.EngineTypes.startp = _startpos;
16967 MenhirLib.EngineTypes.endp = _endpos;
16968 MenhirLib.EngineTypes.next = _menhir_stack;
16969 });
16970 (fun _menhir_env ->
16971 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
16972 let {
16973 MenhirLib.EngineTypes.startp = _startpos__6_;
16974 MenhirLib.EngineTypes.endp = _endpos__6_;
16975 MenhirLib.EngineTypes.next = {
16976 MenhirLib.EngineTypes.semv = ids;
16977 MenhirLib.EngineTypes.startp = _startpos_ids_;
16978 MenhirLib.EngineTypes.endp = _endpos_ids_;
16979 MenhirLib.EngineTypes.next = {
16980 MenhirLib.EngineTypes.startp = _startpos__4_;
16981 MenhirLib.EngineTypes.endp = _endpos__4_;
16982 MenhirLib.EngineTypes.next = {
16983 MenhirLib.EngineTypes.startp = _startpos__3_;
16984 MenhirLib.EngineTypes.endp = _endpos__3_;
16985 MenhirLib.EngineTypes.next = {
16986 MenhirLib.EngineTypes.semv = ispure;
16987 MenhirLib.EngineTypes.startp = _startpos_ispure_;
16988 MenhirLib.EngineTypes.endp = _endpos_ispure_;
16989 MenhirLib.EngineTypes.next = {
16990 MenhirLib.EngineTypes.state = _menhir_s;
16991 MenhirLib.EngineTypes.semv = ar;
16992 MenhirLib.EngineTypes.startp = _startpos_ar_;
16993 MenhirLib.EngineTypes.endp = _endpos_ar_;
16994 MenhirLib.EngineTypes.next = _menhir_stack;
16995 };
16996 };
16997 };
16998 };
16999 };
17000 } = _menhir_stack in
17001 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
17002 let ispure : 'tv_pure = Obj.magic ispure in
17003 let ar : 'tv_arity = Obj.magic ar in
17004 let _startpos = _startpos_ar_ in
17005 let _endpos = _endpos__6_ in
17006 let _v : 'tv_metadec = let kindfn =
17007
17008 # 468 "parser_cocci_menhir.mly"
17009 ( (fun arity name pure check_meta ->
17010 let len = Ast.AnyLen in
17011 let tok = check_meta(Ast.MetaFieldListDecl(arity,name,len)) in
17012 !Data.add_field_list_meta name len pure; tok) )
17013 # 16987 "parser_cocci_menhir.ml"
17014
17015 in
17016
17017 # 319 "parser_cocci_menhir.mly"
17018 ( P.create_metadec ar ispure kindfn ids )
17019 # 16993 "parser_cocci_menhir.ml"
17020 in
17021 _menhir_env.MenhirLib.EngineTypes.stack <- {
17022 MenhirLib.EngineTypes.state = _menhir_s;
17023 MenhirLib.EngineTypes.semv = Obj.repr _v;
17024 MenhirLib.EngineTypes.startp = _startpos;
17025 MenhirLib.EngineTypes.endp = _endpos;
17026 MenhirLib.EngineTypes.next = _menhir_stack;
17027 });
17028 (fun _menhir_env ->
17029 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17030 let {
17031 MenhirLib.EngineTypes.startp = _startpos__6_;
17032 MenhirLib.EngineTypes.endp = _endpos__6_;
17033 MenhirLib.EngineTypes.next = {
17034 MenhirLib.EngineTypes.semv = ids;
17035 MenhirLib.EngineTypes.startp = _startpos_ids_;
17036 MenhirLib.EngineTypes.endp = _endpos_ids_;
17037 MenhirLib.EngineTypes.next = {
17038 MenhirLib.EngineTypes.startp = _startpos__4_;
17039 MenhirLib.EngineTypes.endp = _endpos__4_;
17040 MenhirLib.EngineTypes.next = {
17041 MenhirLib.EngineTypes.startp = _startpos__3_;
17042 MenhirLib.EngineTypes.endp = _endpos__3_;
17043 MenhirLib.EngineTypes.next = {
17044 MenhirLib.EngineTypes.semv = ispure;
17045 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17046 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17047 MenhirLib.EngineTypes.next = {
17048 MenhirLib.EngineTypes.state = _menhir_s;
17049 MenhirLib.EngineTypes.semv = ar;
17050 MenhirLib.EngineTypes.startp = _startpos_ar_;
17051 MenhirLib.EngineTypes.endp = _endpos_ar_;
17052 MenhirLib.EngineTypes.next = _menhir_stack;
17053 };
17054 };
17055 };
17056 };
17057 };
17058 } = _menhir_stack in
17059 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
17060 let ispure : 'tv_pure = Obj.magic ispure in
17061 let ar : 'tv_arity = Obj.magic ar in
17062 let _startpos = _startpos_ar_ in
17063 let _endpos = _endpos__6_ in
17064 let _v : 'tv_metadec = let kindfn =
17065
17066 # 473 "parser_cocci_menhir.mly"
17067 ( (fun arity name pure check_meta ->
17068 let tok = check_meta(Ast.MetaStmListDecl(arity,name)) in
17069 !Data.add_stmlist_meta name pure; tok) )
17070 # 17044 "parser_cocci_menhir.ml"
17071
17072 in
17073
17074 # 319 "parser_cocci_menhir.mly"
17075 ( P.create_metadec ar ispure kindfn ids )
17076 # 17050 "parser_cocci_menhir.ml"
17077 in
17078 _menhir_env.MenhirLib.EngineTypes.stack <- {
17079 MenhirLib.EngineTypes.state = _menhir_s;
17080 MenhirLib.EngineTypes.semv = Obj.repr _v;
17081 MenhirLib.EngineTypes.startp = _startpos;
17082 MenhirLib.EngineTypes.endp = _endpos;
17083 MenhirLib.EngineTypes.next = _menhir_stack;
17084 });
17085 (fun _menhir_env ->
17086 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17087 let {
17088 MenhirLib.EngineTypes.startp = _startpos__5_;
17089 MenhirLib.EngineTypes.endp = _endpos__5_;
17090 MenhirLib.EngineTypes.next = {
17091 MenhirLib.EngineTypes.semv = ids;
17092 MenhirLib.EngineTypes.startp = _startpos_ids_;
17093 MenhirLib.EngineTypes.endp = _endpos_ids_;
17094 MenhirLib.EngineTypes.next = {
17095 MenhirLib.EngineTypes.startp = _startpos__3_;
17096 MenhirLib.EngineTypes.endp = _endpos__3_;
17097 MenhirLib.EngineTypes.next = {
17098 MenhirLib.EngineTypes.semv = ispure;
17099 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17100 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17101 MenhirLib.EngineTypes.next = {
17102 MenhirLib.EngineTypes.state = _menhir_s;
17103 MenhirLib.EngineTypes.semv = ar;
17104 MenhirLib.EngineTypes.startp = _startpos_ar_;
17105 MenhirLib.EngineTypes.endp = _endpos_ar_;
17106 MenhirLib.EngineTypes.next = _menhir_stack;
17107 };
17108 };
17109 };
17110 };
17111 } = _menhir_stack in
17112 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
17113 let ispure : 'tv_pure = Obj.magic ispure in
17114 let ar : 'tv_arity = Obj.magic ar in
17115 let _startpos = _startpos_ar_ in
17116 let _endpos = _endpos__5_ in
17117 let _v : 'tv_metadec = let kindfn =
17118
17119 # 477 "parser_cocci_menhir.mly"
17120 ( (fun arity (_,name) pure check_meta ->
17121 if arity = Ast.NONE && pure = Ast0.Impure
17122 then (!Data.add_type_name name; [])
17123 else raise (Semantic_cocci.Semantic "bad typedef")) )
17124 # 17098 "parser_cocci_menhir.ml"
17125
17126 in
17127
17128 # 319 "parser_cocci_menhir.mly"
17129 ( P.create_metadec ar ispure kindfn ids )
17130 # 17104 "parser_cocci_menhir.ml"
17131 in
17132 _menhir_env.MenhirLib.EngineTypes.stack <- {
17133 MenhirLib.EngineTypes.state = _menhir_s;
17134 MenhirLib.EngineTypes.semv = Obj.repr _v;
17135 MenhirLib.EngineTypes.startp = _startpos;
17136 MenhirLib.EngineTypes.endp = _endpos;
17137 MenhirLib.EngineTypes.next = _menhir_stack;
17138 });
17139 (fun _menhir_env ->
17140 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17141 let {
17142 MenhirLib.EngineTypes.startp = _startpos__6_;
17143 MenhirLib.EngineTypes.endp = _endpos__6_;
17144 MenhirLib.EngineTypes.next = {
17145 MenhirLib.EngineTypes.semv = ids;
17146 MenhirLib.EngineTypes.startp = _startpos_ids_;
17147 MenhirLib.EngineTypes.endp = _endpos_ids_;
17148 MenhirLib.EngineTypes.next = {
17149 MenhirLib.EngineTypes.startp = _startpos__4_;
17150 MenhirLib.EngineTypes.endp = _endpos__4_;
17151 MenhirLib.EngineTypes.next = {
17152 MenhirLib.EngineTypes.startp = _startpos__3_;
17153 MenhirLib.EngineTypes.endp = _endpos__3_;
17154 MenhirLib.EngineTypes.next = {
17155 MenhirLib.EngineTypes.semv = ispure;
17156 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17157 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17158 MenhirLib.EngineTypes.next = {
17159 MenhirLib.EngineTypes.state = _menhir_s;
17160 MenhirLib.EngineTypes.semv = ar;
17161 MenhirLib.EngineTypes.startp = _startpos_ar_;
17162 MenhirLib.EngineTypes.endp = _endpos_ar_;
17163 MenhirLib.EngineTypes.next = _menhir_stack;
17164 };
17165 };
17166 };
17167 };
17168 };
17169 } = _menhir_stack in
17170 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
17171 let ispure : 'tv_pure = Obj.magic ispure in
17172 let ar : 'tv_arity = Obj.magic ar in
17173 let _startpos = _startpos_ar_ in
17174 let _endpos = _endpos__6_ in
17175 let _v : 'tv_metadec = let kindfn =
17176
17177 # 482 "parser_cocci_menhir.mly"
17178 ( (fun arity (_,name) pure check_meta ->
17179 if arity = Ast.NONE && pure = Ast0.Impure
17180 then (!Data.add_declarer_name name; [])
17181 else raise (Semantic_cocci.Semantic "bad declarer")) )
17182 # 17156 "parser_cocci_menhir.ml"
17183
17184 in
17185
17186 # 319 "parser_cocci_menhir.mly"
17187 ( P.create_metadec ar ispure kindfn ids )
17188 # 17162 "parser_cocci_menhir.ml"
17189 in
17190 _menhir_env.MenhirLib.EngineTypes.stack <- {
17191 MenhirLib.EngineTypes.state = _menhir_s;
17192 MenhirLib.EngineTypes.semv = Obj.repr _v;
17193 MenhirLib.EngineTypes.startp = _startpos;
17194 MenhirLib.EngineTypes.endp = _endpos;
17195 MenhirLib.EngineTypes.next = _menhir_stack;
17196 });
17197 (fun _menhir_env ->
17198 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17199 let {
17200 MenhirLib.EngineTypes.startp = _startpos__6_;
17201 MenhirLib.EngineTypes.endp = _endpos__6_;
17202 MenhirLib.EngineTypes.next = {
17203 MenhirLib.EngineTypes.semv = ids;
17204 MenhirLib.EngineTypes.startp = _startpos_ids_;
17205 MenhirLib.EngineTypes.endp = _endpos_ids_;
17206 MenhirLib.EngineTypes.next = {
17207 MenhirLib.EngineTypes.startp = _startpos__4_;
17208 MenhirLib.EngineTypes.endp = _endpos__4_;
17209 MenhirLib.EngineTypes.next = {
17210 MenhirLib.EngineTypes.startp = _startpos__3_;
17211 MenhirLib.EngineTypes.endp = _endpos__3_;
17212 MenhirLib.EngineTypes.next = {
17213 MenhirLib.EngineTypes.semv = ispure;
17214 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17215 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17216 MenhirLib.EngineTypes.next = {
17217 MenhirLib.EngineTypes.state = _menhir_s;
17218 MenhirLib.EngineTypes.semv = ar;
17219 MenhirLib.EngineTypes.startp = _startpos_ar_;
17220 MenhirLib.EngineTypes.endp = _endpos_ar_;
17221 MenhirLib.EngineTypes.next = _menhir_stack;
17222 };
17223 };
17224 };
17225 };
17226 };
17227 } = _menhir_stack in
17228 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
17229 let ispure : 'tv_pure = Obj.magic ispure in
17230 let ar : 'tv_arity = Obj.magic ar in
17231 let _startpos = _startpos_ar_ in
17232 let _endpos = _endpos__6_ in
17233 let _v : 'tv_metadec = let kindfn =
17234
17235 # 487 "parser_cocci_menhir.mly"
17236 ( (fun arity (_,name) pure check_meta ->
17237 if arity = Ast.NONE && pure = Ast0.Impure
17238 then (!Data.add_iterator_name name; [])
17239 else raise (Semantic_cocci.Semantic "bad iterator")) )
17240 # 17214 "parser_cocci_menhir.ml"
17241
17242 in
17243
17244 # 319 "parser_cocci_menhir.mly"
17245 ( P.create_metadec ar ispure kindfn ids )
17246 # 17220 "parser_cocci_menhir.ml"
17247 in
17248 _menhir_env.MenhirLib.EngineTypes.stack <- {
17249 MenhirLib.EngineTypes.state = _menhir_s;
17250 MenhirLib.EngineTypes.semv = Obj.repr _v;
17251 MenhirLib.EngineTypes.startp = _startpos;
17252 MenhirLib.EngineTypes.endp = _endpos;
17253 MenhirLib.EngineTypes.next = _menhir_stack;
17254 });
17255 (fun _menhir_env ->
17256 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17257 let {
17258 MenhirLib.EngineTypes.startp = _startpos__4_;
17259 MenhirLib.EngineTypes.endp = _endpos__4_;
17260 MenhirLib.EngineTypes.next = {
17261 MenhirLib.EngineTypes.semv = ids;
17262 MenhirLib.EngineTypes.startp = _startpos_ids_;
17263 MenhirLib.EngineTypes.endp = _endpos_ids_;
17264 MenhirLib.EngineTypes.next = {
17265 MenhirLib.EngineTypes.startp = _startpos__2_;
17266 MenhirLib.EngineTypes.endp = _endpos__2_;
17267 MenhirLib.EngineTypes.next = {
17268 MenhirLib.EngineTypes.state = _menhir_s;
17269 MenhirLib.EngineTypes.startp = _startpos__1_;
17270 MenhirLib.EngineTypes.endp = _endpos__1_;
17271 MenhirLib.EngineTypes.next = _menhir_stack;
17272 };
17273 };
17274 };
17275 } = _menhir_stack in
17276 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_seed_ = Obj.magic ids in
17277 let _startpos = _startpos__1_ in
17278 let _endpos = _endpos__4_ in
17279 let _v : 'tv_metadec = let kindfn =
17280
17281 # 418 "parser_cocci_menhir.mly"
17282 ( (fun name check_meta seed ->
17283 let tok = check_meta(Ast.MetaFreshIdDecl(name,seed)) in
17284 !Data.add_fresh_id_meta name seed; tok) )
17285 # 17259 "parser_cocci_menhir.ml"
17286
17287 in
17288
17289 # 322 "parser_cocci_menhir.mly"
17290 ( P.create_fresh_metadec kindfn ids )
17291 # 17265 "parser_cocci_menhir.ml"
17292 in
17293 _menhir_env.MenhirLib.EngineTypes.stack <- {
17294 MenhirLib.EngineTypes.state = _menhir_s;
17295 MenhirLib.EngineTypes.semv = Obj.repr _v;
17296 MenhirLib.EngineTypes.startp = _startpos;
17297 MenhirLib.EngineTypes.endp = _endpos;
17298 MenhirLib.EngineTypes.next = _menhir_stack;
17299 });
17300 (fun _menhir_env ->
17301 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17302 let {
17303 MenhirLib.EngineTypes.startp = _startpos__5_;
17304 MenhirLib.EngineTypes.endp = _endpos__5_;
17305 MenhirLib.EngineTypes.next = {
17306 MenhirLib.EngineTypes.semv = ids;
17307 MenhirLib.EngineTypes.startp = _startpos_ids_;
17308 MenhirLib.EngineTypes.endp = _endpos_ids_;
17309 MenhirLib.EngineTypes.next = {
17310 MenhirLib.EngineTypes.startp = _startpos__3_;
17311 MenhirLib.EngineTypes.endp = _endpos__3_;
17312 MenhirLib.EngineTypes.next = {
17313 MenhirLib.EngineTypes.semv = ispure;
17314 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17315 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17316 MenhirLib.EngineTypes.next = {
17317 MenhirLib.EngineTypes.state = _menhir_s;
17318 MenhirLib.EngineTypes.semv = ar;
17319 MenhirLib.EngineTypes.startp = _startpos_ar_;
17320 MenhirLib.EngineTypes.endp = _endpos_ar_;
17321 MenhirLib.EngineTypes.next = _menhir_stack;
17322 };
17323 };
17324 };
17325 };
17326 } = _menhir_stack in
17327 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ = Obj.magic ids in
17328 let ispure : 'tv_pure = Obj.magic ispure in
17329 let ar : 'tv_arity = Obj.magic ar in
17330 let _startpos = _startpos_ar_ in
17331 let _endpos = _endpos__5_ in
17332 let _v : 'tv_metadec = let kindfn =
17333
17334 # 494 "parser_cocci_menhir.mly"
17335 (
17336 let idfn arity name pure check_meta constraints =
17337 let tok = check_meta(Ast.MetaIdDecl(arity,name)) in
17338 !Data.add_id_meta name constraints pure; tok in
17339 let virtfn arity name pure check_meta virtual_env =
17340 try
17341 let vl = List.assoc name virtual_env in
17342 !Data.add_virt_id_meta_found name vl; []
17343 with Not_found ->
17344 Iteration.parsed_virtual_identifiers :=
17345 Common.union_set [name]
17346 !Iteration.parsed_virtual_identifiers;
17347 let name = ("virtual",name) in
17348 let tok = check_meta(Ast.MetaIdDecl(arity,name)) in
17349 !Data.add_virt_id_meta_not_found name pure; tok in
17350 (idfn,virtfn) )
17351 # 17325 "parser_cocci_menhir.ml"
17352
17353 in
17354
17355 # 328 "parser_cocci_menhir.mly"
17356 ( let (normal,virt) = Common.partition_either (fun x -> x) ids in
17357 let (idfn,virtfn) = kindfn in
17358 function cr ->
17359 (P.create_metadec_with_constraints ar ispure idfn normal cr) @
17360 (P.create_metadec_virt ar ispure virtfn virt cr) )
17361 # 17335 "parser_cocci_menhir.ml"
17362 in
17363 _menhir_env.MenhirLib.EngineTypes.stack <- {
17364 MenhirLib.EngineTypes.state = _menhir_s;
17365 MenhirLib.EngineTypes.semv = Obj.repr _v;
17366 MenhirLib.EngineTypes.startp = _startpos;
17367 MenhirLib.EngineTypes.endp = _endpos;
17368 MenhirLib.EngineTypes.next = _menhir_stack;
17369 });
17370 (fun _menhir_env ->
17371 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17372 let {
17373 MenhirLib.EngineTypes.startp = _startpos__5_;
17374 MenhirLib.EngineTypes.endp = _endpos__5_;
17375 MenhirLib.EngineTypes.next = {
17376 MenhirLib.EngineTypes.semv = ids;
17377 MenhirLib.EngineTypes.startp = _startpos_ids_;
17378 MenhirLib.EngineTypes.endp = _endpos_ids_;
17379 MenhirLib.EngineTypes.next = {
17380 MenhirLib.EngineTypes.startp = _startpos__3_;
17381 MenhirLib.EngineTypes.endp = _endpos__3_;
17382 MenhirLib.EngineTypes.next = {
17383 MenhirLib.EngineTypes.semv = ispure;
17384 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17385 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17386 MenhirLib.EngineTypes.next = {
17387 MenhirLib.EngineTypes.state = _menhir_s;
17388 MenhirLib.EngineTypes.semv = ar;
17389 MenhirLib.EngineTypes.startp = _startpos_ar_;
17390 MenhirLib.EngineTypes.endp = _endpos_ar_;
17391 MenhirLib.EngineTypes.next = _menhir_stack;
17392 };
17393 };
17394 };
17395 };
17396 } = _menhir_stack in
17397 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic ids in
17398 let ispure : 'tv_pure = Obj.magic ispure in
17399 let ar : 'tv_arity = Obj.magic ar in
17400 let _startpos = _startpos_ar_ in
17401 let _endpos = _endpos__5_ in
17402 let _v : 'tv_metadec = let kindfn =
17403
17404 # 513 "parser_cocci_menhir.mly"
17405 ( (fun arity name pure check_meta constraints ->
17406 let tok = check_meta(Ast.MetaFuncDecl(arity,name)) in
17407 !Data.add_func_meta name constraints pure; tok) )
17408 # 17382 "parser_cocci_menhir.ml"
17409
17410 in
17411
17412 # 337 "parser_cocci_menhir.mly"
17413 ( P.create_metadec_with_constraints ar ispure kindfn ids )
17414 # 17388 "parser_cocci_menhir.ml"
17415 in
17416 _menhir_env.MenhirLib.EngineTypes.stack <- {
17417 MenhirLib.EngineTypes.state = _menhir_s;
17418 MenhirLib.EngineTypes.semv = Obj.repr _v;
17419 MenhirLib.EngineTypes.startp = _startpos;
17420 MenhirLib.EngineTypes.endp = _endpos;
17421 MenhirLib.EngineTypes.next = _menhir_stack;
17422 });
17423 (fun _menhir_env ->
17424 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17425 let {
17426 MenhirLib.EngineTypes.startp = _startpos__6_;
17427 MenhirLib.EngineTypes.endp = _endpos__6_;
17428 MenhirLib.EngineTypes.next = {
17429 MenhirLib.EngineTypes.semv = ids;
17430 MenhirLib.EngineTypes.startp = _startpos_ids_;
17431 MenhirLib.EngineTypes.endp = _endpos_ids_;
17432 MenhirLib.EngineTypes.next = {
17433 MenhirLib.EngineTypes.startp = _startpos__4_;
17434 MenhirLib.EngineTypes.endp = _endpos__4_;
17435 MenhirLib.EngineTypes.next = {
17436 MenhirLib.EngineTypes.startp = _startpos__3_;
17437 MenhirLib.EngineTypes.endp = _endpos__3_;
17438 MenhirLib.EngineTypes.next = {
17439 MenhirLib.EngineTypes.semv = ispure;
17440 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17441 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17442 MenhirLib.EngineTypes.next = {
17443 MenhirLib.EngineTypes.state = _menhir_s;
17444 MenhirLib.EngineTypes.semv = ar;
17445 MenhirLib.EngineTypes.startp = _startpos_ar_;
17446 MenhirLib.EngineTypes.endp = _endpos_ar_;
17447 MenhirLib.EngineTypes.next = _menhir_stack;
17448 };
17449 };
17450 };
17451 };
17452 };
17453 } = _menhir_stack in
17454 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic ids in
17455 let ispure : 'tv_pure = Obj.magic ispure in
17456 let ar : 'tv_arity = Obj.magic ar in
17457 let _startpos = _startpos_ar_ in
17458 let _endpos = _endpos__6_ in
17459 let _v : 'tv_metadec = let kindfn =
17460
17461 # 517 "parser_cocci_menhir.mly"
17462 ( (fun arity name pure check_meta constraints ->
17463 let tok = check_meta(Ast.MetaLocalFuncDecl(arity,name)) in
17464 !Data.add_local_func_meta name constraints pure;
17465 tok) )
17466 # 17440 "parser_cocci_menhir.ml"
17467
17468 in
17469
17470 # 337 "parser_cocci_menhir.mly"
17471 ( P.create_metadec_with_constraints ar ispure kindfn ids )
17472 # 17446 "parser_cocci_menhir.ml"
17473 in
17474 _menhir_env.MenhirLib.EngineTypes.stack <- {
17475 MenhirLib.EngineTypes.state = _menhir_s;
17476 MenhirLib.EngineTypes.semv = Obj.repr _v;
17477 MenhirLib.EngineTypes.startp = _startpos;
17478 MenhirLib.EngineTypes.endp = _endpos;
17479 MenhirLib.EngineTypes.next = _menhir_stack;
17480 });
17481 (fun _menhir_env ->
17482 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17483 let {
17484 MenhirLib.EngineTypes.startp = _startpos__5_;
17485 MenhirLib.EngineTypes.endp = _endpos__5_;
17486 MenhirLib.EngineTypes.next = {
17487 MenhirLib.EngineTypes.semv = ids;
17488 MenhirLib.EngineTypes.startp = _startpos_ids_;
17489 MenhirLib.EngineTypes.endp = _endpos_ids_;
17490 MenhirLib.EngineTypes.next = {
17491 MenhirLib.EngineTypes.startp = _startpos__3_;
17492 MenhirLib.EngineTypes.endp = _endpos__3_;
17493 MenhirLib.EngineTypes.next = {
17494 MenhirLib.EngineTypes.semv = ispure;
17495 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17496 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17497 MenhirLib.EngineTypes.next = {
17498 MenhirLib.EngineTypes.state = _menhir_s;
17499 MenhirLib.EngineTypes.semv = ar;
17500 MenhirLib.EngineTypes.startp = _startpos_ar_;
17501 MenhirLib.EngineTypes.endp = _endpos_ar_;
17502 MenhirLib.EngineTypes.next = _menhir_stack;
17503 };
17504 };
17505 };
17506 };
17507 } = _menhir_stack in
17508 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic ids in
17509 let ispure : 'tv_pure = Obj.magic ispure in
17510 let ar : 'tv_arity = Obj.magic ar in
17511 let _startpos = _startpos_ar_ in
17512 let _endpos = _endpos__5_ in
17513 let _v : 'tv_metadec = let kindfn =
17514
17515 # 522 "parser_cocci_menhir.mly"
17516 ( (fun arity name pure check_meta constraints ->
17517 let tok = check_meta(Ast.MetaDeclarerDecl(arity,name)) in
17518 !Data.add_declarer_meta name constraints pure; tok) )
17519 # 17493 "parser_cocci_menhir.ml"
17520
17521 in
17522
17523 # 337 "parser_cocci_menhir.mly"
17524 ( P.create_metadec_with_constraints ar ispure kindfn ids )
17525 # 17499 "parser_cocci_menhir.ml"
17526 in
17527 _menhir_env.MenhirLib.EngineTypes.stack <- {
17528 MenhirLib.EngineTypes.state = _menhir_s;
17529 MenhirLib.EngineTypes.semv = Obj.repr _v;
17530 MenhirLib.EngineTypes.startp = _startpos;
17531 MenhirLib.EngineTypes.endp = _endpos;
17532 MenhirLib.EngineTypes.next = _menhir_stack;
17533 });
17534 (fun _menhir_env ->
17535 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17536 let {
17537 MenhirLib.EngineTypes.startp = _startpos__5_;
17538 MenhirLib.EngineTypes.endp = _endpos__5_;
17539 MenhirLib.EngineTypes.next = {
17540 MenhirLib.EngineTypes.semv = ids;
17541 MenhirLib.EngineTypes.startp = _startpos_ids_;
17542 MenhirLib.EngineTypes.endp = _endpos_ids_;
17543 MenhirLib.EngineTypes.next = {
17544 MenhirLib.EngineTypes.startp = _startpos__3_;
17545 MenhirLib.EngineTypes.endp = _endpos__3_;
17546 MenhirLib.EngineTypes.next = {
17547 MenhirLib.EngineTypes.semv = ispure;
17548 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17549 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17550 MenhirLib.EngineTypes.next = {
17551 MenhirLib.EngineTypes.state = _menhir_s;
17552 MenhirLib.EngineTypes.semv = ar;
17553 MenhirLib.EngineTypes.startp = _startpos_ar_;
17554 MenhirLib.EngineTypes.endp = _endpos_ar_;
17555 MenhirLib.EngineTypes.next = _menhir_stack;
17556 };
17557 };
17558 };
17559 };
17560 } = _menhir_stack in
17561 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic ids in
17562 let ispure : 'tv_pure = Obj.magic ispure in
17563 let ar : 'tv_arity = Obj.magic ar in
17564 let _startpos = _startpos_ar_ in
17565 let _endpos = _endpos__5_ in
17566 let _v : 'tv_metadec = let kindfn =
17567
17568 # 526 "parser_cocci_menhir.mly"
17569 ( (fun arity name pure check_meta constraints ->
17570 let tok = check_meta(Ast.MetaIteratorDecl(arity,name)) in
17571 !Data.add_iterator_meta name constraints pure; tok) )
17572 # 17546 "parser_cocci_menhir.ml"
17573
17574 in
17575
17576 # 337 "parser_cocci_menhir.mly"
17577 ( P.create_metadec_with_constraints ar ispure kindfn ids )
17578 # 17552 "parser_cocci_menhir.ml"
17579 in
17580 _menhir_env.MenhirLib.EngineTypes.stack <- {
17581 MenhirLib.EngineTypes.state = _menhir_s;
17582 MenhirLib.EngineTypes.semv = Obj.repr _v;
17583 MenhirLib.EngineTypes.startp = _startpos;
17584 MenhirLib.EngineTypes.endp = _endpos;
17585 MenhirLib.EngineTypes.next = _menhir_stack;
17586 });
17587 (fun _menhir_env ->
17588 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17589 let {
17590 MenhirLib.EngineTypes.startp = _startpos__5_;
17591 MenhirLib.EngineTypes.endp = _endpos__5_;
17592 MenhirLib.EngineTypes.next = {
17593 MenhirLib.EngineTypes.semv = ids;
17594 MenhirLib.EngineTypes.startp = _startpos_ids_;
17595 MenhirLib.EngineTypes.endp = _endpos_ids_;
17596 MenhirLib.EngineTypes.next = {
17597 MenhirLib.EngineTypes.startp = _startpos__3_;
17598 MenhirLib.EngineTypes.endp = _endpos__3_;
17599 MenhirLib.EngineTypes.next = {
17600 MenhirLib.EngineTypes.semv = ispure;
17601 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17602 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17603 MenhirLib.EngineTypes.next = {
17604 MenhirLib.EngineTypes.state = _menhir_s;
17605 MenhirLib.EngineTypes.semv = ar;
17606 MenhirLib.EngineTypes.startp = _startpos_ar_;
17607 MenhirLib.EngineTypes.endp = _endpos_ar_;
17608 MenhirLib.EngineTypes.next = _menhir_stack;
17609 };
17610 };
17611 };
17612 };
17613 } = _menhir_stack in
17614 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
17615 let ispure : 'tv_pure = Obj.magic ispure in
17616 let ar : 'tv_arity = Obj.magic ar in
17617 let _startpos = _startpos_ar_ in
17618 let _endpos = _endpos__5_ in
17619 let _v : 'tv_metadec = let kindfn =
17620
17621 # 532 "parser_cocci_menhir.mly"
17622 ( (fun arity name pure check_meta constraints ->
17623 let tok = check_meta(Ast.MetaErrDecl(arity,name)) in
17624 !Data.add_err_meta name constraints pure; tok) )
17625 # 17599 "parser_cocci_menhir.ml"
17626
17627 in
17628
17629 # 342 "parser_cocci_menhir.mly"
17630 ( P.create_metadec_with_constraints ar ispure kindfn ids )
17631 # 17605 "parser_cocci_menhir.ml"
17632 in
17633 _menhir_env.MenhirLib.EngineTypes.stack <- {
17634 MenhirLib.EngineTypes.state = _menhir_s;
17635 MenhirLib.EngineTypes.semv = Obj.repr _v;
17636 MenhirLib.EngineTypes.startp = _startpos;
17637 MenhirLib.EngineTypes.endp = _endpos;
17638 MenhirLib.EngineTypes.next = _menhir_stack;
17639 });
17640 (fun _menhir_env ->
17641 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17642 let {
17643 MenhirLib.EngineTypes.startp = _startpos__6_;
17644 MenhirLib.EngineTypes.endp = _endpos__6_;
17645 MenhirLib.EngineTypes.next = {
17646 MenhirLib.EngineTypes.semv = ids;
17647 MenhirLib.EngineTypes.startp = _startpos_ids_;
17648 MenhirLib.EngineTypes.endp = _endpos_ids_;
17649 MenhirLib.EngineTypes.next = {
17650 MenhirLib.EngineTypes.startp = _startpos__4_;
17651 MenhirLib.EngineTypes.endp = _endpos__4_;
17652 MenhirLib.EngineTypes.next = {
17653 MenhirLib.EngineTypes.semv = l0;
17654 MenhirLib.EngineTypes.startp = _startpos_l0_;
17655 MenhirLib.EngineTypes.endp = _endpos_l0_;
17656 MenhirLib.EngineTypes.next = {
17657 MenhirLib.EngineTypes.semv = ispure;
17658 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17659 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17660 MenhirLib.EngineTypes.next = {
17661 MenhirLib.EngineTypes.state = _menhir_s;
17662 MenhirLib.EngineTypes.semv = ar;
17663 MenhirLib.EngineTypes.startp = _startpos_ar_;
17664 MenhirLib.EngineTypes.endp = _endpos_ar_;
17665 MenhirLib.EngineTypes.next = _menhir_stack;
17666 };
17667 };
17668 };
17669 };
17670 };
17671 } = _menhir_stack in
17672 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
17673 let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
17674 let ispure : 'tv_pure = Obj.magic ispure in
17675 let ar : 'tv_arity = Obj.magic ar in
17676 let _startpos = _startpos_ar_ in
17677 let _endpos = _endpos__6_ in
17678 let _v : 'tv_metadec = let kindfn =
17679 let l = l0 in
17680 let ty =
17681
17682 # 39 "standard.mly"
17683 ( None )
17684 # 17658 "parser_cocci_menhir.ml"
17685
17686 in
17687
17688 # 536 "parser_cocci_menhir.mly"
17689 ( (fun arity name pure check_meta constraints ->
17690 match l with
17691 None ->
17692 !Data.add_idexp_meta ty name constraints pure;
17693 check_meta(Ast.MetaIdExpDecl(arity,name,ty))
17694 | Some _ ->
17695 !Data.add_local_idexp_meta ty name constraints pure;
17696 check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
17697 # 17671 "parser_cocci_menhir.ml"
17698
17699 in
17700
17701 # 342 "parser_cocci_menhir.mly"
17702 ( P.create_metadec_with_constraints ar ispure kindfn ids )
17703 # 17677 "parser_cocci_menhir.ml"
17704 in
17705 _menhir_env.MenhirLib.EngineTypes.stack <- {
17706 MenhirLib.EngineTypes.state = _menhir_s;
17707 MenhirLib.EngineTypes.semv = Obj.repr _v;
17708 MenhirLib.EngineTypes.startp = _startpos;
17709 MenhirLib.EngineTypes.endp = _endpos;
17710 MenhirLib.EngineTypes.next = _menhir_stack;
17711 });
17712 (fun _menhir_env ->
17713 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17714 let {
17715 MenhirLib.EngineTypes.startp = _startpos__7_;
17716 MenhirLib.EngineTypes.endp = _endpos__7_;
17717 MenhirLib.EngineTypes.next = {
17718 MenhirLib.EngineTypes.semv = ids;
17719 MenhirLib.EngineTypes.startp = _startpos_ids_;
17720 MenhirLib.EngineTypes.endp = _endpos_ids_;
17721 MenhirLib.EngineTypes.next = {
17722 MenhirLib.EngineTypes.semv = x00;
17723 MenhirLib.EngineTypes.startp = _startpos_x00_;
17724 MenhirLib.EngineTypes.endp = _endpos_x00_;
17725 MenhirLib.EngineTypes.next = {
17726 MenhirLib.EngineTypes.startp = _startpos__4_;
17727 MenhirLib.EngineTypes.endp = _endpos__4_;
17728 MenhirLib.EngineTypes.next = {
17729 MenhirLib.EngineTypes.semv = l0;
17730 MenhirLib.EngineTypes.startp = _startpos_l0_;
17731 MenhirLib.EngineTypes.endp = _endpos_l0_;
17732 MenhirLib.EngineTypes.next = {
17733 MenhirLib.EngineTypes.semv = ispure;
17734 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17735 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17736 MenhirLib.EngineTypes.next = {
17737 MenhirLib.EngineTypes.state = _menhir_s;
17738 MenhirLib.EngineTypes.semv = ar;
17739 MenhirLib.EngineTypes.startp = _startpos_ar_;
17740 MenhirLib.EngineTypes.endp = _endpos_ar_;
17741 MenhirLib.EngineTypes.next = _menhir_stack;
17742 };
17743 };
17744 };
17745 };
17746 };
17747 };
17748 } = _menhir_stack in
17749 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
17750 let x00 : 'tv_meta_exp_type = Obj.magic x00 in
17751 let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
17752 let ispure : 'tv_pure = Obj.magic ispure in
17753 let ar : 'tv_arity = Obj.magic ar in
17754 let _startpos = _startpos_ar_ in
17755 let _endpos = _endpos__7_ in
17756 let _v : 'tv_metadec = let kindfn =
17757 let x0 = x00 in
17758 let l = l0 in
17759 let ty =
17760 let x = x0 in
17761
17762 # 41 "standard.mly"
17763 ( Some x )
17764 # 17738 "parser_cocci_menhir.ml"
17765
17766 in
17767
17768 # 536 "parser_cocci_menhir.mly"
17769 ( (fun arity name pure check_meta constraints ->
17770 match l with
17771 None ->
17772 !Data.add_idexp_meta ty name constraints pure;
17773 check_meta(Ast.MetaIdExpDecl(arity,name,ty))
17774 | Some _ ->
17775 !Data.add_local_idexp_meta ty name constraints pure;
17776 check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
17777 # 17751 "parser_cocci_menhir.ml"
17778
17779 in
17780
17781 # 342 "parser_cocci_menhir.mly"
17782 ( P.create_metadec_with_constraints ar ispure kindfn ids )
17783 # 17757 "parser_cocci_menhir.ml"
17784 in
17785 _menhir_env.MenhirLib.EngineTypes.stack <- {
17786 MenhirLib.EngineTypes.state = _menhir_s;
17787 MenhirLib.EngineTypes.semv = Obj.repr _v;
17788 MenhirLib.EngineTypes.startp = _startpos;
17789 MenhirLib.EngineTypes.endp = _endpos;
17790 MenhirLib.EngineTypes.next = _menhir_stack;
17791 });
17792 (fun _menhir_env ->
17793 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17794 let {
17795 MenhirLib.EngineTypes.startp = _startpos__7_;
17796 MenhirLib.EngineTypes.endp = _endpos__7_;
17797 MenhirLib.EngineTypes.next = {
17798 MenhirLib.EngineTypes.semv = ids;
17799 MenhirLib.EngineTypes.startp = _startpos_ids_;
17800 MenhirLib.EngineTypes.endp = _endpos_ids_;
17801 MenhirLib.EngineTypes.next = {
17802 MenhirLib.EngineTypes.semv = m0;
17803 MenhirLib.EngineTypes.startp = _startpos_m0_;
17804 MenhirLib.EngineTypes.endp = _endpos_m0_;
17805 MenhirLib.EngineTypes.next = {
17806 MenhirLib.EngineTypes.startp = _startpos__4_;
17807 MenhirLib.EngineTypes.endp = _endpos__4_;
17808 MenhirLib.EngineTypes.next = {
17809 MenhirLib.EngineTypes.semv = l0;
17810 MenhirLib.EngineTypes.startp = _startpos_l0_;
17811 MenhirLib.EngineTypes.endp = _endpos_l0_;
17812 MenhirLib.EngineTypes.next = {
17813 MenhirLib.EngineTypes.semv = ispure;
17814 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17815 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17816 MenhirLib.EngineTypes.next = {
17817 MenhirLib.EngineTypes.state = _menhir_s;
17818 MenhirLib.EngineTypes.semv = ar;
17819 MenhirLib.EngineTypes.startp = _startpos_ar_;
17820 MenhirLib.EngineTypes.endp = _endpos_ar_;
17821 MenhirLib.EngineTypes.next = _menhir_stack;
17822 };
17823 };
17824 };
17825 };
17826 };
17827 };
17828 } = _menhir_stack in
17829 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
17830 let m0 : 'tv_nonempty_list_TMul_ = Obj.magic m0 in
17831 let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
17832 let ispure : 'tv_pure = Obj.magic ispure in
17833 let ar : 'tv_arity = Obj.magic ar in
17834 let _startpos = _startpos_ar_ in
17835 let _endpos = _endpos__7_ in
17836 let _v : 'tv_metadec = let kindfn =
17837 let m = m0 in
17838 let l = l0 in
17839
17840 # 545 "parser_cocci_menhir.mly"
17841 ( (fun arity name pure check_meta constraints ->
17842 let ty = Some [P.ty_pointerify Type_cocci.Unknown m] in
17843 match l with
17844 None ->
17845 !Data.add_idexp_meta ty name constraints pure;
17846 check_meta(Ast.MetaIdExpDecl(arity,name,ty))
17847 | Some _ ->
17848 !Data.add_local_idexp_meta ty name constraints pure;
17849 check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
17850 # 17824 "parser_cocci_menhir.ml"
17851
17852 in
17853
17854 # 342 "parser_cocci_menhir.mly"
17855 ( P.create_metadec_with_constraints ar ispure kindfn ids )
17856 # 17830 "parser_cocci_menhir.ml"
17857 in
17858 _menhir_env.MenhirLib.EngineTypes.stack <- {
17859 MenhirLib.EngineTypes.state = _menhir_s;
17860 MenhirLib.EngineTypes.semv = Obj.repr _v;
17861 MenhirLib.EngineTypes.startp = _startpos;
17862 MenhirLib.EngineTypes.endp = _endpos;
17863 MenhirLib.EngineTypes.next = _menhir_stack;
17864 });
17865 (fun _menhir_env ->
17866 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17867 let {
17868 MenhirLib.EngineTypes.startp = _startpos__6_;
17869 MenhirLib.EngineTypes.endp = _endpos__6_;
17870 MenhirLib.EngineTypes.next = {
17871 MenhirLib.EngineTypes.semv = ids;
17872 MenhirLib.EngineTypes.startp = _startpos_ids_;
17873 MenhirLib.EngineTypes.endp = _endpos_ids_;
17874 MenhirLib.EngineTypes.next = {
17875 MenhirLib.EngineTypes.semv = ty0;
17876 MenhirLib.EngineTypes.startp = _startpos_ty0_;
17877 MenhirLib.EngineTypes.endp = _endpos_ty0_;
17878 MenhirLib.EngineTypes.next = {
17879 MenhirLib.EngineTypes.startp = _startpos__3_;
17880 MenhirLib.EngineTypes.endp = _endpos__3_;
17881 MenhirLib.EngineTypes.next = {
17882 MenhirLib.EngineTypes.semv = ispure;
17883 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17884 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17885 MenhirLib.EngineTypes.next = {
17886 MenhirLib.EngineTypes.state = _menhir_s;
17887 MenhirLib.EngineTypes.semv = ar;
17888 MenhirLib.EngineTypes.startp = _startpos_ar_;
17889 MenhirLib.EngineTypes.endp = _endpos_ar_;
17890 MenhirLib.EngineTypes.next = _menhir_stack;
17891 };
17892 };
17893 };
17894 };
17895 };
17896 } = _menhir_stack in
17897 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
17898 let ty0 : 'tv_expression_type = Obj.magic ty0 in
17899 let ispure : 'tv_pure = Obj.magic ispure in
17900 let ar : 'tv_arity = Obj.magic ar in
17901 let _startpos = _startpos_ar_ in
17902 let _endpos = _endpos__6_ in
17903 let _v : 'tv_metadec = let kindfn =
17904 let ty = ty0 in
17905
17906 # 555 "parser_cocci_menhir.mly"
17907 ( (fun arity name pure check_meta constraints ->
17908 let ty = Some [ty] in
17909 let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
17910 !Data.add_exp_meta ty name constraints pure; tok) )
17911 # 17885 "parser_cocci_menhir.ml"
17912
17913 in
17914
17915 # 342 "parser_cocci_menhir.mly"
17916 ( P.create_metadec_with_constraints ar ispure kindfn ids )
17917 # 17891 "parser_cocci_menhir.ml"
17918 in
17919 _menhir_env.MenhirLib.EngineTypes.stack <- {
17920 MenhirLib.EngineTypes.state = _menhir_s;
17921 MenhirLib.EngineTypes.semv = Obj.repr _v;
17922 MenhirLib.EngineTypes.startp = _startpos;
17923 MenhirLib.EngineTypes.endp = _endpos;
17924 MenhirLib.EngineTypes.next = _menhir_stack;
17925 });
17926 (fun _menhir_env ->
17927 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17928 let {
17929 MenhirLib.EngineTypes.startp = _startpos__5_;
17930 MenhirLib.EngineTypes.endp = _endpos__5_;
17931 MenhirLib.EngineTypes.next = {
17932 MenhirLib.EngineTypes.semv = ids;
17933 MenhirLib.EngineTypes.startp = _startpos_ids_;
17934 MenhirLib.EngineTypes.endp = _endpos_ids_;
17935 MenhirLib.EngineTypes.next = {
17936 MenhirLib.EngineTypes.startp = _startpos__3_;
17937 MenhirLib.EngineTypes.endp = _endpos__3_;
17938 MenhirLib.EngineTypes.next = {
17939 MenhirLib.EngineTypes.semv = ispure;
17940 MenhirLib.EngineTypes.startp = _startpos_ispure_;
17941 MenhirLib.EngineTypes.endp = _endpos_ispure_;
17942 MenhirLib.EngineTypes.next = {
17943 MenhirLib.EngineTypes.state = _menhir_s;
17944 MenhirLib.EngineTypes.semv = ar;
17945 MenhirLib.EngineTypes.startp = _startpos_ar_;
17946 MenhirLib.EngineTypes.endp = _endpos_ar_;
17947 MenhirLib.EngineTypes.next = _menhir_stack;
17948 };
17949 };
17950 };
17951 };
17952 } = _menhir_stack in
17953 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
17954 let ispure : 'tv_pure = Obj.magic ispure in
17955 let ar : 'tv_arity = Obj.magic ar in
17956 let _startpos = _startpos_ar_ in
17957 let _endpos = _endpos__5_ in
17958 let _v : 'tv_metadec = let kindfn =
17959 let ty =
17960
17961 # 39 "standard.mly"
17962 ( None )
17963 # 17937 "parser_cocci_menhir.ml"
17964
17965 in
17966
17967 # 560 "parser_cocci_menhir.mly"
17968 ( (fun arity name pure check_meta constraints ->
17969 let tok = check_meta(Ast.MetaConstDecl(arity,name,ty)) in
17970 !Data.add_const_meta ty name constraints pure; tok) )
17971 # 17945 "parser_cocci_menhir.ml"
17972
17973 in
17974
17975 # 342 "parser_cocci_menhir.mly"
17976 ( P.create_metadec_with_constraints ar ispure kindfn ids )
17977 # 17951 "parser_cocci_menhir.ml"
17978 in
17979 _menhir_env.MenhirLib.EngineTypes.stack <- {
17980 MenhirLib.EngineTypes.state = _menhir_s;
17981 MenhirLib.EngineTypes.semv = Obj.repr _v;
17982 MenhirLib.EngineTypes.startp = _startpos;
17983 MenhirLib.EngineTypes.endp = _endpos;
17984 MenhirLib.EngineTypes.next = _menhir_stack;
17985 });
17986 (fun _menhir_env ->
17987 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
17988 let {
17989 MenhirLib.EngineTypes.startp = _startpos__6_;
17990 MenhirLib.EngineTypes.endp = _endpos__6_;
17991 MenhirLib.EngineTypes.next = {
17992 MenhirLib.EngineTypes.semv = ids;
17993 MenhirLib.EngineTypes.startp = _startpos_ids_;
17994 MenhirLib.EngineTypes.endp = _endpos_ids_;
17995 MenhirLib.EngineTypes.next = {
17996 MenhirLib.EngineTypes.semv = x00;
17997 MenhirLib.EngineTypes.startp = _startpos_x00_;
17998 MenhirLib.EngineTypes.endp = _endpos_x00_;
17999 MenhirLib.EngineTypes.next = {
18000 MenhirLib.EngineTypes.startp = _startpos__3_;
18001 MenhirLib.EngineTypes.endp = _endpos__3_;
18002 MenhirLib.EngineTypes.next = {
18003 MenhirLib.EngineTypes.semv = ispure;
18004 MenhirLib.EngineTypes.startp = _startpos_ispure_;
18005 MenhirLib.EngineTypes.endp = _endpos_ispure_;
18006 MenhirLib.EngineTypes.next = {
18007 MenhirLib.EngineTypes.state = _menhir_s;
18008 MenhirLib.EngineTypes.semv = ar;
18009 MenhirLib.EngineTypes.startp = _startpos_ar_;
18010 MenhirLib.EngineTypes.endp = _endpos_ar_;
18011 MenhirLib.EngineTypes.next = _menhir_stack;
18012 };
18013 };
18014 };
18015 };
18016 };
18017 } = _menhir_stack in
18018 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
18019 let x00 : 'tv_meta_exp_type = Obj.magic x00 in
18020 let ispure : 'tv_pure = Obj.magic ispure in
18021 let ar : 'tv_arity = Obj.magic ar in
18022 let _startpos = _startpos_ar_ in
18023 let _endpos = _endpos__6_ in
18024 let _v : 'tv_metadec = let kindfn =
18025 let x0 = x00 in
18026 let ty =
18027 let x = x0 in
18028
18029 # 41 "standard.mly"
18030 ( Some x )
18031 # 18005 "parser_cocci_menhir.ml"
18032
18033 in
18034
18035 # 560 "parser_cocci_menhir.mly"
18036 ( (fun arity name pure check_meta constraints ->
18037 let tok = check_meta(Ast.MetaConstDecl(arity,name,ty)) in
18038 !Data.add_const_meta ty name constraints pure; tok) )
18039 # 18013 "parser_cocci_menhir.ml"
18040
18041 in
18042
18043 # 342 "parser_cocci_menhir.mly"
18044 ( P.create_metadec_with_constraints ar ispure kindfn ids )
18045 # 18019 "parser_cocci_menhir.ml"
18046 in
18047 _menhir_env.MenhirLib.EngineTypes.stack <- {
18048 MenhirLib.EngineTypes.state = _menhir_s;
18049 MenhirLib.EngineTypes.semv = Obj.repr _v;
18050 MenhirLib.EngineTypes.startp = _startpos;
18051 MenhirLib.EngineTypes.endp = _endpos;
18052 MenhirLib.EngineTypes.next = _menhir_stack;
18053 });
18054 (fun _menhir_env ->
18055 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18056 let {
18057 MenhirLib.EngineTypes.startp = _startpos__5_;
18058 MenhirLib.EngineTypes.endp = _endpos__5_;
18059 MenhirLib.EngineTypes.next = {
18060 MenhirLib.EngineTypes.semv = ids;
18061 MenhirLib.EngineTypes.startp = _startpos_ids_;
18062 MenhirLib.EngineTypes.endp = _endpos_ids_;
18063 MenhirLib.EngineTypes.next = {
18064 MenhirLib.EngineTypes.startp = _startpos__3_;
18065 MenhirLib.EngineTypes.endp = _endpos__3_;
18066 MenhirLib.EngineTypes.next = {
18067 MenhirLib.EngineTypes.semv = ispure;
18068 MenhirLib.EngineTypes.startp = _startpos_ispure_;
18069 MenhirLib.EngineTypes.endp = _endpos_ispure_;
18070 MenhirLib.EngineTypes.next = {
18071 MenhirLib.EngineTypes.state = _menhir_s;
18072 MenhirLib.EngineTypes.semv = ar;
18073 MenhirLib.EngineTypes.startp = _startpos_ar_;
18074 MenhirLib.EngineTypes.endp = _endpos_ar_;
18075 MenhirLib.EngineTypes.next = _menhir_stack;
18076 };
18077 };
18078 };
18079 };
18080 } = _menhir_stack in
18081 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ = Obj.magic ids in
18082 let ispure : 'tv_pure = Obj.magic ispure in
18083 let ar : 'tv_arity = Obj.magic ar in
18084 let _startpos = _startpos_ar_ in
18085 let _endpos = _endpos__5_ in
18086 let _v : 'tv_metadec = let kindfn =
18087
18088 # 578 "parser_cocci_menhir.mly"
18089 ( (fun arity name pure check_meta constraints ->
18090 let tok = check_meta(Ast.MetaExpDecl(arity,name,None)) in
18091 !Data.add_exp_meta None name constraints pure; tok) )
18092 # 18066 "parser_cocci_menhir.ml"
18093
18094 in
18095
18096 # 347 "parser_cocci_menhir.mly"
18097 ( P.create_metadec_with_constraints ar ispure kindfn ids )
18098 # 18072 "parser_cocci_menhir.ml"
18099 in
18100 _menhir_env.MenhirLib.EngineTypes.stack <- {
18101 MenhirLib.EngineTypes.state = _menhir_s;
18102 MenhirLib.EngineTypes.semv = Obj.repr _v;
18103 MenhirLib.EngineTypes.startp = _startpos;
18104 MenhirLib.EngineTypes.endp = _endpos;
18105 MenhirLib.EngineTypes.next = _menhir_stack;
18106 });
18107 (fun _menhir_env ->
18108 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18109 let {
18110 MenhirLib.EngineTypes.startp = _startpos__5_;
18111 MenhirLib.EngineTypes.endp = _endpos__5_;
18112 MenhirLib.EngineTypes.next = {
18113 MenhirLib.EngineTypes.semv = ids;
18114 MenhirLib.EngineTypes.startp = _startpos_ids_;
18115 MenhirLib.EngineTypes.endp = _endpos_ids_;
18116 MenhirLib.EngineTypes.next = {
18117 MenhirLib.EngineTypes.semv = vl0;
18118 MenhirLib.EngineTypes.startp = _startpos_vl0_;
18119 MenhirLib.EngineTypes.endp = _endpos_vl0_;
18120 MenhirLib.EngineTypes.next = {
18121 MenhirLib.EngineTypes.semv = ispure;
18122 MenhirLib.EngineTypes.startp = _startpos_ispure_;
18123 MenhirLib.EngineTypes.endp = _endpos_ispure_;
18124 MenhirLib.EngineTypes.next = {
18125 MenhirLib.EngineTypes.state = _menhir_s;
18126 MenhirLib.EngineTypes.semv = ar;
18127 MenhirLib.EngineTypes.startp = _startpos_ar_;
18128 MenhirLib.EngineTypes.endp = _endpos_ar_;
18129 MenhirLib.EngineTypes.next = _menhir_stack;
18130 };
18131 };
18132 };
18133 };
18134 } = _menhir_stack in
18135 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ = Obj.magic ids in
18136 let vl0 : 'tv_meta_exp_type = Obj.magic vl0 in
18137 let ispure : 'tv_pure = Obj.magic ispure in
18138 let ar : 'tv_arity = Obj.magic ar in
18139 let _startpos = _startpos_ar_ in
18140 let _endpos = _endpos__5_ in
18141 let _v : 'tv_metadec = let kindfn =
18142 let vl = vl0 in
18143
18144 # 582 "parser_cocci_menhir.mly"
18145 ( (fun arity name pure check_meta constraints ->
18146 let ty = Some vl in
18147 (match constraints with
18148 Ast0.NotExpCstrt constraints ->
18149 List.iter
18150 (function c ->
18151 match Ast0.unwrap c with
18152 Ast0.Constant(_) ->
18153 if not
18154 (List.exists
18155 (function
18156 Type_cocci.BaseType(Type_cocci.IntType) -> true
18157 | Type_cocci.BaseType(Type_cocci.ShortType) -> true
18158 | Type_cocci.BaseType(Type_cocci.LongType) -> true
18159 | _ -> false)
18160 vl)
18161 then
18162 failwith "metavariable with int constraint must be an int"
18163 | _ -> ())
18164 constraints
18165 | _ -> ());
18166 let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
18167 !Data.add_exp_meta ty name constraints pure; tok)
18168 )
18169 # 18143 "parser_cocci_menhir.ml"
18170
18171 in
18172
18173 # 347 "parser_cocci_menhir.mly"
18174 ( P.create_metadec_with_constraints ar ispure kindfn ids )
18175 # 18149 "parser_cocci_menhir.ml"
18176 in
18177 _menhir_env.MenhirLib.EngineTypes.stack <- {
18178 MenhirLib.EngineTypes.state = _menhir_s;
18179 MenhirLib.EngineTypes.semv = Obj.repr _v;
18180 MenhirLib.EngineTypes.startp = _startpos;
18181 MenhirLib.EngineTypes.endp = _endpos;
18182 MenhirLib.EngineTypes.next = _menhir_stack;
18183 });
18184 (fun _menhir_env ->
18185 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18186 let {
18187 MenhirLib.EngineTypes.startp = _startpos__5_;
18188 MenhirLib.EngineTypes.endp = _endpos__5_;
18189 MenhirLib.EngineTypes.next = {
18190 MenhirLib.EngineTypes.semv = ids;
18191 MenhirLib.EngineTypes.startp = _startpos_ids_;
18192 MenhirLib.EngineTypes.endp = _endpos_ids_;
18193 MenhirLib.EngineTypes.next = {
18194 MenhirLib.EngineTypes.semv = a;
18195 MenhirLib.EngineTypes.startp = _startpos_a_;
18196 MenhirLib.EngineTypes.endp = _endpos_a_;
18197 MenhirLib.EngineTypes.next = {
18198 MenhirLib.EngineTypes.startp = _startpos__2_;
18199 MenhirLib.EngineTypes.endp = _endpos__2_;
18200 MenhirLib.EngineTypes.next = {
18201 MenhirLib.EngineTypes.state = _menhir_s;
18202 MenhirLib.EngineTypes.semv = ar;
18203 MenhirLib.EngineTypes.startp = _startpos_ar_;
18204 MenhirLib.EngineTypes.endp = _endpos_ar_;
18205 MenhirLib.EngineTypes.next = _menhir_stack;
18206 };
18207 };
18208 };
18209 };
18210 } = _menhir_stack in
18211 let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_x_eq_not_pos__ = Obj.magic ids in
18212 let a : 'tv_option_TPosAny_ = Obj.magic a in
18213 let ar : 'tv_arity = Obj.magic ar in
18214 let _startpos = _startpos_ar_ in
18215 let _endpos = _endpos__5_ in
18216 let _v : 'tv_metadec =
18217 # 353 "parser_cocci_menhir.mly"
18218 ( (if !Data.in_generating
18219 then failwith "position variables not allowed in a generated rule file");
18220 let kindfn arity name pure check_meta constraints =
18221 let tok = check_meta(Ast.MetaPosDecl(arity,name)) in
18222 let any = match a with None -> Ast.PER | Some _ -> Ast.ALL in
18223 !Data.add_pos_meta name constraints any; tok in
18224 P.create_metadec_with_constraints ar false kindfn ids )
18225 # 18199 "parser_cocci_menhir.ml"
18226 in
18227 _menhir_env.MenhirLib.EngineTypes.stack <- {
18228 MenhirLib.EngineTypes.state = _menhir_s;
18229 MenhirLib.EngineTypes.semv = Obj.repr _v;
18230 MenhirLib.EngineTypes.startp = _startpos;
18231 MenhirLib.EngineTypes.endp = _endpos;
18232 MenhirLib.EngineTypes.next = _menhir_stack;
18233 });
18234 (fun _menhir_env ->
18235 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18236 let {
18237 MenhirLib.EngineTypes.startp = _startpos__9_;
18238 MenhirLib.EngineTypes.endp = _endpos__9_;
18239 MenhirLib.EngineTypes.next = {
18240 MenhirLib.EngineTypes.semv = ids;
18241 MenhirLib.EngineTypes.startp = _startpos_ids_;
18242 MenhirLib.EngineTypes.endp = _endpos_ids_;
18243 MenhirLib.EngineTypes.next = {
18244 MenhirLib.EngineTypes.startp = _startpos__7_;
18245 MenhirLib.EngineTypes.endp = _endpos__7_;
18246 MenhirLib.EngineTypes.next = {
18247 MenhirLib.EngineTypes.semv = len;
18248 MenhirLib.EngineTypes.startp = _startpos_len_;
18249 MenhirLib.EngineTypes.endp = _endpos_len_;
18250 MenhirLib.EngineTypes.next = {
18251 MenhirLib.EngineTypes.startp = _startpos__5_;
18252 MenhirLib.EngineTypes.endp = _endpos__5_;
18253 MenhirLib.EngineTypes.next = {
18254 MenhirLib.EngineTypes.startp = _startpos__4_;
18255 MenhirLib.EngineTypes.endp = _endpos__4_;
18256 MenhirLib.EngineTypes.next = {
18257 MenhirLib.EngineTypes.startp = _startpos__3_;
18258 MenhirLib.EngineTypes.endp = _endpos__3_;
18259 MenhirLib.EngineTypes.next = {
18260 MenhirLib.EngineTypes.semv = ispure;
18261 MenhirLib.EngineTypes.startp = _startpos_ispure_;
18262 MenhirLib.EngineTypes.endp = _endpos_ispure_;
18263 MenhirLib.EngineTypes.next = {
18264 MenhirLib.EngineTypes.state = _menhir_s;
18265 MenhirLib.EngineTypes.semv = ar;
18266 MenhirLib.EngineTypes.startp = _startpos_ar_;
18267 MenhirLib.EngineTypes.endp = _endpos_ar_;
18268 MenhirLib.EngineTypes.next = _menhir_stack;
18269 };
18270 };
18271 };
18272 };
18273 };
18274 };
18275 };
18276 };
18277 } = _menhir_stack in
18278 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
18279 let len : 'tv_list_len = Obj.magic len in
18280 let ispure : 'tv_pure = Obj.magic ispure in
18281 let ar : 'tv_arity = Obj.magic ar in
18282 let _startpos = _startpos_ar_ in
18283 let _endpos = _endpos__9_ in
18284 let _v : 'tv_metadec =
18285 # 363 "parser_cocci_menhir.mly"
18286 ( P.create_len_metadec ar ispure
18287 (fun lenname arity name pure check_meta ->
18288 let tok = check_meta(Ast.MetaParamListDecl(arity,name,lenname)) in
18289 !Data.add_paramlist_meta name lenname pure; tok)
18290 len ids )
18291 # 18265 "parser_cocci_menhir.ml"
18292 in
18293 _menhir_env.MenhirLib.EngineTypes.stack <- {
18294 MenhirLib.EngineTypes.state = _menhir_s;
18295 MenhirLib.EngineTypes.semv = Obj.repr _v;
18296 MenhirLib.EngineTypes.startp = _startpos;
18297 MenhirLib.EngineTypes.endp = _endpos;
18298 MenhirLib.EngineTypes.next = _menhir_stack;
18299 });
18300 (fun _menhir_env ->
18301 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18302 let {
18303 MenhirLib.EngineTypes.startp = _startpos__9_;
18304 MenhirLib.EngineTypes.endp = _endpos__9_;
18305 MenhirLib.EngineTypes.next = {
18306 MenhirLib.EngineTypes.semv = ids;
18307 MenhirLib.EngineTypes.startp = _startpos_ids_;
18308 MenhirLib.EngineTypes.endp = _endpos_ids_;
18309 MenhirLib.EngineTypes.next = {
18310 MenhirLib.EngineTypes.startp = _startpos__7_;
18311 MenhirLib.EngineTypes.endp = _endpos__7_;
18312 MenhirLib.EngineTypes.next = {
18313 MenhirLib.EngineTypes.semv = len;
18314 MenhirLib.EngineTypes.startp = _startpos_len_;
18315 MenhirLib.EngineTypes.endp = _endpos_len_;
18316 MenhirLib.EngineTypes.next = {
18317 MenhirLib.EngineTypes.startp = _startpos__5_;
18318 MenhirLib.EngineTypes.endp = _endpos__5_;
18319 MenhirLib.EngineTypes.next = {
18320 MenhirLib.EngineTypes.startp = _startpos__4_;
18321 MenhirLib.EngineTypes.endp = _endpos__4_;
18322 MenhirLib.EngineTypes.next = {
18323 MenhirLib.EngineTypes.startp = _startpos__3_;
18324 MenhirLib.EngineTypes.endp = _endpos__3_;
18325 MenhirLib.EngineTypes.next = {
18326 MenhirLib.EngineTypes.semv = ispure;
18327 MenhirLib.EngineTypes.startp = _startpos_ispure_;
18328 MenhirLib.EngineTypes.endp = _endpos_ispure_;
18329 MenhirLib.EngineTypes.next = {
18330 MenhirLib.EngineTypes.state = _menhir_s;
18331 MenhirLib.EngineTypes.semv = ar;
18332 MenhirLib.EngineTypes.startp = _startpos_ar_;
18333 MenhirLib.EngineTypes.endp = _endpos_ar_;
18334 MenhirLib.EngineTypes.next = _menhir_stack;
18335 };
18336 };
18337 };
18338 };
18339 };
18340 };
18341 };
18342 };
18343 } = _menhir_stack in
18344 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
18345 let len : 'tv_list_len = Obj.magic len in
18346 let ispure : 'tv_pure = Obj.magic ispure in
18347 let ar : 'tv_arity = Obj.magic ar in
18348 let _startpos = _startpos_ar_ in
18349 let _endpos = _endpos__9_ in
18350 let _v : 'tv_metadec =
18351 # 371 "parser_cocci_menhir.mly"
18352 ( P.create_len_metadec ar ispure
18353 (fun lenname arity name pure check_meta ->
18354 let tok = check_meta(Ast.MetaExpListDecl(arity,name,lenname)) in
18355 !Data.add_explist_meta name lenname pure; tok)
18356 len ids )
18357 # 18331 "parser_cocci_menhir.ml"
18358 in
18359 _menhir_env.MenhirLib.EngineTypes.stack <- {
18360 MenhirLib.EngineTypes.state = _menhir_s;
18361 MenhirLib.EngineTypes.semv = Obj.repr _v;
18362 MenhirLib.EngineTypes.startp = _startpos;
18363 MenhirLib.EngineTypes.endp = _endpos;
18364 MenhirLib.EngineTypes.next = _menhir_stack;
18365 });
18366 (fun _menhir_env ->
18367 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18368 let {
18369 MenhirLib.EngineTypes.startp = _startpos__9_;
18370 MenhirLib.EngineTypes.endp = _endpos__9_;
18371 MenhirLib.EngineTypes.next = {
18372 MenhirLib.EngineTypes.semv = ids;
18373 MenhirLib.EngineTypes.startp = _startpos_ids_;
18374 MenhirLib.EngineTypes.endp = _endpos_ids_;
18375 MenhirLib.EngineTypes.next = {
18376 MenhirLib.EngineTypes.startp = _startpos__7_;
18377 MenhirLib.EngineTypes.endp = _endpos__7_;
18378 MenhirLib.EngineTypes.next = {
18379 MenhirLib.EngineTypes.semv = len;
18380 MenhirLib.EngineTypes.startp = _startpos_len_;
18381 MenhirLib.EngineTypes.endp = _endpos_len_;
18382 MenhirLib.EngineTypes.next = {
18383 MenhirLib.EngineTypes.startp = _startpos__5_;
18384 MenhirLib.EngineTypes.endp = _endpos__5_;
18385 MenhirLib.EngineTypes.next = {
18386 MenhirLib.EngineTypes.startp = _startpos__4_;
18387 MenhirLib.EngineTypes.endp = _endpos__4_;
18388 MenhirLib.EngineTypes.next = {
18389 MenhirLib.EngineTypes.startp = _startpos__3_;
18390 MenhirLib.EngineTypes.endp = _endpos__3_;
18391 MenhirLib.EngineTypes.next = {
18392 MenhirLib.EngineTypes.semv = ispure;
18393 MenhirLib.EngineTypes.startp = _startpos_ispure_;
18394 MenhirLib.EngineTypes.endp = _endpos_ispure_;
18395 MenhirLib.EngineTypes.next = {
18396 MenhirLib.EngineTypes.state = _menhir_s;
18397 MenhirLib.EngineTypes.semv = ar;
18398 MenhirLib.EngineTypes.startp = _startpos_ar_;
18399 MenhirLib.EngineTypes.endp = _endpos_ar_;
18400 MenhirLib.EngineTypes.next = _menhir_stack;
18401 };
18402 };
18403 };
18404 };
18405 };
18406 };
18407 };
18408 };
18409 } = _menhir_stack in
18410 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
18411 let len : 'tv_list_len = Obj.magic len in
18412 let ispure : 'tv_pure = Obj.magic ispure in
18413 let ar : 'tv_arity = Obj.magic ar in
18414 let _startpos = _startpos_ar_ in
18415 let _endpos = _endpos__9_ in
18416 let _v : 'tv_metadec =
18417 # 379 "parser_cocci_menhir.mly"
18418 ( P.create_len_metadec ar ispure
18419 (fun lenname arity name pure check_meta ->
18420 let tok = check_meta(Ast.MetaFieldListDecl(arity,name,lenname)) in
18421 !Data.add_field_list_meta name lenname pure; tok)
18422 len ids )
18423 # 18397 "parser_cocci_menhir.ml"
18424 in
18425 _menhir_env.MenhirLib.EngineTypes.stack <- {
18426 MenhirLib.EngineTypes.state = _menhir_s;
18427 MenhirLib.EngineTypes.semv = Obj.repr _v;
18428 MenhirLib.EngineTypes.startp = _startpos;
18429 MenhirLib.EngineTypes.endp = _endpos;
18430 MenhirLib.EngineTypes.next = _menhir_stack;
18431 });
18432 (fun _menhir_env ->
18433 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18434 let {
18435 MenhirLib.EngineTypes.startp = _startpos__9_;
18436 MenhirLib.EngineTypes.endp = _endpos__9_;
18437 MenhirLib.EngineTypes.next = {
18438 MenhirLib.EngineTypes.semv = ids;
18439 MenhirLib.EngineTypes.startp = _startpos_ids_;
18440 MenhirLib.EngineTypes.endp = _endpos_ids_;
18441 MenhirLib.EngineTypes.next = {
18442 MenhirLib.EngineTypes.startp = _startpos__7_;
18443 MenhirLib.EngineTypes.endp = _endpos__7_;
18444 MenhirLib.EngineTypes.next = {
18445 MenhirLib.EngineTypes.semv = len;
18446 MenhirLib.EngineTypes.startp = _startpos_len_;
18447 MenhirLib.EngineTypes.endp = _endpos_len_;
18448 MenhirLib.EngineTypes.next = {
18449 MenhirLib.EngineTypes.startp = _startpos__5_;
18450 MenhirLib.EngineTypes.endp = _endpos__5_;
18451 MenhirLib.EngineTypes.next = {
18452 MenhirLib.EngineTypes.startp = _startpos__4_;
18453 MenhirLib.EngineTypes.endp = _endpos__4_;
18454 MenhirLib.EngineTypes.next = {
18455 MenhirLib.EngineTypes.startp = _startpos__3_;
18456 MenhirLib.EngineTypes.endp = _endpos__3_;
18457 MenhirLib.EngineTypes.next = {
18458 MenhirLib.EngineTypes.semv = ispure;
18459 MenhirLib.EngineTypes.startp = _startpos_ispure_;
18460 MenhirLib.EngineTypes.endp = _endpos_ispure_;
18461 MenhirLib.EngineTypes.next = {
18462 MenhirLib.EngineTypes.state = _menhir_s;
18463 MenhirLib.EngineTypes.semv = ar;
18464 MenhirLib.EngineTypes.startp = _startpos_ar_;
18465 MenhirLib.EngineTypes.endp = _endpos_ar_;
18466 MenhirLib.EngineTypes.next = _menhir_stack;
18467 };
18468 };
18469 };
18470 };
18471 };
18472 };
18473 };
18474 };
18475 } = _menhir_stack in
18476 let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
18477 let len : 'tv_list_len = Obj.magic len in
18478 let ispure : 'tv_pure = Obj.magic ispure in
18479 let ar : 'tv_arity = Obj.magic ar in
18480 let _startpos = _startpos_ar_ in
18481 let _endpos = _endpos__9_ in
18482 let _v : 'tv_metadec =
18483 # 387 "parser_cocci_menhir.mly"
18484 ( P.create_len_metadec ar ispure
18485 (fun lenname arity name pure check_meta ->
18486 let tok = check_meta(Ast.MetaInitListDecl(arity,name,lenname)) in
18487 !Data.add_initlist_meta name lenname pure; tok)
18488 len ids )
18489 # 18463 "parser_cocci_menhir.ml"
18490 in
18491 _menhir_env.MenhirLib.EngineTypes.stack <- {
18492 MenhirLib.EngineTypes.state = _menhir_s;
18493 MenhirLib.EngineTypes.semv = Obj.repr _v;
18494 MenhirLib.EngineTypes.startp = _startpos;
18495 MenhirLib.EngineTypes.endp = _endpos;
18496 MenhirLib.EngineTypes.next = _menhir_stack;
18497 });
18498 (fun _menhir_env ->
18499 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18500 let {
18501 MenhirLib.EngineTypes.startp = _startpos__3_;
18502 MenhirLib.EngineTypes.endp = _endpos__3_;
18503 MenhirLib.EngineTypes.next = {
18504 MenhirLib.EngineTypes.semv = ids;
18505 MenhirLib.EngineTypes.startp = _startpos_ids_;
18506 MenhirLib.EngineTypes.endp = _endpos_ids_;
18507 MenhirLib.EngineTypes.next = {
18508 MenhirLib.EngineTypes.state = _menhir_s;
18509 MenhirLib.EngineTypes.startp = _startpos__1_;
18510 MenhirLib.EngineTypes.endp = _endpos__1_;
18511 MenhirLib.EngineTypes.next = _menhir_stack;
18512 };
18513 };
18514 } = _menhir_stack in
18515 let ids : 'tv_comma_list_pure_ident_ = Obj.magic ids in
18516 let _startpos = _startpos__1_ in
18517 let _endpos = _endpos__3_ in
18518 let _v : 'tv_metadec =
18519 # 393 "parser_cocci_menhir.mly"
18520 ( (fun _ ->
18521 let add_sym = fun (nm,_) -> !Data.add_symbol_meta nm in
18522 List.iter add_sym ids; [])
18523 )
18524 # 18498 "parser_cocci_menhir.ml"
18525 in
18526 _menhir_env.MenhirLib.EngineTypes.stack <- {
18527 MenhirLib.EngineTypes.state = _menhir_s;
18528 MenhirLib.EngineTypes.semv = Obj.repr _v;
18529 MenhirLib.EngineTypes.startp = _startpos;
18530 MenhirLib.EngineTypes.endp = _endpos;
18531 MenhirLib.EngineTypes.next = _menhir_stack;
18532 });
18533 (fun _menhir_env ->
18534 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18535 let {
18536 MenhirLib.EngineTypes.state = _menhir_s;
18537 MenhirLib.EngineTypes.semv = _1;
18538 MenhirLib.EngineTypes.startp = _startpos__1_;
18539 MenhirLib.EngineTypes.endp = _endpos__1_;
18540 MenhirLib.EngineTypes.next = _menhir_stack;
18541 } = _menhir_stack in
18542 let _1 : 'tv_pure_ident = Obj.magic _1 in
18543 let _startpos = _startpos__1_ in
18544 let _endpos = _endpos__1_ in
18545 let _v : 'tv_mident =
18546 # 2031 "parser_cocci_menhir.mly"
18547 ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
18548 # 18522 "parser_cocci_menhir.ml"
18549 in
18550 _menhir_env.MenhirLib.EngineTypes.stack <- {
18551 MenhirLib.EngineTypes.state = _menhir_s;
18552 MenhirLib.EngineTypes.semv = Obj.repr _v;
18553 MenhirLib.EngineTypes.startp = _startpos;
18554 MenhirLib.EngineTypes.endp = _endpos;
18555 MenhirLib.EngineTypes.next = _menhir_stack;
18556 });
18557 (fun _menhir_env ->
18558 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18559 let {
18560 MenhirLib.EngineTypes.state = _menhir_s;
18561 MenhirLib.EngineTypes.semv = _1;
18562 MenhirLib.EngineTypes.startp = _startpos__1_;
18563 MenhirLib.EngineTypes.endp = _endpos__1_;
18564 MenhirLib.EngineTypes.next = _menhir_stack;
18565 } = _menhir_stack in
18566 let _1 : 'tv_wrapped_sym_ident = Obj.magic _1 in
18567 let _startpos = _startpos__1_ in
18568 let _endpos = _endpos__1_ in
18569 let _v : 'tv_mident =
18570 # 2032 "parser_cocci_menhir.mly"
18571 ( _1 )
18572 # 18546 "parser_cocci_menhir.ml"
18573 in
18574 _menhir_env.MenhirLib.EngineTypes.stack <- {
18575 MenhirLib.EngineTypes.state = _menhir_s;
18576 MenhirLib.EngineTypes.semv = Obj.repr _v;
18577 MenhirLib.EngineTypes.startp = _startpos;
18578 MenhirLib.EngineTypes.endp = _endpos;
18579 MenhirLib.EngineTypes.next = _menhir_stack;
18580 });
18581 (fun _menhir_env ->
18582 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18583 let {
18584 MenhirLib.EngineTypes.state = _menhir_s;
18585 MenhirLib.EngineTypes.semv = _1;
18586 MenhirLib.EngineTypes.startp = _startpos__1_;
18587 MenhirLib.EngineTypes.endp = _endpos__1_;
18588 MenhirLib.EngineTypes.next = _menhir_stack;
18589 } = _menhir_stack in
18590 let _1 : (
18591 # 109 "parser_cocci_menhir.mly"
18592 (Parse_aux.info)
18593 # 18567 "parser_cocci_menhir.ml"
18594 ) = Obj.magic _1 in
18595 let _startpos = _startpos__1_ in
18596 let _endpos = _endpos__1_ in
18597 let _v : 'tv_mident =
18598 # 2033 "parser_cocci_menhir.mly"
18599 ( tmeta_to_ident _1 )
18600 # 18574 "parser_cocci_menhir.ml"
18601 in
18602 _menhir_env.MenhirLib.EngineTypes.stack <- {
18603 MenhirLib.EngineTypes.state = _menhir_s;
18604 MenhirLib.EngineTypes.semv = Obj.repr _v;
18605 MenhirLib.EngineTypes.startp = _startpos;
18606 MenhirLib.EngineTypes.endp = _endpos;
18607 MenhirLib.EngineTypes.next = _menhir_stack;
18608 });
18609 (fun _menhir_env ->
18610 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18611 let {
18612 MenhirLib.EngineTypes.state = _menhir_s;
18613 MenhirLib.EngineTypes.semv = _1;
18614 MenhirLib.EngineTypes.startp = _startpos__1_;
18615 MenhirLib.EngineTypes.endp = _endpos__1_;
18616 MenhirLib.EngineTypes.next = _menhir_stack;
18617 } = _menhir_stack in
18618 let _1 : (
18619 # 104 "parser_cocci_menhir.mly"
18620 (Parse_aux.midinfo)
18621 # 18595 "parser_cocci_menhir.ml"
18622 ) = Obj.magic _1 in
18623 let _startpos = _startpos__1_ in
18624 let _endpos = _endpos__1_ in
18625 let _v : 'tv_mident =
18626 # 2035 "parser_cocci_menhir.mly"
18627 ( let (nm,constraints,seed,pure,clt) = _1 in
18628 Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,seed,pure)) )
18629 # 18603 "parser_cocci_menhir.ml"
18630 in
18631 _menhir_env.MenhirLib.EngineTypes.stack <- {
18632 MenhirLib.EngineTypes.state = _menhir_s;
18633 MenhirLib.EngineTypes.semv = Obj.repr _v;
18634 MenhirLib.EngineTypes.startp = _startpos;
18635 MenhirLib.EngineTypes.endp = _endpos;
18636 MenhirLib.EngineTypes.next = _menhir_stack;
18637 });
18638 (fun _menhir_env ->
18639 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18640 let {
18641 MenhirLib.EngineTypes.semv = b;
18642 MenhirLib.EngineTypes.startp = _startpos_b_;
18643 MenhirLib.EngineTypes.endp = _endpos_b_;
18644 MenhirLib.EngineTypes.next = {
18645 MenhirLib.EngineTypes.state = _menhir_s;
18646 MenhirLib.EngineTypes.semv = a;
18647 MenhirLib.EngineTypes.startp = _startpos_a_;
18648 MenhirLib.EngineTypes.endp = _endpos_a_;
18649 MenhirLib.EngineTypes.next = _menhir_stack;
18650 };
18651 } = _menhir_stack in
18652 let b : 'tv_list_mzl_ctype__ = Obj.magic b in
18653 let a : 'tv_ctype = Obj.magic a in
18654 let _startpos = _startpos_a_ in
18655 let _endpos = _endpos_b_ in
18656 let _v : 'tv_midzero_list_ctype_ctype_ =
18657 # 2355 "parser_cocci_menhir.mly"
18658 ( let (mids,code) = List.split b in (mids,(a::code)) )
18659 # 18633 "parser_cocci_menhir.ml"
18660 in
18661 _menhir_env.MenhirLib.EngineTypes.stack <- {
18662 MenhirLib.EngineTypes.state = _menhir_s;
18663 MenhirLib.EngineTypes.semv = Obj.repr _v;
18664 MenhirLib.EngineTypes.startp = _startpos;
18665 MenhirLib.EngineTypes.endp = _endpos;
18666 MenhirLib.EngineTypes.next = _menhir_stack;
18667 });
18668 (fun _menhir_env ->
18669 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18670 let {
18671 MenhirLib.EngineTypes.semv = b;
18672 MenhirLib.EngineTypes.startp = _startpos_b_;
18673 MenhirLib.EngineTypes.endp = _endpos_b_;
18674 MenhirLib.EngineTypes.next = {
18675 MenhirLib.EngineTypes.state = _menhir_s;
18676 MenhirLib.EngineTypes.semv = a;
18677 MenhirLib.EngineTypes.startp = _startpos_a_;
18678 MenhirLib.EngineTypes.endp = _endpos_a_;
18679 MenhirLib.EngineTypes.next = _menhir_stack;
18680 };
18681 } = _menhir_stack in
18682 let b : 'tv_list_mzl_disj_ident__ = Obj.magic b in
18683 let a : 'tv_disj_ident = Obj.magic a in
18684 let _startpos = _startpos_a_ in
18685 let _endpos = _endpos_b_ in
18686 let _v : 'tv_midzero_list_disj_ident_disj_ident_ =
18687 # 2355 "parser_cocci_menhir.mly"
18688 ( let (mids,code) = List.split b in (mids,(a::code)) )
18689 # 18663 "parser_cocci_menhir.ml"
18690 in
18691 _menhir_env.MenhirLib.EngineTypes.stack <- {
18692 MenhirLib.EngineTypes.state = _menhir_s;
18693 MenhirLib.EngineTypes.semv = Obj.repr _v;
18694 MenhirLib.EngineTypes.startp = _startpos;
18695 MenhirLib.EngineTypes.endp = _endpos;
18696 MenhirLib.EngineTypes.next = _menhir_stack;
18697 });
18698 (fun _menhir_env ->
18699 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18700 let {
18701 MenhirLib.EngineTypes.semv = b;
18702 MenhirLib.EngineTypes.startp = _startpos_b_;
18703 MenhirLib.EngineTypes.endp = _endpos_b_;
18704 MenhirLib.EngineTypes.next = {
18705 MenhirLib.EngineTypes.state = _menhir_s;
18706 MenhirLib.EngineTypes.semv = a;
18707 MenhirLib.EngineTypes.startp = _startpos_a_;
18708 MenhirLib.EngineTypes.endp = _endpos_a_;
18709 MenhirLib.EngineTypes.next = _menhir_stack;
18710 };
18711 } = _menhir_stack in
18712 let b : 'tv_list_mzl_eexpr__ = Obj.magic b in
18713 let a : 'tv_eexpr = Obj.magic a in
18714 let _startpos = _startpos_a_ in
18715 let _endpos = _endpos_b_ in
18716 let _v : 'tv_midzero_list_eexpr_eexpr_ =
18717 # 2355 "parser_cocci_menhir.mly"
18718 ( let (mids,code) = List.split b in (mids,(a::code)) )
18719 # 18693 "parser_cocci_menhir.ml"
18720 in
18721 _menhir_env.MenhirLib.EngineTypes.stack <- {
18722 MenhirLib.EngineTypes.state = _menhir_s;
18723 MenhirLib.EngineTypes.semv = Obj.repr _v;
18724 MenhirLib.EngineTypes.startp = _startpos;
18725 MenhirLib.EngineTypes.endp = _endpos;
18726 MenhirLib.EngineTypes.next = _menhir_stack;
18727 });
18728 (fun _menhir_env ->
18729 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18730 let {
18731 MenhirLib.EngineTypes.semv = b;
18732 MenhirLib.EngineTypes.startp = _startpos_b_;
18733 MenhirLib.EngineTypes.endp = _endpos_b_;
18734 MenhirLib.EngineTypes.next = {
18735 MenhirLib.EngineTypes.state = _menhir_s;
18736 MenhirLib.EngineTypes.semv = a;
18737 MenhirLib.EngineTypes.startp = _startpos_a_;
18738 MenhirLib.EngineTypes.endp = _endpos_a_;
18739 MenhirLib.EngineTypes.next = _menhir_stack;
18740 };
18741 } = _menhir_stack in
18742 let b : 'tv_list_mzl_eexpr__ = Obj.magic b in
18743 let a : 'tv_expr = Obj.magic a in
18744 let _startpos = _startpos_a_ in
18745 let _endpos = _endpos_b_ in
18746 let _v : 'tv_midzero_list_expr_eexpr_ =
18747 # 2355 "parser_cocci_menhir.mly"
18748 ( let (mids,code) = List.split b in (mids,(a::code)) )
18749 # 18723 "parser_cocci_menhir.ml"
18750 in
18751 _menhir_env.MenhirLib.EngineTypes.stack <- {
18752 MenhirLib.EngineTypes.state = _menhir_s;
18753 MenhirLib.EngineTypes.semv = Obj.repr _v;
18754 MenhirLib.EngineTypes.startp = _startpos;
18755 MenhirLib.EngineTypes.endp = _endpos;
18756 MenhirLib.EngineTypes.next = _menhir_stack;
18757 });
18758 (fun _menhir_env ->
18759 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18760 let {
18761 MenhirLib.EngineTypes.semv = b;
18762 MenhirLib.EngineTypes.startp = _startpos_b_;
18763 MenhirLib.EngineTypes.endp = _endpos_b_;
18764 MenhirLib.EngineTypes.next = {
18765 MenhirLib.EngineTypes.state = _menhir_s;
18766 MenhirLib.EngineTypes.semv = a;
18767 MenhirLib.EngineTypes.startp = _startpos_a_;
18768 MenhirLib.EngineTypes.endp = _endpos_a_;
18769 MenhirLib.EngineTypes.next = _menhir_stack;
18770 };
18771 } = _menhir_stack in
18772 let b : 'tv_list_mzl_fun_after_dots_or__ = Obj.magic b in
18773 let a : 'tv_fun_after_stm = Obj.magic a in
18774 let _startpos = _startpos_a_ in
18775 let _endpos = _endpos_b_ in
18776 let _v : 'tv_midzero_list_fun_after_stm_fun_after_dots_or_ =
18777 # 2355 "parser_cocci_menhir.mly"
18778 ( let (mids,code) = List.split b in (mids,(a::code)) )
18779 # 18753 "parser_cocci_menhir.ml"
18780 in
18781 _menhir_env.MenhirLib.EngineTypes.stack <- {
18782 MenhirLib.EngineTypes.state = _menhir_s;
18783 MenhirLib.EngineTypes.semv = Obj.repr _v;
18784 MenhirLib.EngineTypes.startp = _startpos;
18785 MenhirLib.EngineTypes.endp = _endpos;
18786 MenhirLib.EngineTypes.next = _menhir_stack;
18787 });
18788 (fun _menhir_env ->
18789 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18790 let {
18791 MenhirLib.EngineTypes.semv = b;
18792 MenhirLib.EngineTypes.startp = _startpos_b_;
18793 MenhirLib.EngineTypes.endp = _endpos_b_;
18794 MenhirLib.EngineTypes.next = {
18795 MenhirLib.EngineTypes.state = _menhir_s;
18796 MenhirLib.EngineTypes.semv = a;
18797 MenhirLib.EngineTypes.startp = _startpos_a_;
18798 MenhirLib.EngineTypes.endp = _endpos_a_;
18799 MenhirLib.EngineTypes.next = _menhir_stack;
18800 };
18801 } = _menhir_stack in
18802 let b : 'tv_list_mzl_fun_start__ = Obj.magic b in
18803 let a : 'tv_fun_start = Obj.magic a in
18804 let _startpos = _startpos_a_ in
18805 let _endpos = _endpos_b_ in
18806 let _v : 'tv_midzero_list_fun_start_fun_start_ =
18807 # 2355 "parser_cocci_menhir.mly"
18808 ( let (mids,code) = List.split b in (mids,(a::code)) )
18809 # 18783 "parser_cocci_menhir.ml"
18810 in
18811 _menhir_env.MenhirLib.EngineTypes.stack <- {
18812 MenhirLib.EngineTypes.state = _menhir_s;
18813 MenhirLib.EngineTypes.semv = Obj.repr _v;
18814 MenhirLib.EngineTypes.startp = _startpos;
18815 MenhirLib.EngineTypes.endp = _endpos;
18816 MenhirLib.EngineTypes.next = _menhir_stack;
18817 });
18818 (fun _menhir_env ->
18819 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18820 let {
18821 MenhirLib.EngineTypes.semv = b;
18822 MenhirLib.EngineTypes.startp = _startpos_b_;
18823 MenhirLib.EngineTypes.endp = _endpos_b_;
18824 MenhirLib.EngineTypes.next = {
18825 MenhirLib.EngineTypes.state = _menhir_s;
18826 MenhirLib.EngineTypes.semv = a;
18827 MenhirLib.EngineTypes.startp = _startpos_a_;
18828 MenhirLib.EngineTypes.endp = _endpos_a_;
18829 MenhirLib.EngineTypes.next = _menhir_stack;
18830 };
18831 } = _menhir_stack in
18832 let b : 'tv_list_mzl_mctype__ = Obj.magic b in
18833 let a : 'tv_mctype = Obj.magic a in
18834 let _startpos = _startpos_a_ in
18835 let _endpos = _endpos_b_ in
18836 let _v : 'tv_midzero_list_mctype_mctype_ =
18837 # 2355 "parser_cocci_menhir.mly"
18838 ( let (mids,code) = List.split b in (mids,(a::code)) )
18839 # 18813 "parser_cocci_menhir.ml"
18840 in
18841 _menhir_env.MenhirLib.EngineTypes.stack <- {
18842 MenhirLib.EngineTypes.state = _menhir_s;
18843 MenhirLib.EngineTypes.semv = Obj.repr _v;
18844 MenhirLib.EngineTypes.startp = _startpos;
18845 MenhirLib.EngineTypes.endp = _endpos;
18846 MenhirLib.EngineTypes.next = _menhir_stack;
18847 });
18848 (fun _menhir_env ->
18849 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18850 let {
18851 MenhirLib.EngineTypes.semv = b;
18852 MenhirLib.EngineTypes.startp = _startpos_b_;
18853 MenhirLib.EngineTypes.endp = _endpos_b_;
18854 MenhirLib.EngineTypes.next = {
18855 MenhirLib.EngineTypes.state = _menhir_s;
18856 MenhirLib.EngineTypes.semv = a;
18857 MenhirLib.EngineTypes.startp = _startpos_a_;
18858 MenhirLib.EngineTypes.endp = _endpos_a_;
18859 MenhirLib.EngineTypes.next = _menhir_stack;
18860 };
18861 } = _menhir_stack in
18862 let b : 'tv_list_mzl_rule_elem_statement__ = Obj.magic b in
18863 let a : 'tv_rule_elem_statement = Obj.magic a in
18864 let _startpos = _startpos_a_ in
18865 let _endpos = _endpos_b_ in
18866 let _v : 'tv_midzero_list_rule_elem_statement_rule_elem_statement_ =
18867 # 2355 "parser_cocci_menhir.mly"
18868 ( let (mids,code) = List.split b in (mids,(a::code)) )
18869 # 18843 "parser_cocci_menhir.ml"
18870 in
18871 _menhir_env.MenhirLib.EngineTypes.stack <- {
18872 MenhirLib.EngineTypes.state = _menhir_s;
18873 MenhirLib.EngineTypes.semv = Obj.repr _v;
18874 MenhirLib.EngineTypes.startp = _startpos;
18875 MenhirLib.EngineTypes.endp = _endpos;
18876 MenhirLib.EngineTypes.next = _menhir_stack;
18877 });
18878 (fun _menhir_env ->
18879 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18880 let {
18881 MenhirLib.EngineTypes.semv = b;
18882 MenhirLib.EngineTypes.startp = _startpos_b_;
18883 MenhirLib.EngineTypes.endp = _endpos_b_;
18884 MenhirLib.EngineTypes.next = {
18885 MenhirLib.EngineTypes.state = _menhir_s;
18886 MenhirLib.EngineTypes.semv = a;
18887 MenhirLib.EngineTypes.startp = _startpos_a_;
18888 MenhirLib.EngineTypes.endp = _endpos_a_;
18889 MenhirLib.EngineTypes.next = _menhir_stack;
18890 };
18891 } = _menhir_stack in
18892 let b : 'tv_list_mzl_statement__ = Obj.magic b in
18893 let a : 'tv_statement = Obj.magic a in
18894 let _startpos = _startpos_a_ in
18895 let _endpos = _endpos_b_ in
18896 let _v : 'tv_midzero_list_statement_statement_ =
18897 # 2355 "parser_cocci_menhir.mly"
18898 ( let (mids,code) = List.split b in (mids,(a::code)) )
18899 # 18873 "parser_cocci_menhir.ml"
18900 in
18901 _menhir_env.MenhirLib.EngineTypes.stack <- {
18902 MenhirLib.EngineTypes.state = _menhir_s;
18903 MenhirLib.EngineTypes.semv = Obj.repr _v;
18904 MenhirLib.EngineTypes.startp = _startpos;
18905 MenhirLib.EngineTypes.endp = _endpos;
18906 MenhirLib.EngineTypes.next = _menhir_stack;
18907 });
18908 (fun _menhir_env ->
18909 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18910 let {
18911 MenhirLib.EngineTypes.semv = b;
18912 MenhirLib.EngineTypes.startp = _startpos_b_;
18913 MenhirLib.EngineTypes.endp = _endpos_b_;
18914 MenhirLib.EngineTypes.next = {
18915 MenhirLib.EngineTypes.state = _menhir_s;
18916 MenhirLib.EngineTypes.semv = a;
18917 MenhirLib.EngineTypes.startp = _startpos_a_;
18918 MenhirLib.EngineTypes.endp = _endpos_a_;
18919 MenhirLib.EngineTypes.next = _menhir_stack;
18920 };
18921 } = _menhir_stack in
18922 let b : 'tv_list_mzl_struct_decl_one__ = Obj.magic b in
18923 let a : 'tv_struct_decl_one = Obj.magic a in
18924 let _startpos = _startpos_a_ in
18925 let _endpos = _endpos_b_ in
18926 let _v : 'tv_midzero_list_struct_decl_one_struct_decl_one_ =
18927 # 2355 "parser_cocci_menhir.mly"
18928 ( let (mids,code) = List.split b in (mids,(a::code)) )
18929 # 18903 "parser_cocci_menhir.ml"
18930 in
18931 _menhir_env.MenhirLib.EngineTypes.stack <- {
18932 MenhirLib.EngineTypes.state = _menhir_s;
18933 MenhirLib.EngineTypes.semv = Obj.repr _v;
18934 MenhirLib.EngineTypes.startp = _startpos;
18935 MenhirLib.EngineTypes.endp = _endpos;
18936 MenhirLib.EngineTypes.next = _menhir_stack;
18937 });
18938 (fun _menhir_env ->
18939 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18940 let {
18941 MenhirLib.EngineTypes.semv = b;
18942 MenhirLib.EngineTypes.startp = _startpos_b_;
18943 MenhirLib.EngineTypes.endp = _endpos_b_;
18944 MenhirLib.EngineTypes.next = {
18945 MenhirLib.EngineTypes.state = _menhir_s;
18946 MenhirLib.EngineTypes.semv = f;
18947 MenhirLib.EngineTypes.startp = _startpos_f_;
18948 MenhirLib.EngineTypes.endp = _endpos_f_;
18949 MenhirLib.EngineTypes.next = _menhir_stack;
18950 };
18951 } = _menhir_stack in
18952 let b : 'tv_loption_minus_start_ = Obj.magic b in
18953 let f : 'tv_loption_filespec_ = Obj.magic f in
18954 let _startpos = _startpos_f_ in
18955 let _endpos = _endpos_b_ in
18956 let _v : 'tv_minus_body =
18957 # 838 "parser_cocci_menhir.mly"
18958 ( match f@b(*@ew*) with
18959 [] -> raise (Semantic_cocci.Semantic "minus slice can't be empty")
18960 | code -> code )
18961 # 18935 "parser_cocci_menhir.ml"
18962 in
18963 _menhir_env.MenhirLib.EngineTypes.stack <- {
18964 MenhirLib.EngineTypes.state = _menhir_s;
18965 MenhirLib.EngineTypes.semv = Obj.repr _v;
18966 MenhirLib.EngineTypes.startp = _startpos;
18967 MenhirLib.EngineTypes.endp = _endpos;
18968 MenhirLib.EngineTypes.next = _menhir_stack;
18969 });
18970 (fun _menhir_env ->
18971 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
18972 let {
18973 MenhirLib.EngineTypes.semv = b;
18974 MenhirLib.EngineTypes.startp = _startpos_b_;
18975 MenhirLib.EngineTypes.endp = _endpos_b_;
18976 MenhirLib.EngineTypes.next = {
18977 MenhirLib.EngineTypes.state = _menhir_s;
18978 MenhirLib.EngineTypes.semv = f;
18979 MenhirLib.EngineTypes.startp = _startpos_f_;
18980 MenhirLib.EngineTypes.endp = _endpos_f_;
18981 MenhirLib.EngineTypes.next = _menhir_stack;
18982 };
18983 } = _menhir_stack in
18984 let b : 'tv_top_eexpr = Obj.magic b in
18985 let f : 'tv_loption_filespec_ = Obj.magic f in
18986 let _startpos = _startpos_f_ in
18987 let _endpos = _endpos_b_ in
18988 let _v : 'tv_minus_exp_body =
18989 # 852 "parser_cocci_menhir.mly"
18990 ( match f@[b](*@ew*) with
18991 [] -> raise (Semantic_cocci.Semantic "minus slice can't be empty")
18992 | code -> code )
18993 # 18967 "parser_cocci_menhir.ml"
18994 in
18995 _menhir_env.MenhirLib.EngineTypes.stack <- {
18996 MenhirLib.EngineTypes.state = _menhir_s;
18997 MenhirLib.EngineTypes.semv = Obj.repr _v;
18998 MenhirLib.EngineTypes.startp = _startpos;
18999 MenhirLib.EngineTypes.endp = _endpos;
19000 MenhirLib.EngineTypes.next = _menhir_stack;
19001 });
19002 (fun _menhir_env ->
19003 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19004 let {
19005 MenhirLib.EngineTypes.startp = _startpos__2_;
19006 MenhirLib.EngineTypes.endp = _endpos__2_;
19007 MenhirLib.EngineTypes.next = {
19008 MenhirLib.EngineTypes.state = _menhir_s;
19009 MenhirLib.EngineTypes.semv = _1;
19010 MenhirLib.EngineTypes.startp = _startpos__1_;
19011 MenhirLib.EngineTypes.endp = _endpos__1_;
19012 MenhirLib.EngineTypes.next = _menhir_stack;
19013 };
19014 } = _menhir_stack in
19015 let _1 : 'tv_minus_exp_body = Obj.magic _1 in
19016 let _startpos = _startpos__1_ in
19017 let _endpos = _endpos__2_ in
19018 let _v : (
19019 # 185 "parser_cocci_menhir.mly"
19020 (Ast0_cocci.rule)
19021 # 18995 "parser_cocci_menhir.ml"
19022 ) =
19023 # 225 "parser_cocci_menhir.mly"
19024 ( _1 )
19025 # 18999 "parser_cocci_menhir.ml"
19026 in
19027 _menhir_env.MenhirLib.EngineTypes.stack <- {
19028 MenhirLib.EngineTypes.state = _menhir_s;
19029 MenhirLib.EngineTypes.semv = Obj.repr _v;
19030 MenhirLib.EngineTypes.startp = _startpos;
19031 MenhirLib.EngineTypes.endp = _endpos;
19032 MenhirLib.EngineTypes.next = _menhir_stack;
19033 });
19034 (fun _menhir_env ->
19035 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19036 let {
19037 MenhirLib.EngineTypes.startp = _startpos__2_;
19038 MenhirLib.EngineTypes.endp = _endpos__2_;
19039 MenhirLib.EngineTypes.next = {
19040 MenhirLib.EngineTypes.state = _menhir_s;
19041 MenhirLib.EngineTypes.semv = m;
19042 MenhirLib.EngineTypes.startp = _startpos_m_;
19043 MenhirLib.EngineTypes.endp = _endpos_m_;
19044 MenhirLib.EngineTypes.next = _menhir_stack;
19045 };
19046 } = _menhir_stack in
19047 let m : 'tv_minus_exp_body = Obj.magic m in
19048 let _startpos = _startpos_m_ in
19049 let _endpos = _endpos__2_ in
19050 let _v : (
19051 # 185 "parser_cocci_menhir.mly"
19052 (Ast0_cocci.rule)
19053 # 19027 "parser_cocci_menhir.ml"
19054 ) =
19055 # 225 "parser_cocci_menhir.mly"
19056 ( m )
19057 # 19031 "parser_cocci_menhir.ml"
19058 in
19059 _menhir_env.MenhirLib.EngineTypes.stack <- {
19060 MenhirLib.EngineTypes.state = _menhir_s;
19061 MenhirLib.EngineTypes.semv = Obj.repr _v;
19062 MenhirLib.EngineTypes.startp = _startpos;
19063 MenhirLib.EngineTypes.endp = _endpos;
19064 MenhirLib.EngineTypes.next = _menhir_stack;
19065 });
19066 (fun _menhir_env ->
19067 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19068 let {
19069 MenhirLib.EngineTypes.startp = _startpos__2_;
19070 MenhirLib.EngineTypes.endp = _endpos__2_;
19071 MenhirLib.EngineTypes.next = {
19072 MenhirLib.EngineTypes.state = _menhir_s;
19073 MenhirLib.EngineTypes.semv = m;
19074 MenhirLib.EngineTypes.startp = _startpos_m_;
19075 MenhirLib.EngineTypes.endp = _endpos_m_;
19076 MenhirLib.EngineTypes.next = _menhir_stack;
19077 };
19078 } = _menhir_stack in
19079 let m : 'tv_minus_exp_body = Obj.magic m in
19080 let _startpos = _startpos_m_ in
19081 let _endpos = _endpos__2_ in
19082 let _v : (
19083 # 185 "parser_cocci_menhir.mly"
19084 (Ast0_cocci.rule)
19085 # 19059 "parser_cocci_menhir.ml"
19086 ) =
19087 # 226 "parser_cocci_menhir.mly"
19088 ( m )
19089 # 19063 "parser_cocci_menhir.ml"
19090 in
19091 _menhir_env.MenhirLib.EngineTypes.stack <- {
19092 MenhirLib.EngineTypes.state = _menhir_s;
19093 MenhirLib.EngineTypes.semv = Obj.repr _v;
19094 MenhirLib.EngineTypes.startp = _startpos;
19095 MenhirLib.EngineTypes.endp = _endpos;
19096 MenhirLib.EngineTypes.next = _menhir_stack;
19097 });
19098 (fun _menhir_env ->
19099 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19100 let {
19101 MenhirLib.EngineTypes.startp = _startpos__2_;
19102 MenhirLib.EngineTypes.endp = _endpos__2_;
19103 MenhirLib.EngineTypes.next = {
19104 MenhirLib.EngineTypes.state = _menhir_s;
19105 MenhirLib.EngineTypes.semv = _1;
19106 MenhirLib.EngineTypes.startp = _startpos__1_;
19107 MenhirLib.EngineTypes.endp = _endpos__1_;
19108 MenhirLib.EngineTypes.next = _menhir_stack;
19109 };
19110 } = _menhir_stack in
19111 let _1 : 'tv_minus_body = Obj.magic _1 in
19112 let _startpos = _startpos__1_ in
19113 let _endpos = _endpos__2_ in
19114 let _v : (
19115 # 182 "parser_cocci_menhir.mly"
19116 (Ast0_cocci.rule)
19117 # 19091 "parser_cocci_menhir.ml"
19118 ) =
19119 # 221 "parser_cocci_menhir.mly"
19120 ( _1 )
19121 # 19095 "parser_cocci_menhir.ml"
19122 in
19123 _menhir_env.MenhirLib.EngineTypes.stack <- {
19124 MenhirLib.EngineTypes.state = _menhir_s;
19125 MenhirLib.EngineTypes.semv = Obj.repr _v;
19126 MenhirLib.EngineTypes.startp = _startpos;
19127 MenhirLib.EngineTypes.endp = _endpos;
19128 MenhirLib.EngineTypes.next = _menhir_stack;
19129 });
19130 (fun _menhir_env ->
19131 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19132 let {
19133 MenhirLib.EngineTypes.startp = _startpos__2_;
19134 MenhirLib.EngineTypes.endp = _endpos__2_;
19135 MenhirLib.EngineTypes.next = {
19136 MenhirLib.EngineTypes.state = _menhir_s;
19137 MenhirLib.EngineTypes.semv = m;
19138 MenhirLib.EngineTypes.startp = _startpos_m_;
19139 MenhirLib.EngineTypes.endp = _endpos_m_;
19140 MenhirLib.EngineTypes.next = _menhir_stack;
19141 };
19142 } = _menhir_stack in
19143 let m : 'tv_minus_body = Obj.magic m in
19144 let _startpos = _startpos_m_ in
19145 let _endpos = _endpos__2_ in
19146 let _v : (
19147 # 182 "parser_cocci_menhir.mly"
19148 (Ast0_cocci.rule)
19149 # 19123 "parser_cocci_menhir.ml"
19150 ) =
19151 # 221 "parser_cocci_menhir.mly"
19152 ( m )
19153 # 19127 "parser_cocci_menhir.ml"
19154 in
19155 _menhir_env.MenhirLib.EngineTypes.stack <- {
19156 MenhirLib.EngineTypes.state = _menhir_s;
19157 MenhirLib.EngineTypes.semv = Obj.repr _v;
19158 MenhirLib.EngineTypes.startp = _startpos;
19159 MenhirLib.EngineTypes.endp = _endpos;
19160 MenhirLib.EngineTypes.next = _menhir_stack;
19161 });
19162 (fun _menhir_env ->
19163 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19164 let {
19165 MenhirLib.EngineTypes.startp = _startpos__2_;
19166 MenhirLib.EngineTypes.endp = _endpos__2_;
19167 MenhirLib.EngineTypes.next = {
19168 MenhirLib.EngineTypes.state = _menhir_s;
19169 MenhirLib.EngineTypes.semv = m;
19170 MenhirLib.EngineTypes.startp = _startpos_m_;
19171 MenhirLib.EngineTypes.endp = _endpos_m_;
19172 MenhirLib.EngineTypes.next = _menhir_stack;
19173 };
19174 } = _menhir_stack in
19175 let m : 'tv_minus_body = Obj.magic m in
19176 let _startpos = _startpos_m_ in
19177 let _endpos = _endpos__2_ in
19178 let _v : (
19179 # 182 "parser_cocci_menhir.mly"
19180 (Ast0_cocci.rule)
19181 # 19155 "parser_cocci_menhir.ml"
19182 ) =
19183 # 222 "parser_cocci_menhir.mly"
19184 ( m )
19185 # 19159 "parser_cocci_menhir.ml"
19186 in
19187 _menhir_env.MenhirLib.EngineTypes.stack <- {
19188 MenhirLib.EngineTypes.state = _menhir_s;
19189 MenhirLib.EngineTypes.semv = Obj.repr _v;
19190 MenhirLib.EngineTypes.startp = _startpos;
19191 MenhirLib.EngineTypes.endp = _endpos;
19192 MenhirLib.EngineTypes.next = _menhir_stack;
19193 });
19194 (fun _menhir_env ->
19195 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19196 let {
19197 MenhirLib.EngineTypes.state = _menhir_s;
19198 MenhirLib.EngineTypes.semv = _1;
19199 MenhirLib.EngineTypes.startp = _startpos__1_;
19200 MenhirLib.EngineTypes.endp = _endpos__1_;
19201 MenhirLib.EngineTypes.next = _menhir_stack;
19202 } = _menhir_stack in
19203 let _1 : 'tv_fundecl = Obj.magic _1 in
19204 let _startpos = _startpos__1_ in
19205 let _endpos = _endpos__1_ in
19206 let _v : 'tv_minus_start =
19207 # 2180 "parser_cocci_menhir.mly"
19208 ( [Ast0.wrap(Ast0.OTHER(_1))] )
19209 # 19183 "parser_cocci_menhir.ml"
19210 in
19211 _menhir_env.MenhirLib.EngineTypes.stack <- {
19212 MenhirLib.EngineTypes.state = _menhir_s;
19213 MenhirLib.EngineTypes.semv = Obj.repr _v;
19214 MenhirLib.EngineTypes.startp = _startpos;
19215 MenhirLib.EngineTypes.endp = _endpos;
19216 MenhirLib.EngineTypes.next = _menhir_stack;
19217 });
19218 (fun _menhir_env ->
19219 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19220 let {
19221 MenhirLib.EngineTypes.state = _menhir_s;
19222 MenhirLib.EngineTypes.semv = _1;
19223 MenhirLib.EngineTypes.startp = _startpos__1_;
19224 MenhirLib.EngineTypes.endp = _endpos__1_;
19225 MenhirLib.EngineTypes.next = _menhir_stack;
19226 } = _menhir_stack in
19227 let _1 : 'tv_ctype = Obj.magic _1 in
19228 let _startpos = _startpos__1_ in
19229 let _endpos = _endpos__1_ in
19230 let _v : 'tv_minus_start =
19231 # 2181 "parser_cocci_menhir.mly"
19232 ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] )
19233 # 19207 "parser_cocci_menhir.ml"
19234 in
19235 _menhir_env.MenhirLib.EngineTypes.stack <- {
19236 MenhirLib.EngineTypes.state = _menhir_s;
19237 MenhirLib.EngineTypes.semv = Obj.repr _v;
19238 MenhirLib.EngineTypes.startp = _startpos;
19239 MenhirLib.EngineTypes.endp = _endpos;
19240 MenhirLib.EngineTypes.next = _menhir_stack;
19241 });
19242 (fun _menhir_env ->
19243 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19244 let {
19245 MenhirLib.EngineTypes.state = _menhir_s;
19246 MenhirLib.EngineTypes.semv = _1;
19247 MenhirLib.EngineTypes.startp = _startpos__1_;
19248 MenhirLib.EngineTypes.endp = _endpos__1_;
19249 MenhirLib.EngineTypes.next = _menhir_stack;
19250 } = _menhir_stack in
19251 let _1 : 'tv_top_init = Obj.magic _1 in
19252 let _startpos = _startpos__1_ in
19253 let _endpos = _endpos__1_ in
19254 let _v : 'tv_minus_start =
19255 # 2182 "parser_cocci_menhir.mly"
19256 ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.TopInit(_1))))] )
19257 # 19231 "parser_cocci_menhir.ml"
19258 in
19259 _menhir_env.MenhirLib.EngineTypes.stack <- {
19260 MenhirLib.EngineTypes.state = _menhir_s;
19261 MenhirLib.EngineTypes.semv = Obj.repr _v;
19262 MenhirLib.EngineTypes.startp = _startpos;
19263 MenhirLib.EngineTypes.endp = _endpos;
19264 MenhirLib.EngineTypes.next = _menhir_stack;
19265 });
19266 (fun _menhir_env ->
19267 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19268 let {
19269 MenhirLib.EngineTypes.state = _menhir_s;
19270 MenhirLib.EngineTypes.semv = _1;
19271 MenhirLib.EngineTypes.startp = _startpos__1_;
19272 MenhirLib.EngineTypes.endp = _endpos__1_;
19273 MenhirLib.EngineTypes.next = _menhir_stack;
19274 } = _menhir_stack in
19275 let _1 : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ = Obj.magic _1 in
19276 let _startpos = _startpos__1_ in
19277 let _endpos = _endpos__1_ in
19278 let _v : 'tv_minus_start =
19279 # 2184 "parser_cocci_menhir.mly"
19280 ( List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1 )
19281 # 19255 "parser_cocci_menhir.ml"
19282 in
19283 _menhir_env.MenhirLib.EngineTypes.stack <- {
19284 MenhirLib.EngineTypes.state = _menhir_s;
19285 MenhirLib.EngineTypes.semv = Obj.repr _v;
19286 MenhirLib.EngineTypes.startp = _startpos;
19287 MenhirLib.EngineTypes.endp = _endpos;
19288 MenhirLib.EngineTypes.next = _menhir_stack;
19289 });
19290 (fun _menhir_env ->
19291 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19292 let {
19293 MenhirLib.EngineTypes.state = _menhir_s;
19294 MenhirLib.EngineTypes.semv = a;
19295 MenhirLib.EngineTypes.startp = _startpos_a_;
19296 MenhirLib.EngineTypes.endp = _endpos_a_;
19297 MenhirLib.EngineTypes.next = _menhir_stack;
19298 } = _menhir_stack in
19299 let a : (
19300 # 145 "parser_cocci_menhir.mly"
19301 (Data.clt)
19302 # 19276 "parser_cocci_menhir.ml"
19303 ) = Obj.magic a in
19304 let _startpos = _startpos_a_ in
19305 let _endpos = _endpos_a_ in
19306 let _v : 'tv_mul = let b =
19307
19308 # 39 "standard.mly"
19309 ( None )
19310 # 19284 "parser_cocci_menhir.ml"
19311
19312 in
19313
19314 # 728 "parser_cocci_menhir.mly"
19315 ( (a,b) )
19316 # 19290 "parser_cocci_menhir.ml"
19317 in
19318 _menhir_env.MenhirLib.EngineTypes.stack <- {
19319 MenhirLib.EngineTypes.state = _menhir_s;
19320 MenhirLib.EngineTypes.semv = Obj.repr _v;
19321 MenhirLib.EngineTypes.startp = _startpos;
19322 MenhirLib.EngineTypes.endp = _endpos;
19323 MenhirLib.EngineTypes.next = _menhir_stack;
19324 });
19325 (fun _menhir_env ->
19326 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19327 let {
19328 MenhirLib.EngineTypes.semv = x0;
19329 MenhirLib.EngineTypes.startp = _startpos_x0_;
19330 MenhirLib.EngineTypes.endp = _endpos_x0_;
19331 MenhirLib.EngineTypes.next = {
19332 MenhirLib.EngineTypes.state = _menhir_s;
19333 MenhirLib.EngineTypes.semv = a;
19334 MenhirLib.EngineTypes.startp = _startpos_a_;
19335 MenhirLib.EngineTypes.endp = _endpos_a_;
19336 MenhirLib.EngineTypes.next = _menhir_stack;
19337 };
19338 } = _menhir_stack in
19339 let x0 : 'tv_const_vol = Obj.magic x0 in
19340 let a : (
19341 # 145 "parser_cocci_menhir.mly"
19342 (Data.clt)
19343 # 19317 "parser_cocci_menhir.ml"
19344 ) = Obj.magic a in
19345 let _startpos = _startpos_a_ in
19346 let _endpos = _endpos_x0_ in
19347 let _v : 'tv_mul = let b =
19348 let x = x0 in
19349
19350 # 41 "standard.mly"
19351 ( Some x )
19352 # 19326 "parser_cocci_menhir.ml"
19353
19354 in
19355
19356 # 728 "parser_cocci_menhir.mly"
19357 ( (a,b) )
19358 # 19332 "parser_cocci_menhir.ml"
19359 in
19360 _menhir_env.MenhirLib.EngineTypes.stack <- {
19361 MenhirLib.EngineTypes.state = _menhir_s;
19362 MenhirLib.EngineTypes.semv = Obj.repr _v;
19363 MenhirLib.EngineTypes.startp = _startpos;
19364 MenhirLib.EngineTypes.endp = _endpos;
19365 MenhirLib.EngineTypes.next = _menhir_stack;
19366 });
19367 (fun _menhir_env ->
19368 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19369 let {
19370 MenhirLib.EngineTypes.semv = b;
19371 MenhirLib.EngineTypes.startp = _startpos_b_;
19372 MenhirLib.EngineTypes.endp = _endpos_b_;
19373 MenhirLib.EngineTypes.next = {
19374 MenhirLib.EngineTypes.state = _menhir_s;
19375 MenhirLib.EngineTypes.semv = a;
19376 MenhirLib.EngineTypes.startp = _startpos_a_;
19377 MenhirLib.EngineTypes.endp = _endpos_a_;
19378 MenhirLib.EngineTypes.next = _menhir_stack;
19379 };
19380 } = _menhir_stack in
19381 let b : 'tv_ctype = Obj.magic b in
19382 let a : (
19383 # 123 "parser_cocci_menhir.mly"
19384 (Data.clt)
19385 # 19359 "parser_cocci_menhir.ml"
19386 ) = Obj.magic a in
19387 let _startpos = _startpos_a_ in
19388 let _endpos = _endpos_b_ in
19389 let _v : 'tv_mzl_ctype_ =
19390 # 2358 "parser_cocci_menhir.mly"
19391 ( (P.clt2mcode "|" a, b) )
19392 # 19366 "parser_cocci_menhir.ml"
19393 in
19394 _menhir_env.MenhirLib.EngineTypes.stack <- {
19395 MenhirLib.EngineTypes.state = _menhir_s;
19396 MenhirLib.EngineTypes.semv = Obj.repr _v;
19397 MenhirLib.EngineTypes.startp = _startpos;
19398 MenhirLib.EngineTypes.endp = _endpos;
19399 MenhirLib.EngineTypes.next = _menhir_stack;
19400 });
19401 (fun _menhir_env ->
19402 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19403 let {
19404 MenhirLib.EngineTypes.semv = b;
19405 MenhirLib.EngineTypes.startp = _startpos_b_;
19406 MenhirLib.EngineTypes.endp = _endpos_b_;
19407 MenhirLib.EngineTypes.next = {
19408 MenhirLib.EngineTypes.state = _menhir_s;
19409 MenhirLib.EngineTypes.semv = a;
19410 MenhirLib.EngineTypes.startp = _startpos_a_;
19411 MenhirLib.EngineTypes.endp = _endpos_a_;
19412 MenhirLib.EngineTypes.next = _menhir_stack;
19413 };
19414 } = _menhir_stack in
19415 let b : 'tv_disj_ident = Obj.magic b in
19416 let a : (
19417 # 123 "parser_cocci_menhir.mly"
19418 (Data.clt)
19419 # 19393 "parser_cocci_menhir.ml"
19420 ) = Obj.magic a in
19421 let _startpos = _startpos_a_ in
19422 let _endpos = _endpos_b_ in
19423 let _v : 'tv_mzl_disj_ident_ =
19424 # 2358 "parser_cocci_menhir.mly"
19425 ( (P.clt2mcode "|" a, b) )
19426 # 19400 "parser_cocci_menhir.ml"
19427 in
19428 _menhir_env.MenhirLib.EngineTypes.stack <- {
19429 MenhirLib.EngineTypes.state = _menhir_s;
19430 MenhirLib.EngineTypes.semv = Obj.repr _v;
19431 MenhirLib.EngineTypes.startp = _startpos;
19432 MenhirLib.EngineTypes.endp = _endpos;
19433 MenhirLib.EngineTypes.next = _menhir_stack;
19434 });
19435 (fun _menhir_env ->
19436 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19437 let {
19438 MenhirLib.EngineTypes.semv = b;
19439 MenhirLib.EngineTypes.startp = _startpos_b_;
19440 MenhirLib.EngineTypes.endp = _endpos_b_;
19441 MenhirLib.EngineTypes.next = {
19442 MenhirLib.EngineTypes.state = _menhir_s;
19443 MenhirLib.EngineTypes.semv = a;
19444 MenhirLib.EngineTypes.startp = _startpos_a_;
19445 MenhirLib.EngineTypes.endp = _endpos_a_;
19446 MenhirLib.EngineTypes.next = _menhir_stack;
19447 };
19448 } = _menhir_stack in
19449 let b : 'tv_eexpr = Obj.magic b in
19450 let a : (
19451 # 123 "parser_cocci_menhir.mly"
19452 (Data.clt)
19453 # 19427 "parser_cocci_menhir.ml"
19454 ) = Obj.magic a in
19455 let _startpos = _startpos_a_ in
19456 let _endpos = _endpos_b_ in
19457 let _v : 'tv_mzl_eexpr_ =
19458 # 2358 "parser_cocci_menhir.mly"
19459 ( (P.clt2mcode "|" a, b) )
19460 # 19434 "parser_cocci_menhir.ml"
19461 in
19462 _menhir_env.MenhirLib.EngineTypes.stack <- {
19463 MenhirLib.EngineTypes.state = _menhir_s;
19464 MenhirLib.EngineTypes.semv = Obj.repr _v;
19465 MenhirLib.EngineTypes.startp = _startpos;
19466 MenhirLib.EngineTypes.endp = _endpos;
19467 MenhirLib.EngineTypes.next = _menhir_stack;
19468 });
19469 (fun _menhir_env ->
19470 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19471 let {
19472 MenhirLib.EngineTypes.semv = b;
19473 MenhirLib.EngineTypes.startp = _startpos_b_;
19474 MenhirLib.EngineTypes.endp = _endpos_b_;
19475 MenhirLib.EngineTypes.next = {
19476 MenhirLib.EngineTypes.state = _menhir_s;
19477 MenhirLib.EngineTypes.semv = a;
19478 MenhirLib.EngineTypes.startp = _startpos_a_;
19479 MenhirLib.EngineTypes.endp = _endpos_a_;
19480 MenhirLib.EngineTypes.next = _menhir_stack;
19481 };
19482 } = _menhir_stack in
19483 let b : 'tv_fun_after_dots_or = Obj.magic b in
19484 let a : (
19485 # 123 "parser_cocci_menhir.mly"
19486 (Data.clt)
19487 # 19461 "parser_cocci_menhir.ml"
19488 ) = Obj.magic a in
19489 let _startpos = _startpos_a_ in
19490 let _endpos = _endpos_b_ in
19491 let _v : 'tv_mzl_fun_after_dots_or_ =
19492 # 2358 "parser_cocci_menhir.mly"
19493 ( (P.clt2mcode "|" a, b) )
19494 # 19468 "parser_cocci_menhir.ml"
19495 in
19496 _menhir_env.MenhirLib.EngineTypes.stack <- {
19497 MenhirLib.EngineTypes.state = _menhir_s;
19498 MenhirLib.EngineTypes.semv = Obj.repr _v;
19499 MenhirLib.EngineTypes.startp = _startpos;
19500 MenhirLib.EngineTypes.endp = _endpos;
19501 MenhirLib.EngineTypes.next = _menhir_stack;
19502 });
19503 (fun _menhir_env ->
19504 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19505 let {
19506 MenhirLib.EngineTypes.semv = b;
19507 MenhirLib.EngineTypes.startp = _startpos_b_;
19508 MenhirLib.EngineTypes.endp = _endpos_b_;
19509 MenhirLib.EngineTypes.next = {
19510 MenhirLib.EngineTypes.state = _menhir_s;
19511 MenhirLib.EngineTypes.semv = a;
19512 MenhirLib.EngineTypes.startp = _startpos_a_;
19513 MenhirLib.EngineTypes.endp = _endpos_a_;
19514 MenhirLib.EngineTypes.next = _menhir_stack;
19515 };
19516 } = _menhir_stack in
19517 let b : 'tv_fun_start = Obj.magic b in
19518 let a : (
19519 # 123 "parser_cocci_menhir.mly"
19520 (Data.clt)
19521 # 19495 "parser_cocci_menhir.ml"
19522 ) = Obj.magic a in
19523 let _startpos = _startpos_a_ in
19524 let _endpos = _endpos_b_ in
19525 let _v : 'tv_mzl_fun_start_ =
19526 # 2358 "parser_cocci_menhir.mly"
19527 ( (P.clt2mcode "|" a, b) )
19528 # 19502 "parser_cocci_menhir.ml"
19529 in
19530 _menhir_env.MenhirLib.EngineTypes.stack <- {
19531 MenhirLib.EngineTypes.state = _menhir_s;
19532 MenhirLib.EngineTypes.semv = Obj.repr _v;
19533 MenhirLib.EngineTypes.startp = _startpos;
19534 MenhirLib.EngineTypes.endp = _endpos;
19535 MenhirLib.EngineTypes.next = _menhir_stack;
19536 });
19537 (fun _menhir_env ->
19538 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19539 let {
19540 MenhirLib.EngineTypes.semv = b;
19541 MenhirLib.EngineTypes.startp = _startpos_b_;
19542 MenhirLib.EngineTypes.endp = _endpos_b_;
19543 MenhirLib.EngineTypes.next = {
19544 MenhirLib.EngineTypes.state = _menhir_s;
19545 MenhirLib.EngineTypes.semv = a;
19546 MenhirLib.EngineTypes.startp = _startpos_a_;
19547 MenhirLib.EngineTypes.endp = _endpos_a_;
19548 MenhirLib.EngineTypes.next = _menhir_stack;
19549 };
19550 } = _menhir_stack in
19551 let b : 'tv_mctype = Obj.magic b in
19552 let a : (
19553 # 123 "parser_cocci_menhir.mly"
19554 (Data.clt)
19555 # 19529 "parser_cocci_menhir.ml"
19556 ) = Obj.magic a in
19557 let _startpos = _startpos_a_ in
19558 let _endpos = _endpos_b_ in
19559 let _v : 'tv_mzl_mctype_ =
19560 # 2358 "parser_cocci_menhir.mly"
19561 ( (P.clt2mcode "|" a, b) )
19562 # 19536 "parser_cocci_menhir.ml"
19563 in
19564 _menhir_env.MenhirLib.EngineTypes.stack <- {
19565 MenhirLib.EngineTypes.state = _menhir_s;
19566 MenhirLib.EngineTypes.semv = Obj.repr _v;
19567 MenhirLib.EngineTypes.startp = _startpos;
19568 MenhirLib.EngineTypes.endp = _endpos;
19569 MenhirLib.EngineTypes.next = _menhir_stack;
19570 });
19571 (fun _menhir_env ->
19572 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19573 let {
19574 MenhirLib.EngineTypes.semv = b;
19575 MenhirLib.EngineTypes.startp = _startpos_b_;
19576 MenhirLib.EngineTypes.endp = _endpos_b_;
19577 MenhirLib.EngineTypes.next = {
19578 MenhirLib.EngineTypes.state = _menhir_s;
19579 MenhirLib.EngineTypes.semv = a;
19580 MenhirLib.EngineTypes.startp = _startpos_a_;
19581 MenhirLib.EngineTypes.endp = _endpos_a_;
19582 MenhirLib.EngineTypes.next = _menhir_stack;
19583 };
19584 } = _menhir_stack in
19585 let b : 'tv_rule_elem_statement = Obj.magic b in
19586 let a : (
19587 # 123 "parser_cocci_menhir.mly"
19588 (Data.clt)
19589 # 19563 "parser_cocci_menhir.ml"
19590 ) = Obj.magic a in
19591 let _startpos = _startpos_a_ in
19592 let _endpos = _endpos_b_ in
19593 let _v : 'tv_mzl_rule_elem_statement_ =
19594 # 2358 "parser_cocci_menhir.mly"
19595 ( (P.clt2mcode "|" a, b) )
19596 # 19570 "parser_cocci_menhir.ml"
19597 in
19598 _menhir_env.MenhirLib.EngineTypes.stack <- {
19599 MenhirLib.EngineTypes.state = _menhir_s;
19600 MenhirLib.EngineTypes.semv = Obj.repr _v;
19601 MenhirLib.EngineTypes.startp = _startpos;
19602 MenhirLib.EngineTypes.endp = _endpos;
19603 MenhirLib.EngineTypes.next = _menhir_stack;
19604 });
19605 (fun _menhir_env ->
19606 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19607 let {
19608 MenhirLib.EngineTypes.semv = b;
19609 MenhirLib.EngineTypes.startp = _startpos_b_;
19610 MenhirLib.EngineTypes.endp = _endpos_b_;
19611 MenhirLib.EngineTypes.next = {
19612 MenhirLib.EngineTypes.state = _menhir_s;
19613 MenhirLib.EngineTypes.semv = a;
19614 MenhirLib.EngineTypes.startp = _startpos_a_;
19615 MenhirLib.EngineTypes.endp = _endpos_a_;
19616 MenhirLib.EngineTypes.next = _menhir_stack;
19617 };
19618 } = _menhir_stack in
19619 let b : 'tv_statement = Obj.magic b in
19620 let a : (
19621 # 123 "parser_cocci_menhir.mly"
19622 (Data.clt)
19623 # 19597 "parser_cocci_menhir.ml"
19624 ) = Obj.magic a in
19625 let _startpos = _startpos_a_ in
19626 let _endpos = _endpos_b_ in
19627 let _v : 'tv_mzl_statement_ =
19628 # 2358 "parser_cocci_menhir.mly"
19629 ( (P.clt2mcode "|" a, b) )
19630 # 19604 "parser_cocci_menhir.ml"
19631 in
19632 _menhir_env.MenhirLib.EngineTypes.stack <- {
19633 MenhirLib.EngineTypes.state = _menhir_s;
19634 MenhirLib.EngineTypes.semv = Obj.repr _v;
19635 MenhirLib.EngineTypes.startp = _startpos;
19636 MenhirLib.EngineTypes.endp = _endpos;
19637 MenhirLib.EngineTypes.next = _menhir_stack;
19638 });
19639 (fun _menhir_env ->
19640 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19641 let {
19642 MenhirLib.EngineTypes.semv = b;
19643 MenhirLib.EngineTypes.startp = _startpos_b_;
19644 MenhirLib.EngineTypes.endp = _endpos_b_;
19645 MenhirLib.EngineTypes.next = {
19646 MenhirLib.EngineTypes.state = _menhir_s;
19647 MenhirLib.EngineTypes.semv = a;
19648 MenhirLib.EngineTypes.startp = _startpos_a_;
19649 MenhirLib.EngineTypes.endp = _endpos_a_;
19650 MenhirLib.EngineTypes.next = _menhir_stack;
19651 };
19652 } = _menhir_stack in
19653 let b : 'tv_struct_decl_one = Obj.magic b in
19654 let a : (
19655 # 123 "parser_cocci_menhir.mly"
19656 (Data.clt)
19657 # 19631 "parser_cocci_menhir.ml"
19658 ) = Obj.magic a in
19659 let _startpos = _startpos_a_ in
19660 let _endpos = _endpos_b_ in
19661 let _v : 'tv_mzl_struct_decl_one_ =
19662 # 2358 "parser_cocci_menhir.mly"
19663 ( (P.clt2mcode "|" a, b) )
19664 # 19638 "parser_cocci_menhir.ml"
19665 in
19666 _menhir_env.MenhirLib.EngineTypes.stack <- {
19667 MenhirLib.EngineTypes.state = _menhir_s;
19668 MenhirLib.EngineTypes.semv = Obj.repr _v;
19669 MenhirLib.EngineTypes.startp = _startpos;
19670 MenhirLib.EngineTypes.endp = _endpos;
19671 MenhirLib.EngineTypes.next = _menhir_stack;
19672 });
19673 (fun _menhir_env ->
19674 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19675 let {
19676 MenhirLib.EngineTypes.state = _menhir_s;
19677 MenhirLib.EngineTypes.semv = _1;
19678 MenhirLib.EngineTypes.startp = _startpos__1_;
19679 MenhirLib.EngineTypes.endp = _endpos__1_;
19680 MenhirLib.EngineTypes.next = _menhir_stack;
19681 } = _menhir_stack in
19682 let _1 : 'tv_decl = Obj.magic _1 in
19683 let _startpos = _startpos__1_ in
19684 let _endpos = _endpos__1_ in
19685 let _v : 'tv_name_opt_decl =
19686 # 1078 "parser_cocci_menhir.mly"
19687 ( _1 )
19688 # 19662 "parser_cocci_menhir.ml"
19689 in
19690 _menhir_env.MenhirLib.EngineTypes.stack <- {
19691 MenhirLib.EngineTypes.state = _menhir_s;
19692 MenhirLib.EngineTypes.semv = Obj.repr _v;
19693 MenhirLib.EngineTypes.startp = _startpos;
19694 MenhirLib.EngineTypes.endp = _endpos;
19695 MenhirLib.EngineTypes.next = _menhir_stack;
19696 });
19697 (fun _menhir_env ->
19698 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19699 let {
19700 MenhirLib.EngineTypes.semv = rp1;
19701 MenhirLib.EngineTypes.startp = _startpos_rp1_;
19702 MenhirLib.EngineTypes.endp = _endpos_rp1_;
19703 MenhirLib.EngineTypes.next = {
19704 MenhirLib.EngineTypes.semv = d;
19705 MenhirLib.EngineTypes.startp = _startpos_d_;
19706 MenhirLib.EngineTypes.endp = _endpos_d_;
19707 MenhirLib.EngineTypes.next = {
19708 MenhirLib.EngineTypes.semv = lp1;
19709 MenhirLib.EngineTypes.startp = _startpos_lp1_;
19710 MenhirLib.EngineTypes.endp = _endpos_lp1_;
19711 MenhirLib.EngineTypes.next = {
19712 MenhirLib.EngineTypes.semv = rp;
19713 MenhirLib.EngineTypes.startp = _startpos_rp_;
19714 MenhirLib.EngineTypes.endp = _endpos_rp_;
19715 MenhirLib.EngineTypes.next = {
19716 MenhirLib.EngineTypes.semv = s;
19717 MenhirLib.EngineTypes.startp = _startpos_s_;
19718 MenhirLib.EngineTypes.endp = _endpos_s_;
19719 MenhirLib.EngineTypes.next = {
19720 MenhirLib.EngineTypes.semv = lp;
19721 MenhirLib.EngineTypes.startp = _startpos_lp_;
19722 MenhirLib.EngineTypes.endp = _endpos_lp_;
19723 MenhirLib.EngineTypes.next = {
19724 MenhirLib.EngineTypes.state = _menhir_s;
19725 MenhirLib.EngineTypes.semv = t;
19726 MenhirLib.EngineTypes.startp = _startpos_t_;
19727 MenhirLib.EngineTypes.endp = _endpos_t_;
19728 MenhirLib.EngineTypes.next = _menhir_stack;
19729 };
19730 };
19731 };
19732 };
19733 };
19734 };
19735 } = _menhir_stack in
19736 let rp1 : (
19737 # 123 "parser_cocci_menhir.mly"
19738 (Data.clt)
19739 # 19713 "parser_cocci_menhir.ml"
19740 ) = Obj.magic rp1 in
19741 let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
19742 let lp1 : (
19743 # 122 "parser_cocci_menhir.mly"
19744 (Data.clt)
19745 # 19719 "parser_cocci_menhir.ml"
19746 ) = Obj.magic lp1 in
19747 let rp : (
19748 # 123 "parser_cocci_menhir.mly"
19749 (Data.clt)
19750 # 19724 "parser_cocci_menhir.ml"
19751 ) = Obj.magic rp in
19752 let s : (
19753 # 145 "parser_cocci_menhir.mly"
19754 (Data.clt)
19755 # 19729 "parser_cocci_menhir.ml"
19756 ) = Obj.magic s in
19757 let lp : (
19758 # 122 "parser_cocci_menhir.mly"
19759 (Data.clt)
19760 # 19734 "parser_cocci_menhir.ml"
19761 ) = Obj.magic lp in
19762 let t : 'tv_ctype = Obj.magic t in
19763 let _startpos = _startpos_t_ in
19764 let _endpos = _endpos_rp1_ in
19765 let _v : 'tv_name_opt_decl =
19766 # 1081 "parser_cocci_menhir.mly"
19767 ( let fnptr =
19768 Ast0.wrap
19769 (Ast0.FunctionPointer
19770 (t,P.clt2mcode "(" lp,P.clt2mcode "*" s,P.clt2mcode ")" rp,
19771 P.clt2mcode "(" lp1,d,P.clt2mcode ")" rp1)) in
19772 Ast0.wrap(Ast0.Param(fnptr, None)) )
19773 # 19747 "parser_cocci_menhir.ml"
19774 in
19775 _menhir_env.MenhirLib.EngineTypes.stack <- {
19776 MenhirLib.EngineTypes.state = _menhir_s;
19777 MenhirLib.EngineTypes.semv = Obj.repr _v;
19778 MenhirLib.EngineTypes.startp = _startpos;
19779 MenhirLib.EngineTypes.endp = _endpos;
19780 MenhirLib.EngineTypes.next = _menhir_stack;
19781 });
19782 (fun _menhir_env ->
19783 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19784 let {
19785 MenhirLib.EngineTypes.semv = _2;
19786 MenhirLib.EngineTypes.startp = _startpos__2_;
19787 MenhirLib.EngineTypes.endp = _endpos__2_;
19788 MenhirLib.EngineTypes.next = {
19789 MenhirLib.EngineTypes.state = _menhir_s;
19790 MenhirLib.EngineTypes.semv = _1;
19791 MenhirLib.EngineTypes.startp = _startpos__1_;
19792 MenhirLib.EngineTypes.endp = _endpos__1_;
19793 MenhirLib.EngineTypes.next = _menhir_stack;
19794 };
19795 } = _menhir_stack in
19796 let _2 : 'tv_nest_after_stm = Obj.magic _2 in
19797 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
19798 let _startpos = _startpos__1_ in
19799 let _endpos = _endpos__2_ in
19800 let _v : 'tv_nest_after_dots =
19801 # 2300 "parser_cocci_menhir.mly"
19802 (_1@_2)
19803 # 19777 "parser_cocci_menhir.ml"
19804 in
19805 _menhir_env.MenhirLib.EngineTypes.stack <- {
19806 MenhirLib.EngineTypes.state = _menhir_s;
19807 MenhirLib.EngineTypes.semv = Obj.repr _v;
19808 MenhirLib.EngineTypes.startp = _startpos;
19809 MenhirLib.EngineTypes.endp = _endpos;
19810 MenhirLib.EngineTypes.next = _menhir_stack;
19811 });
19812 (fun _menhir_env ->
19813 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19814 let {
19815 MenhirLib.EngineTypes.semv = _2;
19816 MenhirLib.EngineTypes.startp = _startpos__2_;
19817 MenhirLib.EngineTypes.endp = _endpos__2_;
19818 MenhirLib.EngineTypes.next = {
19819 MenhirLib.EngineTypes.state = _menhir_s;
19820 MenhirLib.EngineTypes.startp = _startpos__1_;
19821 MenhirLib.EngineTypes.endp = _endpos__1_;
19822 MenhirLib.EngineTypes.next = _menhir_stack;
19823 };
19824 } = _menhir_stack in
19825 let _2 : 'tv_nest_after_exp = Obj.magic _2 in
19826 let _startpos = _startpos__1_ in
19827 let _endpos = _endpos__2_ in
19828 let _v : 'tv_nest_after_dots =
19829 # 2301 "parser_cocci_menhir.mly"
19830 (_2)
19831 # 19805 "parser_cocci_menhir.ml"
19832 in
19833 _menhir_env.MenhirLib.EngineTypes.stack <- {
19834 MenhirLib.EngineTypes.state = _menhir_s;
19835 MenhirLib.EngineTypes.semv = Obj.repr _v;
19836 MenhirLib.EngineTypes.startp = _startpos;
19837 MenhirLib.EngineTypes.endp = _endpos;
19838 MenhirLib.EngineTypes.next = _menhir_stack;
19839 });
19840 (fun _menhir_env ->
19841 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19842 let {
19843 MenhirLib.EngineTypes.semv = _2;
19844 MenhirLib.EngineTypes.startp = _startpos__2_;
19845 MenhirLib.EngineTypes.endp = _endpos__2_;
19846 MenhirLib.EngineTypes.next = {
19847 MenhirLib.EngineTypes.state = _menhir_s;
19848 MenhirLib.EngineTypes.semv = _1;
19849 MenhirLib.EngineTypes.startp = _startpos__1_;
19850 MenhirLib.EngineTypes.endp = _endpos__1_;
19851 MenhirLib.EngineTypes.next = _menhir_stack;
19852 };
19853 } = _menhir_stack in
19854 let _2 : 'tv_nest_after_exp = Obj.magic _2 in
19855 let _1 : 'tv_expr = Obj.magic _1 in
19856 let _startpos = _startpos__1_ in
19857 let _endpos = _endpos__2_ in
19858 let _v : 'tv_nest_after_dots =
19859 # 2302 "parser_cocci_menhir.mly"
19860 ((Ast0.wrap(Ast0.Exp(_1)))::_2)
19861 # 19835 "parser_cocci_menhir.ml"
19862 in
19863 _menhir_env.MenhirLib.EngineTypes.stack <- {
19864 MenhirLib.EngineTypes.state = _menhir_s;
19865 MenhirLib.EngineTypes.semv = Obj.repr _v;
19866 MenhirLib.EngineTypes.startp = _startpos;
19867 MenhirLib.EngineTypes.endp = _endpos;
19868 MenhirLib.EngineTypes.next = _menhir_stack;
19869 });
19870 (fun _menhir_env ->
19871 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19872 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
19873 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
19874 let _endpos = _startpos in
19875 let _v : 'tv_nest_after_exp =
19876 # 2310 "parser_cocci_menhir.mly"
19877 ([])
19878 # 19852 "parser_cocci_menhir.ml"
19879 in
19880 _menhir_env.MenhirLib.EngineTypes.stack <- {
19881 MenhirLib.EngineTypes.state = _menhir_s;
19882 MenhirLib.EngineTypes.semv = Obj.repr _v;
19883 MenhirLib.EngineTypes.startp = _startpos;
19884 MenhirLib.EngineTypes.endp = _endpos;
19885 MenhirLib.EngineTypes.next = _menhir_stack;
19886 });
19887 (fun _menhir_env ->
19888 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19889 let {
19890 MenhirLib.EngineTypes.semv = _2;
19891 MenhirLib.EngineTypes.startp = _startpos__2_;
19892 MenhirLib.EngineTypes.endp = _endpos__2_;
19893 MenhirLib.EngineTypes.next = {
19894 MenhirLib.EngineTypes.state = _menhir_s;
19895 MenhirLib.EngineTypes.semv = _1;
19896 MenhirLib.EngineTypes.startp = _startpos__1_;
19897 MenhirLib.EngineTypes.endp = _endpos__1_;
19898 MenhirLib.EngineTypes.next = _menhir_stack;
19899 };
19900 } = _menhir_stack in
19901 let _2 : 'tv_nest_after_dots = Obj.magic _2 in
19902 let _1 : 'tv_stm_dots = Obj.magic _1 in
19903 let _startpos = _startpos__1_ in
19904 let _endpos = _endpos__2_ in
19905 let _v : 'tv_nest_after_exp =
19906 # 2311 "parser_cocci_menhir.mly"
19907 (_1::_2)
19908 # 19882 "parser_cocci_menhir.ml"
19909 in
19910 _menhir_env.MenhirLib.EngineTypes.stack <- {
19911 MenhirLib.EngineTypes.state = _menhir_s;
19912 MenhirLib.EngineTypes.semv = Obj.repr _v;
19913 MenhirLib.EngineTypes.startp = _startpos;
19914 MenhirLib.EngineTypes.endp = _endpos;
19915 MenhirLib.EngineTypes.next = _menhir_stack;
19916 });
19917 (fun _menhir_env ->
19918 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19919 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
19920 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
19921 let _endpos = _startpos in
19922 let _v : 'tv_nest_after_stm =
19923 # 2305 "parser_cocci_menhir.mly"
19924 ([])
19925 # 19899 "parser_cocci_menhir.ml"
19926 in
19927 _menhir_env.MenhirLib.EngineTypes.stack <- {
19928 MenhirLib.EngineTypes.state = _menhir_s;
19929 MenhirLib.EngineTypes.semv = Obj.repr _v;
19930 MenhirLib.EngineTypes.startp = _startpos;
19931 MenhirLib.EngineTypes.endp = _endpos;
19932 MenhirLib.EngineTypes.next = _menhir_stack;
19933 });
19934 (fun _menhir_env ->
19935 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19936 let {
19937 MenhirLib.EngineTypes.semv = _2;
19938 MenhirLib.EngineTypes.startp = _startpos__2_;
19939 MenhirLib.EngineTypes.endp = _endpos__2_;
19940 MenhirLib.EngineTypes.next = {
19941 MenhirLib.EngineTypes.state = _menhir_s;
19942 MenhirLib.EngineTypes.semv = _1;
19943 MenhirLib.EngineTypes.startp = _startpos__1_;
19944 MenhirLib.EngineTypes.endp = _endpos__1_;
19945 MenhirLib.EngineTypes.next = _menhir_stack;
19946 };
19947 } = _menhir_stack in
19948 let _2 : 'tv_nest_after_dots = Obj.magic _2 in
19949 let _1 : 'tv_stm_dots = Obj.magic _1 in
19950 let _startpos = _startpos__1_ in
19951 let _endpos = _endpos__2_ in
19952 let _v : 'tv_nest_after_stm =
19953 # 2306 "parser_cocci_menhir.mly"
19954 (_1::_2)
19955 # 19929 "parser_cocci_menhir.ml"
19956 in
19957 _menhir_env.MenhirLib.EngineTypes.stack <- {
19958 MenhirLib.EngineTypes.state = _menhir_s;
19959 MenhirLib.EngineTypes.semv = Obj.repr _v;
19960 MenhirLib.EngineTypes.startp = _startpos;
19961 MenhirLib.EngineTypes.endp = _endpos;
19962 MenhirLib.EngineTypes.next = _menhir_stack;
19963 });
19964 (fun _menhir_env ->
19965 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19966 let {
19967 MenhirLib.EngineTypes.semv = _2;
19968 MenhirLib.EngineTypes.startp = _startpos__2_;
19969 MenhirLib.EngineTypes.endp = _endpos__2_;
19970 MenhirLib.EngineTypes.next = {
19971 MenhirLib.EngineTypes.state = _menhir_s;
19972 MenhirLib.EngineTypes.semv = _1;
19973 MenhirLib.EngineTypes.startp = _startpos__1_;
19974 MenhirLib.EngineTypes.endp = _endpos__1_;
19975 MenhirLib.EngineTypes.next = _menhir_stack;
19976 };
19977 } = _menhir_stack in
19978 let _2 : 'tv_nest_after_stm = Obj.magic _2 in
19979 let _1 : 'tv_decl_statement = Obj.magic _1 in
19980 let _startpos = _startpos__1_ in
19981 let _endpos = _endpos__2_ in
19982 let _v : 'tv_nest_after_stm =
19983 # 2307 "parser_cocci_menhir.mly"
19984 (_1@_2)
19985 # 19959 "parser_cocci_menhir.ml"
19986 in
19987 _menhir_env.MenhirLib.EngineTypes.stack <- {
19988 MenhirLib.EngineTypes.state = _menhir_s;
19989 MenhirLib.EngineTypes.semv = Obj.repr _v;
19990 MenhirLib.EngineTypes.startp = _startpos;
19991 MenhirLib.EngineTypes.endp = _endpos;
19992 MenhirLib.EngineTypes.next = _menhir_stack;
19993 });
19994 (fun _menhir_env ->
19995 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
19996 let {
19997 MenhirLib.EngineTypes.semv = c;
19998 MenhirLib.EngineTypes.startp = _startpos_c_;
19999 MenhirLib.EngineTypes.endp = _endpos_c_;
20000 MenhirLib.EngineTypes.next = {
20001 MenhirLib.EngineTypes.semv = e;
20002 MenhirLib.EngineTypes.startp = _startpos_e_;
20003 MenhirLib.EngineTypes.endp = _endpos_e_;
20004 MenhirLib.EngineTypes.next = {
20005 MenhirLib.EngineTypes.state = _menhir_s;
20006 MenhirLib.EngineTypes.semv = _1;
20007 MenhirLib.EngineTypes.startp = _startpos__1_;
20008 MenhirLib.EngineTypes.endp = _endpos__1_;
20009 MenhirLib.EngineTypes.next = _menhir_stack;
20010 };
20011 };
20012 } = _menhir_stack in
20013 let c : (
20014 # 119 "parser_cocci_menhir.mly"
20015 (Data.clt)
20016 # 19990 "parser_cocci_menhir.ml"
20017 ) = Obj.magic c in
20018 let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
20019 let _1 : (
20020 # 119 "parser_cocci_menhir.mly"
20021 (Data.clt)
20022 # 19996 "parser_cocci_menhir.ml"
20023 ) = Obj.magic _1 in
20024 let _startpos = _startpos__1_ in
20025 let _endpos = _endpos_c_ in
20026 let _v : 'tv_nest_expressions =
20027 # 1487 "parser_cocci_menhir.mly"
20028 ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<..." _1,
20029 Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
20030 P.clt2mcode "...>" c, None, false)) )
20031 # 20005 "parser_cocci_menhir.ml"
20032 in
20033 _menhir_env.MenhirLib.EngineTypes.stack <- {
20034 MenhirLib.EngineTypes.state = _menhir_s;
20035 MenhirLib.EngineTypes.semv = Obj.repr _v;
20036 MenhirLib.EngineTypes.startp = _startpos;
20037 MenhirLib.EngineTypes.endp = _endpos;
20038 MenhirLib.EngineTypes.next = _menhir_stack;
20039 });
20040 (fun _menhir_env ->
20041 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20042 let {
20043 MenhirLib.EngineTypes.semv = c;
20044 MenhirLib.EngineTypes.startp = _startpos_c_;
20045 MenhirLib.EngineTypes.endp = _endpos_c_;
20046 MenhirLib.EngineTypes.next = {
20047 MenhirLib.EngineTypes.semv = e;
20048 MenhirLib.EngineTypes.startp = _startpos_e_;
20049 MenhirLib.EngineTypes.endp = _endpos_e_;
20050 MenhirLib.EngineTypes.next = {
20051 MenhirLib.EngineTypes.state = _menhir_s;
20052 MenhirLib.EngineTypes.semv = _1;
20053 MenhirLib.EngineTypes.startp = _startpos__1_;
20054 MenhirLib.EngineTypes.endp = _endpos__1_;
20055 MenhirLib.EngineTypes.next = _menhir_stack;
20056 };
20057 };
20058 } = _menhir_stack in
20059 let c : (
20060 # 119 "parser_cocci_menhir.mly"
20061 (Data.clt)
20062 # 20036 "parser_cocci_menhir.ml"
20063 ) = Obj.magic c in
20064 let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
20065 let _1 : (
20066 # 119 "parser_cocci_menhir.mly"
20067 (Data.clt)
20068 # 20042 "parser_cocci_menhir.ml"
20069 ) = Obj.magic _1 in
20070 let _startpos = _startpos__1_ in
20071 let _endpos = _endpos_c_ in
20072 let _v : 'tv_nest_expressions =
20073 # 1491 "parser_cocci_menhir.mly"
20074 ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<+..." _1,
20075 Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
20076 P.clt2mcode "...+>" c, None, true)) )
20077 # 20051 "parser_cocci_menhir.ml"
20078 in
20079 _menhir_env.MenhirLib.EngineTypes.stack <- {
20080 MenhirLib.EngineTypes.state = _menhir_s;
20081 MenhirLib.EngineTypes.semv = Obj.repr _v;
20082 MenhirLib.EngineTypes.startp = _startpos;
20083 MenhirLib.EngineTypes.endp = _endpos;
20084 MenhirLib.EngineTypes.next = _menhir_stack;
20085 });
20086 (fun _menhir_env ->
20087 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20088 let {
20089 MenhirLib.EngineTypes.state = _menhir_s;
20090 MenhirLib.EngineTypes.semv = _1;
20091 MenhirLib.EngineTypes.startp = _startpos__1_;
20092 MenhirLib.EngineTypes.endp = _endpos__1_;
20093 MenhirLib.EngineTypes.next = _menhir_stack;
20094 } = _menhir_stack in
20095 let _1 : (
20096 # 109 "parser_cocci_menhir.mly"
20097 (Parse_aux.info)
20098 # 20072 "parser_cocci_menhir.ml"
20099 ) = Obj.magic _1 in
20100 let _startpos = _startpos__1_ in
20101 let _endpos = _endpos__1_ in
20102 let _v : 'tv_nest_expressions =
20103 # 1494 "parser_cocci_menhir.mly"
20104 ( tmeta_to_exp _1 )
20105 # 20079 "parser_cocci_menhir.ml"
20106 in
20107 _menhir_env.MenhirLib.EngineTypes.stack <- {
20108 MenhirLib.EngineTypes.state = _menhir_s;
20109 MenhirLib.EngineTypes.semv = Obj.repr _v;
20110 MenhirLib.EngineTypes.startp = _startpos;
20111 MenhirLib.EngineTypes.endp = _endpos;
20112 MenhirLib.EngineTypes.next = _menhir_stack;
20113 });
20114 (fun _menhir_env ->
20115 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20116 let {
20117 MenhirLib.EngineTypes.semv = c;
20118 MenhirLib.EngineTypes.startp = _startpos_c_;
20119 MenhirLib.EngineTypes.endp = _endpos_c_;
20120 MenhirLib.EngineTypes.next = {
20121 MenhirLib.EngineTypes.semv = e;
20122 MenhirLib.EngineTypes.startp = _startpos_e_;
20123 MenhirLib.EngineTypes.endp = _endpos_e_;
20124 MenhirLib.EngineTypes.next = {
20125 MenhirLib.EngineTypes.state = _menhir_s;
20126 MenhirLib.EngineTypes.semv = _1;
20127 MenhirLib.EngineTypes.startp = _startpos__1_;
20128 MenhirLib.EngineTypes.endp = _endpos__1_;
20129 MenhirLib.EngineTypes.next = _menhir_stack;
20130 };
20131 };
20132 } = _menhir_stack in
20133 let c : (
20134 # 119 "parser_cocci_menhir.mly"
20135 (Data.clt)
20136 # 20110 "parser_cocci_menhir.ml"
20137 ) = Obj.magic c in
20138 let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
20139 let _1 : (
20140 # 119 "parser_cocci_menhir.mly"
20141 (Data.clt)
20142 # 20116 "parser_cocci_menhir.ml"
20143 ) = Obj.magic _1 in
20144 let _startpos = _startpos__1_ in
20145 let _endpos = _endpos_c_ in
20146 let _v : 'tv_nest_expressions_only =
20147 # 1498 "parser_cocci_menhir.mly"
20148 ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<..." _1,
20149 Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
20150 P.clt2mcode "...>" c, None, false)) )
20151 # 20125 "parser_cocci_menhir.ml"
20152 in
20153 _menhir_env.MenhirLib.EngineTypes.stack <- {
20154 MenhirLib.EngineTypes.state = _menhir_s;
20155 MenhirLib.EngineTypes.semv = Obj.repr _v;
20156 MenhirLib.EngineTypes.startp = _startpos;
20157 MenhirLib.EngineTypes.endp = _endpos;
20158 MenhirLib.EngineTypes.next = _menhir_stack;
20159 });
20160 (fun _menhir_env ->
20161 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20162 let {
20163 MenhirLib.EngineTypes.semv = c;
20164 MenhirLib.EngineTypes.startp = _startpos_c_;
20165 MenhirLib.EngineTypes.endp = _endpos_c_;
20166 MenhirLib.EngineTypes.next = {
20167 MenhirLib.EngineTypes.semv = e;
20168 MenhirLib.EngineTypes.startp = _startpos_e_;
20169 MenhirLib.EngineTypes.endp = _endpos_e_;
20170 MenhirLib.EngineTypes.next = {
20171 MenhirLib.EngineTypes.state = _menhir_s;
20172 MenhirLib.EngineTypes.semv = _1;
20173 MenhirLib.EngineTypes.startp = _startpos__1_;
20174 MenhirLib.EngineTypes.endp = _endpos__1_;
20175 MenhirLib.EngineTypes.next = _menhir_stack;
20176 };
20177 };
20178 } = _menhir_stack in
20179 let c : (
20180 # 119 "parser_cocci_menhir.mly"
20181 (Data.clt)
20182 # 20156 "parser_cocci_menhir.ml"
20183 ) = Obj.magic c in
20184 let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
20185 let _1 : (
20186 # 119 "parser_cocci_menhir.mly"
20187 (Data.clt)
20188 # 20162 "parser_cocci_menhir.ml"
20189 ) = Obj.magic _1 in
20190 let _startpos = _startpos__1_ in
20191 let _endpos = _endpos_c_ in
20192 let _v : 'tv_nest_expressions_only =
20193 # 1502 "parser_cocci_menhir.mly"
20194 ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<+..." _1,
20195 Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
20196 P.clt2mcode "...+>" c, None, true)) )
20197 # 20171 "parser_cocci_menhir.ml"
20198 in
20199 _menhir_env.MenhirLib.EngineTypes.stack <- {
20200 MenhirLib.EngineTypes.state = _menhir_s;
20201 MenhirLib.EngineTypes.semv = Obj.repr _v;
20202 MenhirLib.EngineTypes.startp = _startpos;
20203 MenhirLib.EngineTypes.endp = _endpos;
20204 MenhirLib.EngineTypes.next = _menhir_stack;
20205 });
20206 (fun _menhir_env ->
20207 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20208 let {
20209 MenhirLib.EngineTypes.state = _menhir_s;
20210 MenhirLib.EngineTypes.semv = _1;
20211 MenhirLib.EngineTypes.startp = _startpos__1_;
20212 MenhirLib.EngineTypes.endp = _endpos__1_;
20213 MenhirLib.EngineTypes.next = _menhir_stack;
20214 } = _menhir_stack in
20215 let _1 : 'tv_nest_after_dots = Obj.magic _1 in
20216 let _startpos = _startpos__1_ in
20217 let _endpos = _endpos__1_ in
20218 let _v : 'tv_nest_start =
20219 # 2297 "parser_cocci_menhir.mly"
20220 ( Ast0.wrap(Ast0.DOTS(_1)) )
20221 # 20195 "parser_cocci_menhir.ml"
20222 in
20223 _menhir_env.MenhirLib.EngineTypes.stack <- {
20224 MenhirLib.EngineTypes.state = _menhir_s;
20225 MenhirLib.EngineTypes.semv = Obj.repr _v;
20226 MenhirLib.EngineTypes.startp = _startpos;
20227 MenhirLib.EngineTypes.endp = _endpos;
20228 MenhirLib.EngineTypes.next = _menhir_stack;
20229 });
20230 (fun _menhir_env ->
20231 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20232 let {
20233 MenhirLib.EngineTypes.state = _menhir_s;
20234 MenhirLib.EngineTypes.startp = _startpos__1_;
20235 MenhirLib.EngineTypes.endp = _endpos__1_;
20236 MenhirLib.EngineTypes.next = _menhir_stack;
20237 } = _menhir_stack in
20238 let _startpos = _startpos__1_ in
20239 let _endpos = _endpos__1_ in
20240 let _v : (
20241 # 216 "parser_cocci_menhir.mly"
20242 (unit)
20243 # 20217 "parser_cocci_menhir.ml"
20244 ) =
20245 # 2425 "parser_cocci_menhir.mly"
20246 ( () )
20247 # 20221 "parser_cocci_menhir.ml"
20248 in
20249 _menhir_env.MenhirLib.EngineTypes.stack <- {
20250 MenhirLib.EngineTypes.state = _menhir_s;
20251 MenhirLib.EngineTypes.semv = Obj.repr _v;
20252 MenhirLib.EngineTypes.startp = _startpos;
20253 MenhirLib.EngineTypes.endp = _endpos;
20254 MenhirLib.EngineTypes.next = _menhir_stack;
20255 });
20256 (fun _menhir_env ->
20257 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20258 let {
20259 MenhirLib.EngineTypes.startp = _startpos__2_;
20260 MenhirLib.EngineTypes.endp = _endpos__2_;
20261 MenhirLib.EngineTypes.next = {
20262 MenhirLib.EngineTypes.state = _menhir_s;
20263 MenhirLib.EngineTypes.startp = _startpos__1_;
20264 MenhirLib.EngineTypes.endp = _endpos__1_;
20265 MenhirLib.EngineTypes.next = _menhir_stack;
20266 };
20267 } = _menhir_stack in
20268 let _startpos = _startpos__1_ in
20269 let _endpos = _endpos__2_ in
20270 let _v : (
20271 # 216 "parser_cocci_menhir.mly"
20272 (unit)
20273 # 20247 "parser_cocci_menhir.ml"
20274 ) =
20275 # 2426 "parser_cocci_menhir.mly"
20276 ( () )
20277 # 20251 "parser_cocci_menhir.ml"
20278 in
20279 _menhir_env.MenhirLib.EngineTypes.stack <- {
20280 MenhirLib.EngineTypes.state = _menhir_s;
20281 MenhirLib.EngineTypes.semv = Obj.repr _v;
20282 MenhirLib.EngineTypes.startp = _startpos;
20283 MenhirLib.EngineTypes.endp = _endpos;
20284 MenhirLib.EngineTypes.next = _menhir_stack;
20285 });
20286 (fun _menhir_env ->
20287 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20288 let {
20289 MenhirLib.EngineTypes.state = _menhir_s;
20290 MenhirLib.EngineTypes.startp = _startpos__1_;
20291 MenhirLib.EngineTypes.endp = _endpos__1_;
20292 MenhirLib.EngineTypes.next = _menhir_stack;
20293 } = _menhir_stack in
20294 let _startpos = _startpos__1_ in
20295 let _endpos = _endpos__1_ in
20296 let _v : (
20297 # 216 "parser_cocci_menhir.mly"
20298 (unit)
20299 # 20273 "parser_cocci_menhir.ml"
20300 ) =
20301 # 2427 "parser_cocci_menhir.mly"
20302 ( () )
20303 # 20277 "parser_cocci_menhir.ml"
20304 in
20305 _menhir_env.MenhirLib.EngineTypes.stack <- {
20306 MenhirLib.EngineTypes.state = _menhir_s;
20307 MenhirLib.EngineTypes.semv = Obj.repr _v;
20308 MenhirLib.EngineTypes.startp = _startpos;
20309 MenhirLib.EngineTypes.endp = _endpos;
20310 MenhirLib.EngineTypes.next = _menhir_stack;
20311 });
20312 (fun _menhir_env ->
20313 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20314 let {
20315 MenhirLib.EngineTypes.semv = dg;
20316 MenhirLib.EngineTypes.startp = _startpos_dg_;
20317 MenhirLib.EngineTypes.endp = _endpos_dg_;
20318 MenhirLib.EngineTypes.next = {
20319 MenhirLib.EngineTypes.state = _menhir_s;
20320 MenhirLib.EngineTypes.semv = g;
20321 MenhirLib.EngineTypes.startp = _startpos_g_;
20322 MenhirLib.EngineTypes.endp = _endpos_g_;
20323 MenhirLib.EngineTypes.next = _menhir_stack;
20324 };
20325 } = _menhir_stack in
20326 let dg : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = Obj.magic dg in
20327 let g : 'tv_dexpr = Obj.magic g in
20328 let _startpos = _startpos_g_ in
20329 let _endpos = _endpos_dg_ in
20330 let _v : 'tv_no_dot_start_end_dexpr_edots_when_TEllipsis_eexpr__ =
20331 # 1744 "parser_cocci_menhir.mly"
20332 ( function dot_builder ->
20333 g :: (List.concat(List.map (function (d,g) -> [dot_builder d;g]) dg)) )
20334 # 20308 "parser_cocci_menhir.ml"
20335 in
20336 _menhir_env.MenhirLib.EngineTypes.stack <- {
20337 MenhirLib.EngineTypes.state = _menhir_s;
20338 MenhirLib.EngineTypes.semv = Obj.repr _v;
20339 MenhirLib.EngineTypes.startp = _startpos;
20340 MenhirLib.EngineTypes.endp = _endpos;
20341 MenhirLib.EngineTypes.next = _menhir_stack;
20342 });
20343 (fun _menhir_env ->
20344 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20345 let {
20346 MenhirLib.EngineTypes.state = _menhir_s;
20347 MenhirLib.EngineTypes.semv = ty;
20348 MenhirLib.EngineTypes.startp = _startpos_ty_;
20349 MenhirLib.EngineTypes.endp = _endpos_ty_;
20350 MenhirLib.EngineTypes.next = _menhir_stack;
20351 } = _menhir_stack in
20352 let ty : (
20353 # 92 "parser_cocci_menhir.mly"
20354 (Data.clt)
20355 # 20329 "parser_cocci_menhir.ml"
20356 ) = Obj.magic ty in
20357 let _startpos = _startpos_ty_ in
20358 let _endpos = _endpos_ty_ in
20359 let _v : 'tv_non_signable_types =
20360 # 665 "parser_cocci_menhir.mly"
20361 ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) )
20362 # 20336 "parser_cocci_menhir.ml"
20363 in
20364 _menhir_env.MenhirLib.EngineTypes.stack <- {
20365 MenhirLib.EngineTypes.state = _menhir_s;
20366 MenhirLib.EngineTypes.semv = Obj.repr _v;
20367 MenhirLib.EngineTypes.startp = _startpos;
20368 MenhirLib.EngineTypes.endp = _endpos;
20369 MenhirLib.EngineTypes.next = _menhir_stack;
20370 });
20371 (fun _menhir_env ->
20372 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20373 let {
20374 MenhirLib.EngineTypes.semv = ty2;
20375 MenhirLib.EngineTypes.startp = _startpos_ty2_;
20376 MenhirLib.EngineTypes.endp = _endpos_ty2_;
20377 MenhirLib.EngineTypes.next = {
20378 MenhirLib.EngineTypes.state = _menhir_s;
20379 MenhirLib.EngineTypes.semv = ty1;
20380 MenhirLib.EngineTypes.startp = _startpos_ty1_;
20381 MenhirLib.EngineTypes.endp = _endpos_ty1_;
20382 MenhirLib.EngineTypes.next = _menhir_stack;
20383 };
20384 } = _menhir_stack in
20385 let ty2 : (
20386 # 90 "parser_cocci_menhir.mly"
20387 (Data.clt)
20388 # 20362 "parser_cocci_menhir.ml"
20389 ) = Obj.magic ty2 in
20390 let ty1 : (
20391 # 90 "parser_cocci_menhir.mly"
20392 (Data.clt)
20393 # 20367 "parser_cocci_menhir.ml"
20394 ) = Obj.magic ty1 in
20395 let _startpos = _startpos_ty1_ in
20396 let _endpos = _endpos_ty2_ in
20397 let _v : 'tv_non_signable_types =
20398 # 667 "parser_cocci_menhir.mly"
20399 ( Ast0.wrap
20400 (Ast0.BaseType
20401 (Ast.LongDoubleType,
20402 [P.clt2mcode "long" ty1;P.clt2mcode "double" ty2])) )
20403 # 20377 "parser_cocci_menhir.ml"
20404 in
20405 _menhir_env.MenhirLib.EngineTypes.stack <- {
20406 MenhirLib.EngineTypes.state = _menhir_s;
20407 MenhirLib.EngineTypes.semv = Obj.repr _v;
20408 MenhirLib.EngineTypes.startp = _startpos;
20409 MenhirLib.EngineTypes.endp = _endpos;
20410 MenhirLib.EngineTypes.next = _menhir_stack;
20411 });
20412 (fun _menhir_env ->
20413 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20414 let {
20415 MenhirLib.EngineTypes.state = _menhir_s;
20416 MenhirLib.EngineTypes.semv = ty;
20417 MenhirLib.EngineTypes.startp = _startpos_ty_;
20418 MenhirLib.EngineTypes.endp = _endpos_ty_;
20419 MenhirLib.EngineTypes.next = _menhir_stack;
20420 } = _menhir_stack in
20421 let ty : (
20422 # 90 "parser_cocci_menhir.mly"
20423 (Data.clt)
20424 # 20398 "parser_cocci_menhir.ml"
20425 ) = Obj.magic ty in
20426 let _startpos = _startpos_ty_ in
20427 let _endpos = _endpos_ty_ in
20428 let _v : 'tv_non_signable_types =
20429 # 672 "parser_cocci_menhir.mly"
20430 ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) )
20431 # 20405 "parser_cocci_menhir.ml"
20432 in
20433 _menhir_env.MenhirLib.EngineTypes.stack <- {
20434 MenhirLib.EngineTypes.state = _menhir_s;
20435 MenhirLib.EngineTypes.semv = Obj.repr _v;
20436 MenhirLib.EngineTypes.startp = _startpos;
20437 MenhirLib.EngineTypes.endp = _endpos;
20438 MenhirLib.EngineTypes.next = _menhir_stack;
20439 });
20440 (fun _menhir_env ->
20441 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20442 let {
20443 MenhirLib.EngineTypes.state = _menhir_s;
20444 MenhirLib.EngineTypes.semv = ty;
20445 MenhirLib.EngineTypes.startp = _startpos_ty_;
20446 MenhirLib.EngineTypes.endp = _endpos_ty_;
20447 MenhirLib.EngineTypes.next = _menhir_stack;
20448 } = _menhir_stack in
20449 let ty : (
20450 # 90 "parser_cocci_menhir.mly"
20451 (Data.clt)
20452 # 20426 "parser_cocci_menhir.ml"
20453 ) = Obj.magic ty in
20454 let _startpos = _startpos_ty_ in
20455 let _endpos = _endpos_ty_ in
20456 let _v : 'tv_non_signable_types =
20457 # 674 "parser_cocci_menhir.mly"
20458 ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) )
20459 # 20433 "parser_cocci_menhir.ml"
20460 in
20461 _menhir_env.MenhirLib.EngineTypes.stack <- {
20462 MenhirLib.EngineTypes.state = _menhir_s;
20463 MenhirLib.EngineTypes.semv = Obj.repr _v;
20464 MenhirLib.EngineTypes.startp = _startpos;
20465 MenhirLib.EngineTypes.endp = _endpos;
20466 MenhirLib.EngineTypes.next = _menhir_stack;
20467 });
20468 (fun _menhir_env ->
20469 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20470 let {
20471 MenhirLib.EngineTypes.state = _menhir_s;
20472 MenhirLib.EngineTypes.semv = ty;
20473 MenhirLib.EngineTypes.startp = _startpos_ty_;
20474 MenhirLib.EngineTypes.endp = _endpos_ty_;
20475 MenhirLib.EngineTypes.next = _menhir_stack;
20476 } = _menhir_stack in
20477 let ty : (
20478 # 91 "parser_cocci_menhir.mly"
20479 (Data.clt)
20480 # 20454 "parser_cocci_menhir.ml"
20481 ) = Obj.magic ty in
20482 let _startpos = _startpos_ty_ in
20483 let _endpos = _endpos_ty_ in
20484 let _v : 'tv_non_signable_types =
20485 # 676 "parser_cocci_menhir.mly"
20486 ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) )
20487 # 20461 "parser_cocci_menhir.ml"
20488 in
20489 _menhir_env.MenhirLib.EngineTypes.stack <- {
20490 MenhirLib.EngineTypes.state = _menhir_s;
20491 MenhirLib.EngineTypes.semv = Obj.repr _v;
20492 MenhirLib.EngineTypes.startp = _startpos;
20493 MenhirLib.EngineTypes.endp = _endpos;
20494 MenhirLib.EngineTypes.next = _menhir_stack;
20495 });
20496 (fun _menhir_env ->
20497 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20498 let {
20499 MenhirLib.EngineTypes.state = _menhir_s;
20500 MenhirLib.EngineTypes.semv = ty;
20501 MenhirLib.EngineTypes.startp = _startpos_ty_;
20502 MenhirLib.EngineTypes.endp = _endpos_ty_;
20503 MenhirLib.EngineTypes.next = _menhir_stack;
20504 } = _menhir_stack in
20505 let ty : (
20506 # 91 "parser_cocci_menhir.mly"
20507 (Data.clt)
20508 # 20482 "parser_cocci_menhir.ml"
20509 ) = Obj.magic ty in
20510 let _startpos = _startpos_ty_ in
20511 let _endpos = _endpos_ty_ in
20512 let _v : 'tv_non_signable_types =
20513 # 678 "parser_cocci_menhir.mly"
20514 ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) )
20515 # 20489 "parser_cocci_menhir.ml"
20516 in
20517 _menhir_env.MenhirLib.EngineTypes.stack <- {
20518 MenhirLib.EngineTypes.state = _menhir_s;
20519 MenhirLib.EngineTypes.semv = Obj.repr _v;
20520 MenhirLib.EngineTypes.startp = _startpos;
20521 MenhirLib.EngineTypes.endp = _endpos;
20522 MenhirLib.EngineTypes.next = _menhir_stack;
20523 });
20524 (fun _menhir_env ->
20525 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20526 let {
20527 MenhirLib.EngineTypes.state = _menhir_s;
20528 MenhirLib.EngineTypes.semv = ty;
20529 MenhirLib.EngineTypes.startp = _startpos_ty_;
20530 MenhirLib.EngineTypes.endp = _endpos_ty_;
20531 MenhirLib.EngineTypes.next = _menhir_stack;
20532 } = _menhir_stack in
20533 let ty : (
20534 # 91 "parser_cocci_menhir.mly"
20535 (Data.clt)
20536 # 20510 "parser_cocci_menhir.ml"
20537 ) = Obj.magic ty in
20538 let _startpos = _startpos_ty_ in
20539 let _endpos = _endpos_ty_ in
20540 let _v : 'tv_non_signable_types =
20541 # 680 "parser_cocci_menhir.mly"
20542 ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) )
20543 # 20517 "parser_cocci_menhir.ml"
20544 in
20545 _menhir_env.MenhirLib.EngineTypes.stack <- {
20546 MenhirLib.EngineTypes.state = _menhir_s;
20547 MenhirLib.EngineTypes.semv = Obj.repr _v;
20548 MenhirLib.EngineTypes.startp = _startpos;
20549 MenhirLib.EngineTypes.endp = _endpos;
20550 MenhirLib.EngineTypes.next = _menhir_stack;
20551 });
20552 (fun _menhir_env ->
20553 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20554 let {
20555 MenhirLib.EngineTypes.semv = i;
20556 MenhirLib.EngineTypes.startp = _startpos_i_;
20557 MenhirLib.EngineTypes.endp = _endpos_i_;
20558 MenhirLib.EngineTypes.next = {
20559 MenhirLib.EngineTypes.state = _menhir_s;
20560 MenhirLib.EngineTypes.semv = s;
20561 MenhirLib.EngineTypes.startp = _startpos_s_;
20562 MenhirLib.EngineTypes.endp = _endpos_s_;
20563 MenhirLib.EngineTypes.next = _menhir_stack;
20564 };
20565 } = _menhir_stack in
20566 let i : 'tv_ident = Obj.magic i in
20567 let s : (
20568 # 92 "parser_cocci_menhir.mly"
20569 (Data.clt)
20570 # 20544 "parser_cocci_menhir.ml"
20571 ) = Obj.magic s in
20572 let _startpos = _startpos_s_ in
20573 let _endpos = _endpos_i_ in
20574 let _v : 'tv_non_signable_types =
20575 # 682 "parser_cocci_menhir.mly"
20576 ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) )
20577 # 20551 "parser_cocci_menhir.ml"
20578 in
20579 _menhir_env.MenhirLib.EngineTypes.stack <- {
20580 MenhirLib.EngineTypes.state = _menhir_s;
20581 MenhirLib.EngineTypes.semv = Obj.repr _v;
20582 MenhirLib.EngineTypes.startp = _startpos;
20583 MenhirLib.EngineTypes.endp = _endpos;
20584 MenhirLib.EngineTypes.next = _menhir_stack;
20585 });
20586 (fun _menhir_env ->
20587 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20588 let {
20589 MenhirLib.EngineTypes.semv = r;
20590 MenhirLib.EngineTypes.startp = _startpos_r_;
20591 MenhirLib.EngineTypes.endp = _endpos_r_;
20592 MenhirLib.EngineTypes.next = {
20593 MenhirLib.EngineTypes.semv = ids;
20594 MenhirLib.EngineTypes.startp = _startpos_ids_;
20595 MenhirLib.EngineTypes.endp = _endpos_ids_;
20596 MenhirLib.EngineTypes.next = {
20597 MenhirLib.EngineTypes.semv = l;
20598 MenhirLib.EngineTypes.startp = _startpos_l_;
20599 MenhirLib.EngineTypes.endp = _endpos_l_;
20600 MenhirLib.EngineTypes.next = {
20601 MenhirLib.EngineTypes.state = _menhir_s;
20602 MenhirLib.EngineTypes.semv = s;
20603 MenhirLib.EngineTypes.startp = _startpos_s_;
20604 MenhirLib.EngineTypes.endp = _endpos_s_;
20605 MenhirLib.EngineTypes.next = _menhir_stack;
20606 };
20607 };
20608 };
20609 } = _menhir_stack in
20610 let r : (
20611 # 147 "parser_cocci_menhir.mly"
20612 (Data.clt)
20613 # 20587 "parser_cocci_menhir.ml"
20614 ) = Obj.magic r in
20615 let ids : 'tv_enum_decl_list = Obj.magic ids in
20616 let l : (
20617 # 147 "parser_cocci_menhir.mly"
20618 (Data.clt)
20619 # 20593 "parser_cocci_menhir.ml"
20620 ) = Obj.magic l in
20621 let s : (
20622 # 92 "parser_cocci_menhir.mly"
20623 (Data.clt)
20624 # 20598 "parser_cocci_menhir.ml"
20625 ) = Obj.magic s in
20626 let _startpos = _startpos_s_ in
20627 let _endpos = _endpos_r_ in
20628 let _v : 'tv_non_signable_types = let i =
20629
20630 # 39 "standard.mly"
20631 ( None )
20632 # 20606 "parser_cocci_menhir.ml"
20633
20634 in
20635
20636 # 684 "parser_cocci_menhir.mly"
20637 ( (if i = None && !Data.in_iso
20638 then failwith "enums must be named in the iso file");
20639 Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)),
20640 P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) )
20641 # 20615 "parser_cocci_menhir.ml"
20642 in
20643 _menhir_env.MenhirLib.EngineTypes.stack <- {
20644 MenhirLib.EngineTypes.state = _menhir_s;
20645 MenhirLib.EngineTypes.semv = Obj.repr _v;
20646 MenhirLib.EngineTypes.startp = _startpos;
20647 MenhirLib.EngineTypes.endp = _endpos;
20648 MenhirLib.EngineTypes.next = _menhir_stack;
20649 });
20650 (fun _menhir_env ->
20651 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20652 let {
20653 MenhirLib.EngineTypes.semv = r;
20654 MenhirLib.EngineTypes.startp = _startpos_r_;
20655 MenhirLib.EngineTypes.endp = _endpos_r_;
20656 MenhirLib.EngineTypes.next = {
20657 MenhirLib.EngineTypes.semv = ids;
20658 MenhirLib.EngineTypes.startp = _startpos_ids_;
20659 MenhirLib.EngineTypes.endp = _endpos_ids_;
20660 MenhirLib.EngineTypes.next = {
20661 MenhirLib.EngineTypes.semv = l;
20662 MenhirLib.EngineTypes.startp = _startpos_l_;
20663 MenhirLib.EngineTypes.endp = _endpos_l_;
20664 MenhirLib.EngineTypes.next = {
20665 MenhirLib.EngineTypes.semv = x0;
20666 MenhirLib.EngineTypes.startp = _startpos_x0_;
20667 MenhirLib.EngineTypes.endp = _endpos_x0_;
20668 MenhirLib.EngineTypes.next = {
20669 MenhirLib.EngineTypes.state = _menhir_s;
20670 MenhirLib.EngineTypes.semv = s;
20671 MenhirLib.EngineTypes.startp = _startpos_s_;
20672 MenhirLib.EngineTypes.endp = _endpos_s_;
20673 MenhirLib.EngineTypes.next = _menhir_stack;
20674 };
20675 };
20676 };
20677 };
20678 } = _menhir_stack in
20679 let r : (
20680 # 147 "parser_cocci_menhir.mly"
20681 (Data.clt)
20682 # 20656 "parser_cocci_menhir.ml"
20683 ) = Obj.magic r in
20684 let ids : 'tv_enum_decl_list = Obj.magic ids in
20685 let l : (
20686 # 147 "parser_cocci_menhir.mly"
20687 (Data.clt)
20688 # 20662 "parser_cocci_menhir.ml"
20689 ) = Obj.magic l in
20690 let x0 : 'tv_ident = Obj.magic x0 in
20691 let s : (
20692 # 92 "parser_cocci_menhir.mly"
20693 (Data.clt)
20694 # 20668 "parser_cocci_menhir.ml"
20695 ) = Obj.magic s in
20696 let _startpos = _startpos_s_ in
20697 let _endpos = _endpos_r_ in
20698 let _v : 'tv_non_signable_types = let i =
20699 let x = x0 in
20700
20701 # 41 "standard.mly"
20702 ( Some x )
20703 # 20677 "parser_cocci_menhir.ml"
20704
20705 in
20706
20707 # 684 "parser_cocci_menhir.mly"
20708 ( (if i = None && !Data.in_iso
20709 then failwith "enums must be named in the iso file");
20710 Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)),
20711 P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) )
20712 # 20686 "parser_cocci_menhir.ml"
20713 in
20714 _menhir_env.MenhirLib.EngineTypes.stack <- {
20715 MenhirLib.EngineTypes.state = _menhir_s;
20716 MenhirLib.EngineTypes.semv = Obj.repr _v;
20717 MenhirLib.EngineTypes.startp = _startpos;
20718 MenhirLib.EngineTypes.endp = _endpos;
20719 MenhirLib.EngineTypes.next = _menhir_stack;
20720 });
20721 (fun _menhir_env ->
20722 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20723 let {
20724 MenhirLib.EngineTypes.semv = i;
20725 MenhirLib.EngineTypes.startp = _startpos_i_;
20726 MenhirLib.EngineTypes.endp = _endpos_i_;
20727 MenhirLib.EngineTypes.next = {
20728 MenhirLib.EngineTypes.state = _menhir_s;
20729 MenhirLib.EngineTypes.semv = s;
20730 MenhirLib.EngineTypes.startp = _startpos_s_;
20731 MenhirLib.EngineTypes.endp = _endpos_s_;
20732 MenhirLib.EngineTypes.next = _menhir_stack;
20733 };
20734 } = _menhir_stack in
20735 let i : 'tv_type_ident = Obj.magic i in
20736 let s : 'tv_struct_or_union = Obj.magic s in
20737 let _startpos = _startpos_s_ in
20738 let _endpos = _endpos_i_ in
20739 let _v : 'tv_non_signable_types =
20740 # 689 "parser_cocci_menhir.mly"
20741 ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
20742 # 20716 "parser_cocci_menhir.ml"
20743 in
20744 _menhir_env.MenhirLib.EngineTypes.stack <- {
20745 MenhirLib.EngineTypes.state = _menhir_s;
20746 MenhirLib.EngineTypes.semv = Obj.repr _v;
20747 MenhirLib.EngineTypes.startp = _startpos;
20748 MenhirLib.EngineTypes.endp = _endpos;
20749 MenhirLib.EngineTypes.next = _menhir_stack;
20750 });
20751 (fun _menhir_env ->
20752 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20753 let {
20754 MenhirLib.EngineTypes.semv = r;
20755 MenhirLib.EngineTypes.startp = _startpos_r_;
20756 MenhirLib.EngineTypes.endp = _endpos_r_;
20757 MenhirLib.EngineTypes.next = {
20758 MenhirLib.EngineTypes.semv = d;
20759 MenhirLib.EngineTypes.startp = _startpos_d_;
20760 MenhirLib.EngineTypes.endp = _endpos_d_;
20761 MenhirLib.EngineTypes.next = {
20762 MenhirLib.EngineTypes.semv = l;
20763 MenhirLib.EngineTypes.startp = _startpos_l_;
20764 MenhirLib.EngineTypes.endp = _endpos_l_;
20765 MenhirLib.EngineTypes.next = {
20766 MenhirLib.EngineTypes.state = _menhir_s;
20767 MenhirLib.EngineTypes.semv = s;
20768 MenhirLib.EngineTypes.startp = _startpos_s_;
20769 MenhirLib.EngineTypes.endp = _endpos_s_;
20770 MenhirLib.EngineTypes.next = _menhir_stack;
20771 };
20772 };
20773 };
20774 } = _menhir_stack in
20775 let r : (
20776 # 147 "parser_cocci_menhir.mly"
20777 (Data.clt)
20778 # 20752 "parser_cocci_menhir.ml"
20779 ) = Obj.magic r in
20780 let d : 'tv_struct_decl_list = Obj.magic d in
20781 let l : (
20782 # 147 "parser_cocci_menhir.mly"
20783 (Data.clt)
20784 # 20758 "parser_cocci_menhir.ml"
20785 ) = Obj.magic l in
20786 let s : 'tv_struct_or_union = Obj.magic s in
20787 let _startpos = _startpos_s_ in
20788 let _endpos = _endpos_r_ in
20789 let _v : 'tv_non_signable_types = let i =
20790
20791 # 39 "standard.mly"
20792 ( None )
20793 # 20767 "parser_cocci_menhir.ml"
20794
20795 in
20796
20797 # 692 "parser_cocci_menhir.mly"
20798 ( (if i = None && !Data.in_iso
20799 then failwith "structures must be named in the iso file");
20800 Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
20801 P.clt2mcode "{" l,
20802 d, P.clt2mcode "}" r)) )
20803 # 20777 "parser_cocci_menhir.ml"
20804 in
20805 _menhir_env.MenhirLib.EngineTypes.stack <- {
20806 MenhirLib.EngineTypes.state = _menhir_s;
20807 MenhirLib.EngineTypes.semv = Obj.repr _v;
20808 MenhirLib.EngineTypes.startp = _startpos;
20809 MenhirLib.EngineTypes.endp = _endpos;
20810 MenhirLib.EngineTypes.next = _menhir_stack;
20811 });
20812 (fun _menhir_env ->
20813 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20814 let {
20815 MenhirLib.EngineTypes.semv = r;
20816 MenhirLib.EngineTypes.startp = _startpos_r_;
20817 MenhirLib.EngineTypes.endp = _endpos_r_;
20818 MenhirLib.EngineTypes.next = {
20819 MenhirLib.EngineTypes.semv = d;
20820 MenhirLib.EngineTypes.startp = _startpos_d_;
20821 MenhirLib.EngineTypes.endp = _endpos_d_;
20822 MenhirLib.EngineTypes.next = {
20823 MenhirLib.EngineTypes.semv = l;
20824 MenhirLib.EngineTypes.startp = _startpos_l_;
20825 MenhirLib.EngineTypes.endp = _endpos_l_;
20826 MenhirLib.EngineTypes.next = {
20827 MenhirLib.EngineTypes.semv = x0;
20828 MenhirLib.EngineTypes.startp = _startpos_x0_;
20829 MenhirLib.EngineTypes.endp = _endpos_x0_;
20830 MenhirLib.EngineTypes.next = {
20831 MenhirLib.EngineTypes.state = _menhir_s;
20832 MenhirLib.EngineTypes.semv = s;
20833 MenhirLib.EngineTypes.startp = _startpos_s_;
20834 MenhirLib.EngineTypes.endp = _endpos_s_;
20835 MenhirLib.EngineTypes.next = _menhir_stack;
20836 };
20837 };
20838 };
20839 };
20840 } = _menhir_stack in
20841 let r : (
20842 # 147 "parser_cocci_menhir.mly"
20843 (Data.clt)
20844 # 20818 "parser_cocci_menhir.ml"
20845 ) = Obj.magic r in
20846 let d : 'tv_struct_decl_list = Obj.magic d in
20847 let l : (
20848 # 147 "parser_cocci_menhir.mly"
20849 (Data.clt)
20850 # 20824 "parser_cocci_menhir.ml"
20851 ) = Obj.magic l in
20852 let x0 : 'tv_type_ident = Obj.magic x0 in
20853 let s : 'tv_struct_or_union = Obj.magic s in
20854 let _startpos = _startpos_s_ in
20855 let _endpos = _endpos_r_ in
20856 let _v : 'tv_non_signable_types = let i =
20857 let x = x0 in
20858
20859 # 41 "standard.mly"
20860 ( Some x )
20861 # 20835 "parser_cocci_menhir.ml"
20862
20863 in
20864
20865 # 692 "parser_cocci_menhir.mly"
20866 ( (if i = None && !Data.in_iso
20867 then failwith "structures must be named in the iso file");
20868 Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
20869 P.clt2mcode "{" l,
20870 d, P.clt2mcode "}" r)) )
20871 # 20845 "parser_cocci_menhir.ml"
20872 in
20873 _menhir_env.MenhirLib.EngineTypes.stack <- {
20874 MenhirLib.EngineTypes.state = _menhir_s;
20875 MenhirLib.EngineTypes.semv = Obj.repr _v;
20876 MenhirLib.EngineTypes.startp = _startpos;
20877 MenhirLib.EngineTypes.endp = _endpos;
20878 MenhirLib.EngineTypes.next = _menhir_stack;
20879 });
20880 (fun _menhir_env ->
20881 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20882 let {
20883 MenhirLib.EngineTypes.semv = r;
20884 MenhirLib.EngineTypes.startp = _startpos_r_;
20885 MenhirLib.EngineTypes.endp = _endpos_r_;
20886 MenhirLib.EngineTypes.next = {
20887 MenhirLib.EngineTypes.semv = d;
20888 MenhirLib.EngineTypes.startp = _startpos_d_;
20889 MenhirLib.EngineTypes.endp = _endpos_d_;
20890 MenhirLib.EngineTypes.next = {
20891 MenhirLib.EngineTypes.semv = l;
20892 MenhirLib.EngineTypes.startp = _startpos_l_;
20893 MenhirLib.EngineTypes.endp = _endpos_l_;
20894 MenhirLib.EngineTypes.next = {
20895 MenhirLib.EngineTypes.state = _menhir_s;
20896 MenhirLib.EngineTypes.semv = s;
20897 MenhirLib.EngineTypes.startp = _startpos_s_;
20898 MenhirLib.EngineTypes.endp = _endpos_s_;
20899 MenhirLib.EngineTypes.next = _menhir_stack;
20900 };
20901 };
20902 };
20903 } = _menhir_stack in
20904 let r : (
20905 # 147 "parser_cocci_menhir.mly"
20906 (Data.clt)
20907 # 20881 "parser_cocci_menhir.ml"
20908 ) = Obj.magic r in
20909 let d : 'tv_struct_decl_list = Obj.magic d in
20910 let l : (
20911 # 147 "parser_cocci_menhir.mly"
20912 (Data.clt)
20913 # 20887 "parser_cocci_menhir.ml"
20914 ) = Obj.magic l in
20915 let s : (
20916 # 108 "parser_cocci_menhir.mly"
20917 (Parse_aux.info)
20918 # 20892 "parser_cocci_menhir.ml"
20919 ) = Obj.magic s in
20920 let _startpos = _startpos_s_ in
20921 let _endpos = _endpos_r_ in
20922 let _v : 'tv_non_signable_types =
20923 # 698 "parser_cocci_menhir.mly"
20924 ( let (nm,pure,clt) = s in
20925 let ty = Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
20926 Ast0.wrap(Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
20927 # 20901 "parser_cocci_menhir.ml"
20928 in
20929 _menhir_env.MenhirLib.EngineTypes.stack <- {
20930 MenhirLib.EngineTypes.state = _menhir_s;
20931 MenhirLib.EngineTypes.semv = Obj.repr _v;
20932 MenhirLib.EngineTypes.startp = _startpos;
20933 MenhirLib.EngineTypes.endp = _endpos;
20934 MenhirLib.EngineTypes.next = _menhir_stack;
20935 });
20936 (fun _menhir_env ->
20937 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20938 let {
20939 MenhirLib.EngineTypes.state = _menhir_s;
20940 MenhirLib.EngineTypes.semv = p;
20941 MenhirLib.EngineTypes.startp = _startpos_p_;
20942 MenhirLib.EngineTypes.endp = _endpos_p_;
20943 MenhirLib.EngineTypes.next = _menhir_stack;
20944 } = _menhir_stack in
20945 let p : (
20946 # 101 "parser_cocci_menhir.mly"
20947 (string * Data.clt)
20948 # 20922 "parser_cocci_menhir.ml"
20949 ) = Obj.magic p in
20950 let _startpos = _startpos_p_ in
20951 let _endpos = _endpos_p_ in
20952 let _v : 'tv_non_signable_types =
20953 # 702 "parser_cocci_menhir.mly"
20954 ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
20955 # 20929 "parser_cocci_menhir.ml"
20956 in
20957 _menhir_env.MenhirLib.EngineTypes.stack <- {
20958 MenhirLib.EngineTypes.state = _menhir_s;
20959 MenhirLib.EngineTypes.semv = Obj.repr _v;
20960 MenhirLib.EngineTypes.startp = _startpos;
20961 MenhirLib.EngineTypes.endp = _endpos;
20962 MenhirLib.EngineTypes.next = _menhir_stack;
20963 });
20964 (fun _menhir_env ->
20965 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20966 let {
20967 MenhirLib.EngineTypes.state = _menhir_s;
20968 MenhirLib.EngineTypes.semv = x;
20969 MenhirLib.EngineTypes.startp = _startpos_x_;
20970 MenhirLib.EngineTypes.endp = _endpos_x_;
20971 MenhirLib.EngineTypes.next = _menhir_stack;
20972 } = _menhir_stack in
20973 let x : (
20974 # 145 "parser_cocci_menhir.mly"
20975 (Data.clt)
20976 # 20950 "parser_cocci_menhir.ml"
20977 ) = Obj.magic x in
20978 let _startpos = _startpos_x_ in
20979 let _endpos = _endpos_x_ in
20980 let _v : 'tv_nonempty_list_TMul_ =
20981 # 124 "standard.mly"
20982 ( [ x ] )
20983 # 20957 "parser_cocci_menhir.ml"
20984 in
20985 _menhir_env.MenhirLib.EngineTypes.stack <- {
20986 MenhirLib.EngineTypes.state = _menhir_s;
20987 MenhirLib.EngineTypes.semv = Obj.repr _v;
20988 MenhirLib.EngineTypes.startp = _startpos;
20989 MenhirLib.EngineTypes.endp = _endpos;
20990 MenhirLib.EngineTypes.next = _menhir_stack;
20991 });
20992 (fun _menhir_env ->
20993 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
20994 let {
20995 MenhirLib.EngineTypes.semv = xs;
20996 MenhirLib.EngineTypes.startp = _startpos_xs_;
20997 MenhirLib.EngineTypes.endp = _endpos_xs_;
20998 MenhirLib.EngineTypes.next = {
20999 MenhirLib.EngineTypes.state = _menhir_s;
21000 MenhirLib.EngineTypes.semv = x;
21001 MenhirLib.EngineTypes.startp = _startpos_x_;
21002 MenhirLib.EngineTypes.endp = _endpos_x_;
21003 MenhirLib.EngineTypes.next = _menhir_stack;
21004 };
21005 } = _menhir_stack in
21006 let xs : 'tv_nonempty_list_TMul_ = Obj.magic xs in
21007 let x : (
21008 # 145 "parser_cocci_menhir.mly"
21009 (Data.clt)
21010 # 20984 "parser_cocci_menhir.ml"
21011 ) = Obj.magic x in
21012 let _startpos = _startpos_x_ in
21013 let _endpos = _endpos_xs_ in
21014 let _v : 'tv_nonempty_list_TMul_ =
21015 # 126 "standard.mly"
21016 ( x :: xs )
21017 # 20991 "parser_cocci_menhir.ml"
21018 in
21019 _menhir_env.MenhirLib.EngineTypes.stack <- {
21020 MenhirLib.EngineTypes.state = _menhir_s;
21021 MenhirLib.EngineTypes.semv = Obj.repr _v;
21022 MenhirLib.EngineTypes.startp = _startpos;
21023 MenhirLib.EngineTypes.endp = _endpos;
21024 MenhirLib.EngineTypes.next = _menhir_stack;
21025 });
21026 (fun _menhir_env ->
21027 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21028 let {
21029 MenhirLib.EngineTypes.state = _menhir_s;
21030 MenhirLib.EngineTypes.semv = _1;
21031 MenhirLib.EngineTypes.startp = _startpos__1_;
21032 MenhirLib.EngineTypes.endp = _endpos__1_;
21033 MenhirLib.EngineTypes.next = _menhir_stack;
21034 } = _menhir_stack in
21035 let _1 : 'tv_aexpr = Obj.magic _1 in
21036 let _startpos = _startpos__1_ in
21037 let _endpos = _endpos__1_ in
21038 let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
21039 # 2107 "parser_cocci_menhir.mly"
21040 ( fun build_dots build_comma -> [_1] )
21041 # 21015 "parser_cocci_menhir.ml"
21042 in
21043 _menhir_env.MenhirLib.EngineTypes.stack <- {
21044 MenhirLib.EngineTypes.state = _menhir_s;
21045 MenhirLib.EngineTypes.semv = Obj.repr _v;
21046 MenhirLib.EngineTypes.startp = _startpos;
21047 MenhirLib.EngineTypes.endp = _endpos;
21048 MenhirLib.EngineTypes.next = _menhir_stack;
21049 });
21050 (fun _menhir_env ->
21051 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21052 let {
21053 MenhirLib.EngineTypes.semv = _2;
21054 MenhirLib.EngineTypes.startp = _startpos__2_;
21055 MenhirLib.EngineTypes.endp = _endpos__2_;
21056 MenhirLib.EngineTypes.next = {
21057 MenhirLib.EngineTypes.state = _menhir_s;
21058 MenhirLib.EngineTypes.semv = _1;
21059 MenhirLib.EngineTypes.startp = _startpos__1_;
21060 MenhirLib.EngineTypes.endp = _endpos__1_;
21061 MenhirLib.EngineTypes.next = _menhir_stack;
21062 };
21063 } = _menhir_stack in
21064 let _2 : (
21065 # 153 "parser_cocci_menhir.mly"
21066 (Data.clt)
21067 # 21041 "parser_cocci_menhir.ml"
21068 ) = Obj.magic _2 in
21069 let _1 : 'tv_aexpr = Obj.magic _1 in
21070 let _startpos = _startpos__1_ in
21071 let _endpos = _endpos__2_ in
21072 let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
21073 # 2109 "parser_cocci_menhir.mly"
21074 ( fun build_dots build_comma ->
21075 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
21076 # 21050 "parser_cocci_menhir.ml"
21077 in
21078 _menhir_env.MenhirLib.EngineTypes.stack <- {
21079 MenhirLib.EngineTypes.state = _menhir_s;
21080 MenhirLib.EngineTypes.semv = Obj.repr _v;
21081 MenhirLib.EngineTypes.startp = _startpos;
21082 MenhirLib.EngineTypes.endp = _endpos;
21083 MenhirLib.EngineTypes.next = _menhir_stack;
21084 });
21085 (fun _menhir_env ->
21086 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21087 let {
21088 MenhirLib.EngineTypes.semv = _3;
21089 MenhirLib.EngineTypes.startp = _startpos__3_;
21090 MenhirLib.EngineTypes.endp = _endpos__3_;
21091 MenhirLib.EngineTypes.next = {
21092 MenhirLib.EngineTypes.semv = _2;
21093 MenhirLib.EngineTypes.startp = _startpos__2_;
21094 MenhirLib.EngineTypes.endp = _endpos__2_;
21095 MenhirLib.EngineTypes.next = {
21096 MenhirLib.EngineTypes.state = _menhir_s;
21097 MenhirLib.EngineTypes.semv = _1;
21098 MenhirLib.EngineTypes.startp = _startpos__1_;
21099 MenhirLib.EngineTypes.endp = _endpos__1_;
21100 MenhirLib.EngineTypes.next = _menhir_stack;
21101 };
21102 };
21103 } = _menhir_stack in
21104 let _3 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _3 in
21105 let _2 : (
21106 # 153 "parser_cocci_menhir.mly"
21107 (Data.clt)
21108 # 21082 "parser_cocci_menhir.ml"
21109 ) = Obj.magic _2 in
21110 let _1 : 'tv_aexpr = Obj.magic _1 in
21111 let _startpos = _startpos__1_ in
21112 let _endpos = _endpos__3_ in
21113 let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
21114 # 2112 "parser_cocci_menhir.mly"
21115 ( fun build_dots build_comma ->
21116 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
21117 (_3 build_dots build_comma) )
21118 # 21092 "parser_cocci_menhir.ml"
21119 in
21120 _menhir_env.MenhirLib.EngineTypes.stack <- {
21121 MenhirLib.EngineTypes.state = _menhir_s;
21122 MenhirLib.EngineTypes.semv = Obj.repr _v;
21123 MenhirLib.EngineTypes.startp = _startpos;
21124 MenhirLib.EngineTypes.endp = _endpos;
21125 MenhirLib.EngineTypes.next = _menhir_stack;
21126 });
21127 (fun _menhir_env ->
21128 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21129 let {
21130 MenhirLib.EngineTypes.semv = _2;
21131 MenhirLib.EngineTypes.startp = _startpos__2_;
21132 MenhirLib.EngineTypes.endp = _endpos__2_;
21133 MenhirLib.EngineTypes.next = {
21134 MenhirLib.EngineTypes.state = _menhir_s;
21135 MenhirLib.EngineTypes.startp = _startpos__1_;
21136 MenhirLib.EngineTypes.endp = _endpos__1_;
21137 MenhirLib.EngineTypes.next = _menhir_stack;
21138 };
21139 } = _menhir_stack in
21140 let _2 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _2 in
21141 let _startpos = _startpos__1_ in
21142 let _endpos = _endpos__2_ in
21143 let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
21144 # 2115 "parser_cocci_menhir.mly"
21145 ( _2 )
21146 # 21120 "parser_cocci_menhir.ml"
21147 in
21148 _menhir_env.MenhirLib.EngineTypes.stack <- {
21149 MenhirLib.EngineTypes.state = _menhir_s;
21150 MenhirLib.EngineTypes.semv = Obj.repr _v;
21151 MenhirLib.EngineTypes.startp = _startpos;
21152 MenhirLib.EngineTypes.endp = _endpos;
21153 MenhirLib.EngineTypes.next = _menhir_stack;
21154 });
21155 (fun _menhir_env ->
21156 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21157 let {
21158 MenhirLib.EngineTypes.state = _menhir_s;
21159 MenhirLib.EngineTypes.semv = d;
21160 MenhirLib.EngineTypes.startp = _startpos_d_;
21161 MenhirLib.EngineTypes.endp = _endpos_d_;
21162 MenhirLib.EngineTypes.next = _menhir_stack;
21163 } = _menhir_stack in
21164 let d : (
21165 # 119 "parser_cocci_menhir.mly"
21166 (Data.clt)
21167 # 21141 "parser_cocci_menhir.ml"
21168 ) = Obj.magic d in
21169 let _startpos = _startpos_d_ in
21170 let _endpos = _endpos_d_ in
21171 let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
21172 # 2116 "parser_cocci_menhir.mly"
21173 ( fun build_dots build_comma -> [(build_dots "..." d)] )
21174 # 21148 "parser_cocci_menhir.ml"
21175 in
21176 _menhir_env.MenhirLib.EngineTypes.stack <- {
21177 MenhirLib.EngineTypes.state = _menhir_s;
21178 MenhirLib.EngineTypes.semv = Obj.repr _v;
21179 MenhirLib.EngineTypes.startp = _startpos;
21180 MenhirLib.EngineTypes.endp = _endpos;
21181 MenhirLib.EngineTypes.next = _menhir_stack;
21182 });
21183 (fun _menhir_env ->
21184 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21185 let {
21186 MenhirLib.EngineTypes.semv = _2;
21187 MenhirLib.EngineTypes.startp = _startpos__2_;
21188 MenhirLib.EngineTypes.endp = _endpos__2_;
21189 MenhirLib.EngineTypes.next = {
21190 MenhirLib.EngineTypes.state = _menhir_s;
21191 MenhirLib.EngineTypes.semv = d;
21192 MenhirLib.EngineTypes.startp = _startpos_d_;
21193 MenhirLib.EngineTypes.endp = _endpos_d_;
21194 MenhirLib.EngineTypes.next = _menhir_stack;
21195 };
21196 } = _menhir_stack in
21197 let _2 : (
21198 # 153 "parser_cocci_menhir.mly"
21199 (Data.clt)
21200 # 21174 "parser_cocci_menhir.ml"
21201 ) = Obj.magic _2 in
21202 let d : (
21203 # 119 "parser_cocci_menhir.mly"
21204 (Data.clt)
21205 # 21179 "parser_cocci_menhir.ml"
21206 ) = Obj.magic d in
21207 let _startpos = _startpos_d_ in
21208 let _endpos = _endpos__2_ in
21209 let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
21210 # 2118 "parser_cocci_menhir.mly"
21211 ( fun build_dots build_comma ->
21212 [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
21213 # 21187 "parser_cocci_menhir.ml"
21214 in
21215 _menhir_env.MenhirLib.EngineTypes.stack <- {
21216 MenhirLib.EngineTypes.state = _menhir_s;
21217 MenhirLib.EngineTypes.semv = Obj.repr _v;
21218 MenhirLib.EngineTypes.startp = _startpos;
21219 MenhirLib.EngineTypes.endp = _endpos;
21220 MenhirLib.EngineTypes.next = _menhir_stack;
21221 });
21222 (fun _menhir_env ->
21223 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21224 let {
21225 MenhirLib.EngineTypes.semv = r;
21226 MenhirLib.EngineTypes.startp = _startpos_r_;
21227 MenhirLib.EngineTypes.endp = _endpos_r_;
21228 MenhirLib.EngineTypes.next = {
21229 MenhirLib.EngineTypes.semv = _2;
21230 MenhirLib.EngineTypes.startp = _startpos__2_;
21231 MenhirLib.EngineTypes.endp = _endpos__2_;
21232 MenhirLib.EngineTypes.next = {
21233 MenhirLib.EngineTypes.state = _menhir_s;
21234 MenhirLib.EngineTypes.semv = d;
21235 MenhirLib.EngineTypes.startp = _startpos_d_;
21236 MenhirLib.EngineTypes.endp = _endpos_d_;
21237 MenhirLib.EngineTypes.next = _menhir_stack;
21238 };
21239 };
21240 } = _menhir_stack in
21241 let r : 'tv_continue_list_aexpr_TEllipsis_ = Obj.magic r in
21242 let _2 : (
21243 # 153 "parser_cocci_menhir.mly"
21244 (Data.clt)
21245 # 21219 "parser_cocci_menhir.ml"
21246 ) = Obj.magic _2 in
21247 let d : (
21248 # 119 "parser_cocci_menhir.mly"
21249 (Data.clt)
21250 # 21224 "parser_cocci_menhir.ml"
21251 ) = Obj.magic d in
21252 let _startpos = _startpos_d_ in
21253 let _endpos = _endpos_r_ in
21254 let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
21255 # 2121 "parser_cocci_menhir.mly"
21256 ( fun build_dots build_comma ->
21257 (build_dots "..." d)::
21258 (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
21259 (r build_dots build_comma) )
21260 # 21234 "parser_cocci_menhir.ml"
21261 in
21262 _menhir_env.MenhirLib.EngineTypes.stack <- {
21263 MenhirLib.EngineTypes.state = _menhir_s;
21264 MenhirLib.EngineTypes.semv = Obj.repr _v;
21265 MenhirLib.EngineTypes.startp = _startpos;
21266 MenhirLib.EngineTypes.endp = _endpos;
21267 MenhirLib.EngineTypes.next = _menhir_stack;
21268 });
21269 (fun _menhir_env ->
21270 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21271 let {
21272 MenhirLib.EngineTypes.state = _menhir_s;
21273 MenhirLib.EngineTypes.semv = _1;
21274 MenhirLib.EngineTypes.startp = _startpos__1_;
21275 MenhirLib.EngineTypes.endp = _endpos__1_;
21276 MenhirLib.EngineTypes.next = _menhir_stack;
21277 } = _menhir_stack in
21278 let _1 : 'tv_dparam = Obj.magic _1 in
21279 let _startpos = _startpos__1_ in
21280 let _endpos = _endpos__1_ in
21281 let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
21282 # 2107 "parser_cocci_menhir.mly"
21283 ( fun build_dots build_comma -> [_1] )
21284 # 21258 "parser_cocci_menhir.ml"
21285 in
21286 _menhir_env.MenhirLib.EngineTypes.stack <- {
21287 MenhirLib.EngineTypes.state = _menhir_s;
21288 MenhirLib.EngineTypes.semv = Obj.repr _v;
21289 MenhirLib.EngineTypes.startp = _startpos;
21290 MenhirLib.EngineTypes.endp = _endpos;
21291 MenhirLib.EngineTypes.next = _menhir_stack;
21292 });
21293 (fun _menhir_env ->
21294 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21295 let {
21296 MenhirLib.EngineTypes.semv = _2;
21297 MenhirLib.EngineTypes.startp = _startpos__2_;
21298 MenhirLib.EngineTypes.endp = _endpos__2_;
21299 MenhirLib.EngineTypes.next = {
21300 MenhirLib.EngineTypes.state = _menhir_s;
21301 MenhirLib.EngineTypes.semv = _1;
21302 MenhirLib.EngineTypes.startp = _startpos__1_;
21303 MenhirLib.EngineTypes.endp = _endpos__1_;
21304 MenhirLib.EngineTypes.next = _menhir_stack;
21305 };
21306 } = _menhir_stack in
21307 let _2 : (
21308 # 153 "parser_cocci_menhir.mly"
21309 (Data.clt)
21310 # 21284 "parser_cocci_menhir.ml"
21311 ) = Obj.magic _2 in
21312 let _1 : 'tv_dparam = Obj.magic _1 in
21313 let _startpos = _startpos__1_ in
21314 let _endpos = _endpos__2_ in
21315 let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
21316 # 2109 "parser_cocci_menhir.mly"
21317 ( fun build_dots build_comma ->
21318 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
21319 # 21293 "parser_cocci_menhir.ml"
21320 in
21321 _menhir_env.MenhirLib.EngineTypes.stack <- {
21322 MenhirLib.EngineTypes.state = _menhir_s;
21323 MenhirLib.EngineTypes.semv = Obj.repr _v;
21324 MenhirLib.EngineTypes.startp = _startpos;
21325 MenhirLib.EngineTypes.endp = _endpos;
21326 MenhirLib.EngineTypes.next = _menhir_stack;
21327 });
21328 (fun _menhir_env ->
21329 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21330 let {
21331 MenhirLib.EngineTypes.semv = _3;
21332 MenhirLib.EngineTypes.startp = _startpos__3_;
21333 MenhirLib.EngineTypes.endp = _endpos__3_;
21334 MenhirLib.EngineTypes.next = {
21335 MenhirLib.EngineTypes.semv = _2;
21336 MenhirLib.EngineTypes.startp = _startpos__2_;
21337 MenhirLib.EngineTypes.endp = _endpos__2_;
21338 MenhirLib.EngineTypes.next = {
21339 MenhirLib.EngineTypes.state = _menhir_s;
21340 MenhirLib.EngineTypes.semv = _1;
21341 MenhirLib.EngineTypes.startp = _startpos__1_;
21342 MenhirLib.EngineTypes.endp = _endpos__1_;
21343 MenhirLib.EngineTypes.next = _menhir_stack;
21344 };
21345 };
21346 } = _menhir_stack in
21347 let _3 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _3 in
21348 let _2 : (
21349 # 153 "parser_cocci_menhir.mly"
21350 (Data.clt)
21351 # 21325 "parser_cocci_menhir.ml"
21352 ) = Obj.magic _2 in
21353 let _1 : 'tv_dparam = Obj.magic _1 in
21354 let _startpos = _startpos__1_ in
21355 let _endpos = _endpos__3_ in
21356 let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
21357 # 2112 "parser_cocci_menhir.mly"
21358 ( fun build_dots build_comma ->
21359 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
21360 (_3 build_dots build_comma) )
21361 # 21335 "parser_cocci_menhir.ml"
21362 in
21363 _menhir_env.MenhirLib.EngineTypes.stack <- {
21364 MenhirLib.EngineTypes.state = _menhir_s;
21365 MenhirLib.EngineTypes.semv = Obj.repr _v;
21366 MenhirLib.EngineTypes.startp = _startpos;
21367 MenhirLib.EngineTypes.endp = _endpos;
21368 MenhirLib.EngineTypes.next = _menhir_stack;
21369 });
21370 (fun _menhir_env ->
21371 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21372 let {
21373 MenhirLib.EngineTypes.semv = _2;
21374 MenhirLib.EngineTypes.startp = _startpos__2_;
21375 MenhirLib.EngineTypes.endp = _endpos__2_;
21376 MenhirLib.EngineTypes.next = {
21377 MenhirLib.EngineTypes.state = _menhir_s;
21378 MenhirLib.EngineTypes.startp = _startpos__1_;
21379 MenhirLib.EngineTypes.endp = _endpos__1_;
21380 MenhirLib.EngineTypes.next = _menhir_stack;
21381 };
21382 } = _menhir_stack in
21383 let _2 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _2 in
21384 let _startpos = _startpos__1_ in
21385 let _endpos = _endpos__2_ in
21386 let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
21387 # 2115 "parser_cocci_menhir.mly"
21388 ( _2 )
21389 # 21363 "parser_cocci_menhir.ml"
21390 in
21391 _menhir_env.MenhirLib.EngineTypes.stack <- {
21392 MenhirLib.EngineTypes.state = _menhir_s;
21393 MenhirLib.EngineTypes.semv = Obj.repr _v;
21394 MenhirLib.EngineTypes.startp = _startpos;
21395 MenhirLib.EngineTypes.endp = _endpos;
21396 MenhirLib.EngineTypes.next = _menhir_stack;
21397 });
21398 (fun _menhir_env ->
21399 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21400 let {
21401 MenhirLib.EngineTypes.state = _menhir_s;
21402 MenhirLib.EngineTypes.semv = d;
21403 MenhirLib.EngineTypes.startp = _startpos_d_;
21404 MenhirLib.EngineTypes.endp = _endpos_d_;
21405 MenhirLib.EngineTypes.next = _menhir_stack;
21406 } = _menhir_stack in
21407 let d : (
21408 # 119 "parser_cocci_menhir.mly"
21409 (Data.clt)
21410 # 21384 "parser_cocci_menhir.ml"
21411 ) = Obj.magic d in
21412 let _startpos = _startpos_d_ in
21413 let _endpos = _endpos_d_ in
21414 let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
21415 # 2116 "parser_cocci_menhir.mly"
21416 ( fun build_dots build_comma -> [(build_dots "..." d)] )
21417 # 21391 "parser_cocci_menhir.ml"
21418 in
21419 _menhir_env.MenhirLib.EngineTypes.stack <- {
21420 MenhirLib.EngineTypes.state = _menhir_s;
21421 MenhirLib.EngineTypes.semv = Obj.repr _v;
21422 MenhirLib.EngineTypes.startp = _startpos;
21423 MenhirLib.EngineTypes.endp = _endpos;
21424 MenhirLib.EngineTypes.next = _menhir_stack;
21425 });
21426 (fun _menhir_env ->
21427 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21428 let {
21429 MenhirLib.EngineTypes.semv = _2;
21430 MenhirLib.EngineTypes.startp = _startpos__2_;
21431 MenhirLib.EngineTypes.endp = _endpos__2_;
21432 MenhirLib.EngineTypes.next = {
21433 MenhirLib.EngineTypes.state = _menhir_s;
21434 MenhirLib.EngineTypes.semv = d;
21435 MenhirLib.EngineTypes.startp = _startpos_d_;
21436 MenhirLib.EngineTypes.endp = _endpos_d_;
21437 MenhirLib.EngineTypes.next = _menhir_stack;
21438 };
21439 } = _menhir_stack in
21440 let _2 : (
21441 # 153 "parser_cocci_menhir.mly"
21442 (Data.clt)
21443 # 21417 "parser_cocci_menhir.ml"
21444 ) = Obj.magic _2 in
21445 let d : (
21446 # 119 "parser_cocci_menhir.mly"
21447 (Data.clt)
21448 # 21422 "parser_cocci_menhir.ml"
21449 ) = Obj.magic d in
21450 let _startpos = _startpos_d_ in
21451 let _endpos = _endpos__2_ in
21452 let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
21453 # 2118 "parser_cocci_menhir.mly"
21454 ( fun build_dots build_comma ->
21455 [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
21456 # 21430 "parser_cocci_menhir.ml"
21457 in
21458 _menhir_env.MenhirLib.EngineTypes.stack <- {
21459 MenhirLib.EngineTypes.state = _menhir_s;
21460 MenhirLib.EngineTypes.semv = Obj.repr _v;
21461 MenhirLib.EngineTypes.startp = _startpos;
21462 MenhirLib.EngineTypes.endp = _endpos;
21463 MenhirLib.EngineTypes.next = _menhir_stack;
21464 });
21465 (fun _menhir_env ->
21466 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21467 let {
21468 MenhirLib.EngineTypes.semv = r;
21469 MenhirLib.EngineTypes.startp = _startpos_r_;
21470 MenhirLib.EngineTypes.endp = _endpos_r_;
21471 MenhirLib.EngineTypes.next = {
21472 MenhirLib.EngineTypes.semv = _2;
21473 MenhirLib.EngineTypes.startp = _startpos__2_;
21474 MenhirLib.EngineTypes.endp = _endpos__2_;
21475 MenhirLib.EngineTypes.next = {
21476 MenhirLib.EngineTypes.state = _menhir_s;
21477 MenhirLib.EngineTypes.semv = d;
21478 MenhirLib.EngineTypes.startp = _startpos_d_;
21479 MenhirLib.EngineTypes.endp = _endpos_d_;
21480 MenhirLib.EngineTypes.next = _menhir_stack;
21481 };
21482 };
21483 } = _menhir_stack in
21484 let r : 'tv_continue_list_dparam_TEllipsis_ = Obj.magic r in
21485 let _2 : (
21486 # 153 "parser_cocci_menhir.mly"
21487 (Data.clt)
21488 # 21462 "parser_cocci_menhir.ml"
21489 ) = Obj.magic _2 in
21490 let d : (
21491 # 119 "parser_cocci_menhir.mly"
21492 (Data.clt)
21493 # 21467 "parser_cocci_menhir.ml"
21494 ) = Obj.magic d in
21495 let _startpos = _startpos_d_ in
21496 let _endpos = _endpos_r_ in
21497 let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
21498 # 2121 "parser_cocci_menhir.mly"
21499 ( fun build_dots build_comma ->
21500 (build_dots "..." d)::
21501 (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
21502 (r build_dots build_comma) )
21503 # 21477 "parser_cocci_menhir.ml"
21504 in
21505 _menhir_env.MenhirLib.EngineTypes.stack <- {
21506 MenhirLib.EngineTypes.state = _menhir_s;
21507 MenhirLib.EngineTypes.semv = Obj.repr _v;
21508 MenhirLib.EngineTypes.startp = _startpos;
21509 MenhirLib.EngineTypes.endp = _endpos;
21510 MenhirLib.EngineTypes.next = _menhir_stack;
21511 });
21512 (fun _menhir_env ->
21513 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21514 let {
21515 MenhirLib.EngineTypes.state = _menhir_s;
21516 MenhirLib.EngineTypes.semv = _1;
21517 MenhirLib.EngineTypes.startp = _startpos__1_;
21518 MenhirLib.EngineTypes.endp = _endpos__1_;
21519 MenhirLib.EngineTypes.next = _menhir_stack;
21520 } = _menhir_stack in
21521 let _1 : 'tv_enum_decl_one = Obj.magic _1 in
21522 let _startpos = _startpos__1_ in
21523 let _endpos = _endpos__1_ in
21524 let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
21525 # 2107 "parser_cocci_menhir.mly"
21526 ( fun build_dots build_comma -> [_1] )
21527 # 21501 "parser_cocci_menhir.ml"
21528 in
21529 _menhir_env.MenhirLib.EngineTypes.stack <- {
21530 MenhirLib.EngineTypes.state = _menhir_s;
21531 MenhirLib.EngineTypes.semv = Obj.repr _v;
21532 MenhirLib.EngineTypes.startp = _startpos;
21533 MenhirLib.EngineTypes.endp = _endpos;
21534 MenhirLib.EngineTypes.next = _menhir_stack;
21535 });
21536 (fun _menhir_env ->
21537 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21538 let {
21539 MenhirLib.EngineTypes.semv = _2;
21540 MenhirLib.EngineTypes.startp = _startpos__2_;
21541 MenhirLib.EngineTypes.endp = _endpos__2_;
21542 MenhirLib.EngineTypes.next = {
21543 MenhirLib.EngineTypes.state = _menhir_s;
21544 MenhirLib.EngineTypes.semv = _1;
21545 MenhirLib.EngineTypes.startp = _startpos__1_;
21546 MenhirLib.EngineTypes.endp = _endpos__1_;
21547 MenhirLib.EngineTypes.next = _menhir_stack;
21548 };
21549 } = _menhir_stack in
21550 let _2 : (
21551 # 153 "parser_cocci_menhir.mly"
21552 (Data.clt)
21553 # 21527 "parser_cocci_menhir.ml"
21554 ) = Obj.magic _2 in
21555 let _1 : 'tv_enum_decl_one = Obj.magic _1 in
21556 let _startpos = _startpos__1_ in
21557 let _endpos = _endpos__2_ in
21558 let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
21559 # 2109 "parser_cocci_menhir.mly"
21560 ( fun build_dots build_comma ->
21561 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
21562 # 21536 "parser_cocci_menhir.ml"
21563 in
21564 _menhir_env.MenhirLib.EngineTypes.stack <- {
21565 MenhirLib.EngineTypes.state = _menhir_s;
21566 MenhirLib.EngineTypes.semv = Obj.repr _v;
21567 MenhirLib.EngineTypes.startp = _startpos;
21568 MenhirLib.EngineTypes.endp = _endpos;
21569 MenhirLib.EngineTypes.next = _menhir_stack;
21570 });
21571 (fun _menhir_env ->
21572 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21573 let {
21574 MenhirLib.EngineTypes.semv = _3;
21575 MenhirLib.EngineTypes.startp = _startpos__3_;
21576 MenhirLib.EngineTypes.endp = _endpos__3_;
21577 MenhirLib.EngineTypes.next = {
21578 MenhirLib.EngineTypes.semv = _2;
21579 MenhirLib.EngineTypes.startp = _startpos__2_;
21580 MenhirLib.EngineTypes.endp = _endpos__2_;
21581 MenhirLib.EngineTypes.next = {
21582 MenhirLib.EngineTypes.state = _menhir_s;
21583 MenhirLib.EngineTypes.semv = _1;
21584 MenhirLib.EngineTypes.startp = _startpos__1_;
21585 MenhirLib.EngineTypes.endp = _endpos__1_;
21586 MenhirLib.EngineTypes.next = _menhir_stack;
21587 };
21588 };
21589 } = _menhir_stack in
21590 let _3 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _3 in
21591 let _2 : (
21592 # 153 "parser_cocci_menhir.mly"
21593 (Data.clt)
21594 # 21568 "parser_cocci_menhir.ml"
21595 ) = Obj.magic _2 in
21596 let _1 : 'tv_enum_decl_one = Obj.magic _1 in
21597 let _startpos = _startpos__1_ in
21598 let _endpos = _endpos__3_ in
21599 let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
21600 # 2112 "parser_cocci_menhir.mly"
21601 ( fun build_dots build_comma ->
21602 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
21603 (_3 build_dots build_comma) )
21604 # 21578 "parser_cocci_menhir.ml"
21605 in
21606 _menhir_env.MenhirLib.EngineTypes.stack <- {
21607 MenhirLib.EngineTypes.state = _menhir_s;
21608 MenhirLib.EngineTypes.semv = Obj.repr _v;
21609 MenhirLib.EngineTypes.startp = _startpos;
21610 MenhirLib.EngineTypes.endp = _endpos;
21611 MenhirLib.EngineTypes.next = _menhir_stack;
21612 });
21613 (fun _menhir_env ->
21614 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21615 let {
21616 MenhirLib.EngineTypes.semv = _2;
21617 MenhirLib.EngineTypes.startp = _startpos__2_;
21618 MenhirLib.EngineTypes.endp = _endpos__2_;
21619 MenhirLib.EngineTypes.next = {
21620 MenhirLib.EngineTypes.state = _menhir_s;
21621 MenhirLib.EngineTypes.startp = _startpos__1_;
21622 MenhirLib.EngineTypes.endp = _endpos__1_;
21623 MenhirLib.EngineTypes.next = _menhir_stack;
21624 };
21625 } = _menhir_stack in
21626 let _2 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _2 in
21627 let _startpos = _startpos__1_ in
21628 let _endpos = _endpos__2_ in
21629 let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
21630 # 2115 "parser_cocci_menhir.mly"
21631 ( _2 )
21632 # 21606 "parser_cocci_menhir.ml"
21633 in
21634 _menhir_env.MenhirLib.EngineTypes.stack <- {
21635 MenhirLib.EngineTypes.state = _menhir_s;
21636 MenhirLib.EngineTypes.semv = Obj.repr _v;
21637 MenhirLib.EngineTypes.startp = _startpos;
21638 MenhirLib.EngineTypes.endp = _endpos;
21639 MenhirLib.EngineTypes.next = _menhir_stack;
21640 });
21641 (fun _menhir_env ->
21642 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21643 let {
21644 MenhirLib.EngineTypes.state = _menhir_s;
21645 MenhirLib.EngineTypes.semv = d;
21646 MenhirLib.EngineTypes.startp = _startpos_d_;
21647 MenhirLib.EngineTypes.endp = _endpos_d_;
21648 MenhirLib.EngineTypes.next = _menhir_stack;
21649 } = _menhir_stack in
21650 let d : 'tv_edots_when_TEllipsis_enum_decl_one_ = Obj.magic d in
21651 let _startpos = _startpos_d_ in
21652 let _endpos = _endpos_d_ in
21653 let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
21654 # 2116 "parser_cocci_menhir.mly"
21655 ( fun build_dots build_comma -> [(build_dots "..." d)] )
21656 # 21630 "parser_cocci_menhir.ml"
21657 in
21658 _menhir_env.MenhirLib.EngineTypes.stack <- {
21659 MenhirLib.EngineTypes.state = _menhir_s;
21660 MenhirLib.EngineTypes.semv = Obj.repr _v;
21661 MenhirLib.EngineTypes.startp = _startpos;
21662 MenhirLib.EngineTypes.endp = _endpos;
21663 MenhirLib.EngineTypes.next = _menhir_stack;
21664 });
21665 (fun _menhir_env ->
21666 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21667 let {
21668 MenhirLib.EngineTypes.semv = _2;
21669 MenhirLib.EngineTypes.startp = _startpos__2_;
21670 MenhirLib.EngineTypes.endp = _endpos__2_;
21671 MenhirLib.EngineTypes.next = {
21672 MenhirLib.EngineTypes.state = _menhir_s;
21673 MenhirLib.EngineTypes.semv = d;
21674 MenhirLib.EngineTypes.startp = _startpos_d_;
21675 MenhirLib.EngineTypes.endp = _endpos_d_;
21676 MenhirLib.EngineTypes.next = _menhir_stack;
21677 };
21678 } = _menhir_stack in
21679 let _2 : (
21680 # 153 "parser_cocci_menhir.mly"
21681 (Data.clt)
21682 # 21656 "parser_cocci_menhir.ml"
21683 ) = Obj.magic _2 in
21684 let d : 'tv_edots_when_TEllipsis_enum_decl_one_ = Obj.magic d in
21685 let _startpos = _startpos_d_ in
21686 let _endpos = _endpos__2_ in
21687 let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
21688 # 2118 "parser_cocci_menhir.mly"
21689 ( fun build_dots build_comma ->
21690 [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
21691 # 21665 "parser_cocci_menhir.ml"
21692 in
21693 _menhir_env.MenhirLib.EngineTypes.stack <- {
21694 MenhirLib.EngineTypes.state = _menhir_s;
21695 MenhirLib.EngineTypes.semv = Obj.repr _v;
21696 MenhirLib.EngineTypes.startp = _startpos;
21697 MenhirLib.EngineTypes.endp = _endpos;
21698 MenhirLib.EngineTypes.next = _menhir_stack;
21699 });
21700 (fun _menhir_env ->
21701 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21702 let {
21703 MenhirLib.EngineTypes.semv = r;
21704 MenhirLib.EngineTypes.startp = _startpos_r_;
21705 MenhirLib.EngineTypes.endp = _endpos_r_;
21706 MenhirLib.EngineTypes.next = {
21707 MenhirLib.EngineTypes.semv = _2;
21708 MenhirLib.EngineTypes.startp = _startpos__2_;
21709 MenhirLib.EngineTypes.endp = _endpos__2_;
21710 MenhirLib.EngineTypes.next = {
21711 MenhirLib.EngineTypes.state = _menhir_s;
21712 MenhirLib.EngineTypes.semv = d;
21713 MenhirLib.EngineTypes.startp = _startpos_d_;
21714 MenhirLib.EngineTypes.endp = _endpos_d_;
21715 MenhirLib.EngineTypes.next = _menhir_stack;
21716 };
21717 };
21718 } = _menhir_stack in
21719 let r : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic r in
21720 let _2 : (
21721 # 153 "parser_cocci_menhir.mly"
21722 (Data.clt)
21723 # 21697 "parser_cocci_menhir.ml"
21724 ) = Obj.magic _2 in
21725 let d : 'tv_edots_when_TEllipsis_enum_decl_one_ = Obj.magic d in
21726 let _startpos = _startpos_d_ in
21727 let _endpos = _endpos_r_ in
21728 let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
21729 # 2121 "parser_cocci_menhir.mly"
21730 ( fun build_dots build_comma ->
21731 (build_dots "..." d)::
21732 (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
21733 (r build_dots build_comma) )
21734 # 21708 "parser_cocci_menhir.ml"
21735 in
21736 _menhir_env.MenhirLib.EngineTypes.stack <- {
21737 MenhirLib.EngineTypes.state = _menhir_s;
21738 MenhirLib.EngineTypes.semv = Obj.repr _v;
21739 MenhirLib.EngineTypes.startp = _startpos;
21740 MenhirLib.EngineTypes.endp = _endpos;
21741 MenhirLib.EngineTypes.next = _menhir_stack;
21742 });
21743 (fun _menhir_env ->
21744 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21745 let {
21746 MenhirLib.EngineTypes.state = _menhir_s;
21747 MenhirLib.EngineTypes.semv = _1;
21748 MenhirLib.EngineTypes.startp = _startpos__1_;
21749 MenhirLib.EngineTypes.endp = _endpos__1_;
21750 MenhirLib.EngineTypes.next = _menhir_stack;
21751 } = _menhir_stack in
21752 let _1 : 'tv_initialize2 = Obj.magic _1 in
21753 let _startpos = _startpos__1_ in
21754 let _endpos = _endpos__1_ in
21755 let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
21756 # 2107 "parser_cocci_menhir.mly"
21757 ( fun build_dots build_comma -> [_1] )
21758 # 21732 "parser_cocci_menhir.ml"
21759 in
21760 _menhir_env.MenhirLib.EngineTypes.stack <- {
21761 MenhirLib.EngineTypes.state = _menhir_s;
21762 MenhirLib.EngineTypes.semv = Obj.repr _v;
21763 MenhirLib.EngineTypes.startp = _startpos;
21764 MenhirLib.EngineTypes.endp = _endpos;
21765 MenhirLib.EngineTypes.next = _menhir_stack;
21766 });
21767 (fun _menhir_env ->
21768 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21769 let {
21770 MenhirLib.EngineTypes.semv = _2;
21771 MenhirLib.EngineTypes.startp = _startpos__2_;
21772 MenhirLib.EngineTypes.endp = _endpos__2_;
21773 MenhirLib.EngineTypes.next = {
21774 MenhirLib.EngineTypes.state = _menhir_s;
21775 MenhirLib.EngineTypes.semv = _1;
21776 MenhirLib.EngineTypes.startp = _startpos__1_;
21777 MenhirLib.EngineTypes.endp = _endpos__1_;
21778 MenhirLib.EngineTypes.next = _menhir_stack;
21779 };
21780 } = _menhir_stack in
21781 let _2 : (
21782 # 153 "parser_cocci_menhir.mly"
21783 (Data.clt)
21784 # 21758 "parser_cocci_menhir.ml"
21785 ) = Obj.magic _2 in
21786 let _1 : 'tv_initialize2 = Obj.magic _1 in
21787 let _startpos = _startpos__1_ in
21788 let _endpos = _endpos__2_ in
21789 let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
21790 # 2109 "parser_cocci_menhir.mly"
21791 ( fun build_dots build_comma ->
21792 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
21793 # 21767 "parser_cocci_menhir.ml"
21794 in
21795 _menhir_env.MenhirLib.EngineTypes.stack <- {
21796 MenhirLib.EngineTypes.state = _menhir_s;
21797 MenhirLib.EngineTypes.semv = Obj.repr _v;
21798 MenhirLib.EngineTypes.startp = _startpos;
21799 MenhirLib.EngineTypes.endp = _endpos;
21800 MenhirLib.EngineTypes.next = _menhir_stack;
21801 });
21802 (fun _menhir_env ->
21803 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21804 let {
21805 MenhirLib.EngineTypes.semv = _3;
21806 MenhirLib.EngineTypes.startp = _startpos__3_;
21807 MenhirLib.EngineTypes.endp = _endpos__3_;
21808 MenhirLib.EngineTypes.next = {
21809 MenhirLib.EngineTypes.semv = _2;
21810 MenhirLib.EngineTypes.startp = _startpos__2_;
21811 MenhirLib.EngineTypes.endp = _endpos__2_;
21812 MenhirLib.EngineTypes.next = {
21813 MenhirLib.EngineTypes.state = _menhir_s;
21814 MenhirLib.EngineTypes.semv = _1;
21815 MenhirLib.EngineTypes.startp = _startpos__1_;
21816 MenhirLib.EngineTypes.endp = _endpos__1_;
21817 MenhirLib.EngineTypes.next = _menhir_stack;
21818 };
21819 };
21820 } = _menhir_stack in
21821 let _3 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _3 in
21822 let _2 : (
21823 # 153 "parser_cocci_menhir.mly"
21824 (Data.clt)
21825 # 21799 "parser_cocci_menhir.ml"
21826 ) = Obj.magic _2 in
21827 let _1 : 'tv_initialize2 = Obj.magic _1 in
21828 let _startpos = _startpos__1_ in
21829 let _endpos = _endpos__3_ in
21830 let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
21831 # 2112 "parser_cocci_menhir.mly"
21832 ( fun build_dots build_comma ->
21833 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
21834 (_3 build_dots build_comma) )
21835 # 21809 "parser_cocci_menhir.ml"
21836 in
21837 _menhir_env.MenhirLib.EngineTypes.stack <- {
21838 MenhirLib.EngineTypes.state = _menhir_s;
21839 MenhirLib.EngineTypes.semv = Obj.repr _v;
21840 MenhirLib.EngineTypes.startp = _startpos;
21841 MenhirLib.EngineTypes.endp = _endpos;
21842 MenhirLib.EngineTypes.next = _menhir_stack;
21843 });
21844 (fun _menhir_env ->
21845 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21846 let {
21847 MenhirLib.EngineTypes.semv = _2;
21848 MenhirLib.EngineTypes.startp = _startpos__2_;
21849 MenhirLib.EngineTypes.endp = _endpos__2_;
21850 MenhirLib.EngineTypes.next = {
21851 MenhirLib.EngineTypes.state = _menhir_s;
21852 MenhirLib.EngineTypes.startp = _startpos__1_;
21853 MenhirLib.EngineTypes.endp = _endpos__1_;
21854 MenhirLib.EngineTypes.next = _menhir_stack;
21855 };
21856 } = _menhir_stack in
21857 let _2 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _2 in
21858 let _startpos = _startpos__1_ in
21859 let _endpos = _endpos__2_ in
21860 let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
21861 # 2115 "parser_cocci_menhir.mly"
21862 ( _2 )
21863 # 21837 "parser_cocci_menhir.ml"
21864 in
21865 _menhir_env.MenhirLib.EngineTypes.stack <- {
21866 MenhirLib.EngineTypes.state = _menhir_s;
21867 MenhirLib.EngineTypes.semv = Obj.repr _v;
21868 MenhirLib.EngineTypes.startp = _startpos;
21869 MenhirLib.EngineTypes.endp = _endpos;
21870 MenhirLib.EngineTypes.next = _menhir_stack;
21871 });
21872 (fun _menhir_env ->
21873 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21874 let {
21875 MenhirLib.EngineTypes.state = _menhir_s;
21876 MenhirLib.EngineTypes.semv = d;
21877 MenhirLib.EngineTypes.startp = _startpos_d_;
21878 MenhirLib.EngineTypes.endp = _endpos_d_;
21879 MenhirLib.EngineTypes.next = _menhir_stack;
21880 } = _menhir_stack in
21881 let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in
21882 let _startpos = _startpos_d_ in
21883 let _endpos = _endpos_d_ in
21884 let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
21885 # 2116 "parser_cocci_menhir.mly"
21886 ( fun build_dots build_comma -> [(build_dots "..." d)] )
21887 # 21861 "parser_cocci_menhir.ml"
21888 in
21889 _menhir_env.MenhirLib.EngineTypes.stack <- {
21890 MenhirLib.EngineTypes.state = _menhir_s;
21891 MenhirLib.EngineTypes.semv = Obj.repr _v;
21892 MenhirLib.EngineTypes.startp = _startpos;
21893 MenhirLib.EngineTypes.endp = _endpos;
21894 MenhirLib.EngineTypes.next = _menhir_stack;
21895 });
21896 (fun _menhir_env ->
21897 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21898 let {
21899 MenhirLib.EngineTypes.semv = _2;
21900 MenhirLib.EngineTypes.startp = _startpos__2_;
21901 MenhirLib.EngineTypes.endp = _endpos__2_;
21902 MenhirLib.EngineTypes.next = {
21903 MenhirLib.EngineTypes.state = _menhir_s;
21904 MenhirLib.EngineTypes.semv = d;
21905 MenhirLib.EngineTypes.startp = _startpos_d_;
21906 MenhirLib.EngineTypes.endp = _endpos_d_;
21907 MenhirLib.EngineTypes.next = _menhir_stack;
21908 };
21909 } = _menhir_stack in
21910 let _2 : (
21911 # 153 "parser_cocci_menhir.mly"
21912 (Data.clt)
21913 # 21887 "parser_cocci_menhir.ml"
21914 ) = Obj.magic _2 in
21915 let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in
21916 let _startpos = _startpos_d_ in
21917 let _endpos = _endpos__2_ in
21918 let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
21919 # 2118 "parser_cocci_menhir.mly"
21920 ( fun build_dots build_comma ->
21921 [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
21922 # 21896 "parser_cocci_menhir.ml"
21923 in
21924 _menhir_env.MenhirLib.EngineTypes.stack <- {
21925 MenhirLib.EngineTypes.state = _menhir_s;
21926 MenhirLib.EngineTypes.semv = Obj.repr _v;
21927 MenhirLib.EngineTypes.startp = _startpos;
21928 MenhirLib.EngineTypes.endp = _endpos;
21929 MenhirLib.EngineTypes.next = _menhir_stack;
21930 });
21931 (fun _menhir_env ->
21932 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21933 let {
21934 MenhirLib.EngineTypes.semv = r;
21935 MenhirLib.EngineTypes.startp = _startpos_r_;
21936 MenhirLib.EngineTypes.endp = _endpos_r_;
21937 MenhirLib.EngineTypes.next = {
21938 MenhirLib.EngineTypes.semv = _2;
21939 MenhirLib.EngineTypes.startp = _startpos__2_;
21940 MenhirLib.EngineTypes.endp = _endpos__2_;
21941 MenhirLib.EngineTypes.next = {
21942 MenhirLib.EngineTypes.state = _menhir_s;
21943 MenhirLib.EngineTypes.semv = d;
21944 MenhirLib.EngineTypes.startp = _startpos_d_;
21945 MenhirLib.EngineTypes.endp = _endpos_d_;
21946 MenhirLib.EngineTypes.next = _menhir_stack;
21947 };
21948 };
21949 } = _menhir_stack in
21950 let r : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic r in
21951 let _2 : (
21952 # 153 "parser_cocci_menhir.mly"
21953 (Data.clt)
21954 # 21928 "parser_cocci_menhir.ml"
21955 ) = Obj.magic _2 in
21956 let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in
21957 let _startpos = _startpos_d_ in
21958 let _endpos = _endpos_r_ in
21959 let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
21960 # 2121 "parser_cocci_menhir.mly"
21961 ( fun build_dots build_comma ->
21962 (build_dots "..." d)::
21963 (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
21964 (r build_dots build_comma) )
21965 # 21939 "parser_cocci_menhir.ml"
21966 in
21967 _menhir_env.MenhirLib.EngineTypes.stack <- {
21968 MenhirLib.EngineTypes.state = _menhir_s;
21969 MenhirLib.EngineTypes.semv = Obj.repr _v;
21970 MenhirLib.EngineTypes.startp = _startpos;
21971 MenhirLib.EngineTypes.endp = _endpos;
21972 MenhirLib.EngineTypes.next = _menhir_stack;
21973 });
21974 (fun _menhir_env ->
21975 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
21976 let {
21977 MenhirLib.EngineTypes.state = _menhir_s;
21978 MenhirLib.EngineTypes.semv = _1;
21979 MenhirLib.EngineTypes.startp = _startpos__1_;
21980 MenhirLib.EngineTypes.endp = _endpos__1_;
21981 MenhirLib.EngineTypes.next = _menhir_stack;
21982 } = _menhir_stack in
21983 let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
21984 let _startpos = _startpos__1_ in
21985 let _endpos = _endpos__1_ in
21986 let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
21987 # 2107 "parser_cocci_menhir.mly"
21988 ( fun build_dots build_comma -> [_1] )
21989 # 21963 "parser_cocci_menhir.ml"
21990 in
21991 _menhir_env.MenhirLib.EngineTypes.stack <- {
21992 MenhirLib.EngineTypes.state = _menhir_s;
21993 MenhirLib.EngineTypes.semv = Obj.repr _v;
21994 MenhirLib.EngineTypes.startp = _startpos;
21995 MenhirLib.EngineTypes.endp = _endpos;
21996 MenhirLib.EngineTypes.next = _menhir_stack;
21997 });
21998 (fun _menhir_env ->
21999 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22000 let {
22001 MenhirLib.EngineTypes.semv = _2;
22002 MenhirLib.EngineTypes.startp = _startpos__2_;
22003 MenhirLib.EngineTypes.endp = _endpos__2_;
22004 MenhirLib.EngineTypes.next = {
22005 MenhirLib.EngineTypes.state = _menhir_s;
22006 MenhirLib.EngineTypes.semv = _1;
22007 MenhirLib.EngineTypes.startp = _startpos__1_;
22008 MenhirLib.EngineTypes.endp = _endpos__1_;
22009 MenhirLib.EngineTypes.next = _menhir_stack;
22010 };
22011 } = _menhir_stack in
22012 let _2 : (
22013 # 153 "parser_cocci_menhir.mly"
22014 (Data.clt)
22015 # 21989 "parser_cocci_menhir.ml"
22016 ) = Obj.magic _2 in
22017 let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
22018 let _startpos = _startpos__1_ in
22019 let _endpos = _endpos__2_ in
22020 let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
22021 # 2109 "parser_cocci_menhir.mly"
22022 ( fun build_dots build_comma ->
22023 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
22024 # 21998 "parser_cocci_menhir.ml"
22025 in
22026 _menhir_env.MenhirLib.EngineTypes.stack <- {
22027 MenhirLib.EngineTypes.state = _menhir_s;
22028 MenhirLib.EngineTypes.semv = Obj.repr _v;
22029 MenhirLib.EngineTypes.startp = _startpos;
22030 MenhirLib.EngineTypes.endp = _endpos;
22031 MenhirLib.EngineTypes.next = _menhir_stack;
22032 });
22033 (fun _menhir_env ->
22034 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22035 let {
22036 MenhirLib.EngineTypes.semv = _3;
22037 MenhirLib.EngineTypes.startp = _startpos__3_;
22038 MenhirLib.EngineTypes.endp = _endpos__3_;
22039 MenhirLib.EngineTypes.next = {
22040 MenhirLib.EngineTypes.semv = _2;
22041 MenhirLib.EngineTypes.startp = _startpos__2_;
22042 MenhirLib.EngineTypes.endp = _endpos__2_;
22043 MenhirLib.EngineTypes.next = {
22044 MenhirLib.EngineTypes.state = _menhir_s;
22045 MenhirLib.EngineTypes.semv = _1;
22046 MenhirLib.EngineTypes.startp = _startpos__1_;
22047 MenhirLib.EngineTypes.endp = _endpos__1_;
22048 MenhirLib.EngineTypes.next = _menhir_stack;
22049 };
22050 };
22051 } = _menhir_stack in
22052 let _3 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _3 in
22053 let _2 : (
22054 # 153 "parser_cocci_menhir.mly"
22055 (Data.clt)
22056 # 22030 "parser_cocci_menhir.ml"
22057 ) = Obj.magic _2 in
22058 let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
22059 let _startpos = _startpos__1_ in
22060 let _endpos = _endpos__3_ in
22061 let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
22062 # 2112 "parser_cocci_menhir.mly"
22063 ( fun build_dots build_comma ->
22064 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
22065 (_3 build_dots build_comma) )
22066 # 22040 "parser_cocci_menhir.ml"
22067 in
22068 _menhir_env.MenhirLib.EngineTypes.stack <- {
22069 MenhirLib.EngineTypes.state = _menhir_s;
22070 MenhirLib.EngineTypes.semv = Obj.repr _v;
22071 MenhirLib.EngineTypes.startp = _startpos;
22072 MenhirLib.EngineTypes.endp = _endpos;
22073 MenhirLib.EngineTypes.next = _menhir_stack;
22074 });
22075 (fun _menhir_env ->
22076 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22077 let {
22078 MenhirLib.EngineTypes.semv = _2;
22079 MenhirLib.EngineTypes.startp = _startpos__2_;
22080 MenhirLib.EngineTypes.endp = _endpos__2_;
22081 MenhirLib.EngineTypes.next = {
22082 MenhirLib.EngineTypes.state = _menhir_s;
22083 MenhirLib.EngineTypes.startp = _startpos__1_;
22084 MenhirLib.EngineTypes.endp = _endpos__1_;
22085 MenhirLib.EngineTypes.next = _menhir_stack;
22086 };
22087 } = _menhir_stack in
22088 let _2 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _2 in
22089 let _startpos = _startpos__1_ in
22090 let _endpos = _endpos__2_ in
22091 let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
22092 # 2115 "parser_cocci_menhir.mly"
22093 ( _2 )
22094 # 22068 "parser_cocci_menhir.ml"
22095 in
22096 _menhir_env.MenhirLib.EngineTypes.stack <- {
22097 MenhirLib.EngineTypes.state = _menhir_s;
22098 MenhirLib.EngineTypes.semv = Obj.repr _v;
22099 MenhirLib.EngineTypes.startp = _startpos;
22100 MenhirLib.EngineTypes.endp = _endpos;
22101 MenhirLib.EngineTypes.next = _menhir_stack;
22102 });
22103 (fun _menhir_env ->
22104 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22105 let {
22106 MenhirLib.EngineTypes.state = _menhir_s;
22107 MenhirLib.EngineTypes.semv = d;
22108 MenhirLib.EngineTypes.startp = _startpos_d_;
22109 MenhirLib.EngineTypes.endp = _endpos_d_;
22110 MenhirLib.EngineTypes.next = _menhir_stack;
22111 } = _menhir_stack in
22112 let d : (
22113 # 119 "parser_cocci_menhir.mly"
22114 (Data.clt)
22115 # 22089 "parser_cocci_menhir.ml"
22116 ) = Obj.magic d in
22117 let _startpos = _startpos_d_ in
22118 let _endpos = _endpos_d_ in
22119 let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
22120 # 2116 "parser_cocci_menhir.mly"
22121 ( fun build_dots build_comma -> [(build_dots "..." d)] )
22122 # 22096 "parser_cocci_menhir.ml"
22123 in
22124 _menhir_env.MenhirLib.EngineTypes.stack <- {
22125 MenhirLib.EngineTypes.state = _menhir_s;
22126 MenhirLib.EngineTypes.semv = Obj.repr _v;
22127 MenhirLib.EngineTypes.startp = _startpos;
22128 MenhirLib.EngineTypes.endp = _endpos;
22129 MenhirLib.EngineTypes.next = _menhir_stack;
22130 });
22131 (fun _menhir_env ->
22132 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22133 let {
22134 MenhirLib.EngineTypes.semv = _2;
22135 MenhirLib.EngineTypes.startp = _startpos__2_;
22136 MenhirLib.EngineTypes.endp = _endpos__2_;
22137 MenhirLib.EngineTypes.next = {
22138 MenhirLib.EngineTypes.state = _menhir_s;
22139 MenhirLib.EngineTypes.semv = d;
22140 MenhirLib.EngineTypes.startp = _startpos_d_;
22141 MenhirLib.EngineTypes.endp = _endpos_d_;
22142 MenhirLib.EngineTypes.next = _menhir_stack;
22143 };
22144 } = _menhir_stack in
22145 let _2 : (
22146 # 153 "parser_cocci_menhir.mly"
22147 (Data.clt)
22148 # 22122 "parser_cocci_menhir.ml"
22149 ) = Obj.magic _2 in
22150 let d : (
22151 # 119 "parser_cocci_menhir.mly"
22152 (Data.clt)
22153 # 22127 "parser_cocci_menhir.ml"
22154 ) = Obj.magic d in
22155 let _startpos = _startpos_d_ in
22156 let _endpos = _endpos__2_ in
22157 let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
22158 # 2118 "parser_cocci_menhir.mly"
22159 ( fun build_dots build_comma ->
22160 [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
22161 # 22135 "parser_cocci_menhir.ml"
22162 in
22163 _menhir_env.MenhirLib.EngineTypes.stack <- {
22164 MenhirLib.EngineTypes.state = _menhir_s;
22165 MenhirLib.EngineTypes.semv = Obj.repr _v;
22166 MenhirLib.EngineTypes.startp = _startpos;
22167 MenhirLib.EngineTypes.endp = _endpos;
22168 MenhirLib.EngineTypes.next = _menhir_stack;
22169 });
22170 (fun _menhir_env ->
22171 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22172 let {
22173 MenhirLib.EngineTypes.semv = r;
22174 MenhirLib.EngineTypes.startp = _startpos_r_;
22175 MenhirLib.EngineTypes.endp = _endpos_r_;
22176 MenhirLib.EngineTypes.next = {
22177 MenhirLib.EngineTypes.semv = _2;
22178 MenhirLib.EngineTypes.startp = _startpos__2_;
22179 MenhirLib.EngineTypes.endp = _endpos__2_;
22180 MenhirLib.EngineTypes.next = {
22181 MenhirLib.EngineTypes.state = _menhir_s;
22182 MenhirLib.EngineTypes.semv = d;
22183 MenhirLib.EngineTypes.startp = _startpos_d_;
22184 MenhirLib.EngineTypes.endp = _endpos_d_;
22185 MenhirLib.EngineTypes.next = _menhir_stack;
22186 };
22187 };
22188 } = _menhir_stack in
22189 let r : 'tv_continue_list_one_dec_decl__TEllipsis_ = Obj.magic r in
22190 let _2 : (
22191 # 153 "parser_cocci_menhir.mly"
22192 (Data.clt)
22193 # 22167 "parser_cocci_menhir.ml"
22194 ) = Obj.magic _2 in
22195 let d : (
22196 # 119 "parser_cocci_menhir.mly"
22197 (Data.clt)
22198 # 22172 "parser_cocci_menhir.ml"
22199 ) = Obj.magic d in
22200 let _startpos = _startpos_d_ in
22201 let _endpos = _endpos_r_ in
22202 let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
22203 # 2121 "parser_cocci_menhir.mly"
22204 ( fun build_dots build_comma ->
22205 (build_dots "..." d)::
22206 (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
22207 (r build_dots build_comma) )
22208 # 22182 "parser_cocci_menhir.ml"
22209 in
22210 _menhir_env.MenhirLib.EngineTypes.stack <- {
22211 MenhirLib.EngineTypes.state = _menhir_s;
22212 MenhirLib.EngineTypes.semv = Obj.repr _v;
22213 MenhirLib.EngineTypes.startp = _startpos;
22214 MenhirLib.EngineTypes.endp = _endpos;
22215 MenhirLib.EngineTypes.next = _menhir_stack;
22216 });
22217 (fun _menhir_env ->
22218 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22219 let {
22220 MenhirLib.EngineTypes.state = _menhir_s;
22221 MenhirLib.EngineTypes.semv = _1;
22222 MenhirLib.EngineTypes.startp = _startpos__1_;
22223 MenhirLib.EngineTypes.endp = _endpos__1_;
22224 MenhirLib.EngineTypes.next = _menhir_stack;
22225 } = _menhir_stack in
22226 let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
22227 let _startpos = _startpos__1_ in
22228 let _endpos = _endpos__1_ in
22229 let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
22230 # 2107 "parser_cocci_menhir.mly"
22231 ( fun build_dots build_comma -> [_1] )
22232 # 22206 "parser_cocci_menhir.ml"
22233 in
22234 _menhir_env.MenhirLib.EngineTypes.stack <- {
22235 MenhirLib.EngineTypes.state = _menhir_s;
22236 MenhirLib.EngineTypes.semv = Obj.repr _v;
22237 MenhirLib.EngineTypes.startp = _startpos;
22238 MenhirLib.EngineTypes.endp = _endpos;
22239 MenhirLib.EngineTypes.next = _menhir_stack;
22240 });
22241 (fun _menhir_env ->
22242 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22243 let {
22244 MenhirLib.EngineTypes.semv = _2;
22245 MenhirLib.EngineTypes.startp = _startpos__2_;
22246 MenhirLib.EngineTypes.endp = _endpos__2_;
22247 MenhirLib.EngineTypes.next = {
22248 MenhirLib.EngineTypes.state = _menhir_s;
22249 MenhirLib.EngineTypes.semv = _1;
22250 MenhirLib.EngineTypes.startp = _startpos__1_;
22251 MenhirLib.EngineTypes.endp = _endpos__1_;
22252 MenhirLib.EngineTypes.next = _menhir_stack;
22253 };
22254 } = _menhir_stack in
22255 let _2 : (
22256 # 153 "parser_cocci_menhir.mly"
22257 (Data.clt)
22258 # 22232 "parser_cocci_menhir.ml"
22259 ) = Obj.magic _2 in
22260 let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
22261 let _startpos = _startpos__1_ in
22262 let _endpos = _endpos__2_ in
22263 let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
22264 # 2109 "parser_cocci_menhir.mly"
22265 ( fun build_dots build_comma ->
22266 _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
22267 # 22241 "parser_cocci_menhir.ml"
22268 in
22269 _menhir_env.MenhirLib.EngineTypes.stack <- {
22270 MenhirLib.EngineTypes.state = _menhir_s;
22271 MenhirLib.EngineTypes.semv = Obj.repr _v;
22272 MenhirLib.EngineTypes.startp = _startpos;
22273 MenhirLib.EngineTypes.endp = _endpos;
22274 MenhirLib.EngineTypes.next = _menhir_stack;
22275 });
22276 (fun _menhir_env ->
22277 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22278 let {
22279 MenhirLib.EngineTypes.semv = _3;
22280 MenhirLib.EngineTypes.startp = _startpos__3_;
22281 MenhirLib.EngineTypes.endp = _endpos__3_;
22282 MenhirLib.EngineTypes.next = {
22283 MenhirLib.EngineTypes.semv = _2;
22284 MenhirLib.EngineTypes.startp = _startpos__2_;
22285 MenhirLib.EngineTypes.endp = _endpos__2_;
22286 MenhirLib.EngineTypes.next = {
22287 MenhirLib.EngineTypes.state = _menhir_s;
22288 MenhirLib.EngineTypes.semv = _1;
22289 MenhirLib.EngineTypes.startp = _startpos__1_;
22290 MenhirLib.EngineTypes.endp = _endpos__1_;
22291 MenhirLib.EngineTypes.next = _menhir_stack;
22292 };
22293 };
22294 } = _menhir_stack in
22295 let _3 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _3 in
22296 let _2 : (
22297 # 153 "parser_cocci_menhir.mly"
22298 (Data.clt)
22299 # 22273 "parser_cocci_menhir.ml"
22300 ) = Obj.magic _2 in
22301 let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
22302 let _startpos = _startpos__1_ in
22303 let _endpos = _endpos__3_ in
22304 let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
22305 # 2112 "parser_cocci_menhir.mly"
22306 ( fun build_dots build_comma ->
22307 _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
22308 (_3 build_dots build_comma) )
22309 # 22283 "parser_cocci_menhir.ml"
22310 in
22311 _menhir_env.MenhirLib.EngineTypes.stack <- {
22312 MenhirLib.EngineTypes.state = _menhir_s;
22313 MenhirLib.EngineTypes.semv = Obj.repr _v;
22314 MenhirLib.EngineTypes.startp = _startpos;
22315 MenhirLib.EngineTypes.endp = _endpos;
22316 MenhirLib.EngineTypes.next = _menhir_stack;
22317 });
22318 (fun _menhir_env ->
22319 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22320 let {
22321 MenhirLib.EngineTypes.semv = _2;
22322 MenhirLib.EngineTypes.startp = _startpos__2_;
22323 MenhirLib.EngineTypes.endp = _endpos__2_;
22324 MenhirLib.EngineTypes.next = {
22325 MenhirLib.EngineTypes.state = _menhir_s;
22326 MenhirLib.EngineTypes.startp = _startpos__1_;
22327 MenhirLib.EngineTypes.endp = _endpos__1_;
22328 MenhirLib.EngineTypes.next = _menhir_stack;
22329 };
22330 } = _menhir_stack in
22331 let _2 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _2 in
22332 let _startpos = _startpos__1_ in
22333 let _endpos = _endpos__2_ in
22334 let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
22335 # 2115 "parser_cocci_menhir.mly"
22336 ( _2 )
22337 # 22311 "parser_cocci_menhir.ml"
22338 in
22339 _menhir_env.MenhirLib.EngineTypes.stack <- {
22340 MenhirLib.EngineTypes.state = _menhir_s;
22341 MenhirLib.EngineTypes.semv = Obj.repr _v;
22342 MenhirLib.EngineTypes.startp = _startpos;
22343 MenhirLib.EngineTypes.endp = _endpos;
22344 MenhirLib.EngineTypes.next = _menhir_stack;
22345 });
22346 (fun _menhir_env ->
22347 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22348 let {
22349 MenhirLib.EngineTypes.state = _menhir_s;
22350 MenhirLib.EngineTypes.semv = d;
22351 MenhirLib.EngineTypes.startp = _startpos_d_;
22352 MenhirLib.EngineTypes.endp = _endpos_d_;
22353 MenhirLib.EngineTypes.next = _menhir_stack;
22354 } = _menhir_stack in
22355 let d : (
22356 # 119 "parser_cocci_menhir.mly"
22357 (Data.clt)
22358 # 22332 "parser_cocci_menhir.ml"
22359 ) = Obj.magic d in
22360 let _startpos = _startpos_d_ in
22361 let _endpos = _endpos_d_ in
22362 let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
22363 # 2116 "parser_cocci_menhir.mly"
22364 ( fun build_dots build_comma -> [(build_dots "..." d)] )
22365 # 22339 "parser_cocci_menhir.ml"
22366 in
22367 _menhir_env.MenhirLib.EngineTypes.stack <- {
22368 MenhirLib.EngineTypes.state = _menhir_s;
22369 MenhirLib.EngineTypes.semv = Obj.repr _v;
22370 MenhirLib.EngineTypes.startp = _startpos;
22371 MenhirLib.EngineTypes.endp = _endpos;
22372 MenhirLib.EngineTypes.next = _menhir_stack;
22373 });
22374 (fun _menhir_env ->
22375 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22376 let {
22377 MenhirLib.EngineTypes.semv = _2;
22378 MenhirLib.EngineTypes.startp = _startpos__2_;
22379 MenhirLib.EngineTypes.endp = _endpos__2_;
22380 MenhirLib.EngineTypes.next = {
22381 MenhirLib.EngineTypes.state = _menhir_s;
22382 MenhirLib.EngineTypes.semv = d;
22383 MenhirLib.EngineTypes.startp = _startpos_d_;
22384 MenhirLib.EngineTypes.endp = _endpos_d_;
22385 MenhirLib.EngineTypes.next = _menhir_stack;
22386 };
22387 } = _menhir_stack in
22388 let _2 : (
22389 # 153 "parser_cocci_menhir.mly"
22390 (Data.clt)
22391 # 22365 "parser_cocci_menhir.ml"
22392 ) = Obj.magic _2 in
22393 let d : (
22394 # 119 "parser_cocci_menhir.mly"
22395 (Data.clt)
22396 # 22370 "parser_cocci_menhir.ml"
22397 ) = Obj.magic d in
22398 let _startpos = _startpos_d_ in
22399 let _endpos = _endpos__2_ in
22400 let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
22401 # 2118 "parser_cocci_menhir.mly"
22402 ( fun build_dots build_comma ->
22403 [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
22404 # 22378 "parser_cocci_menhir.ml"
22405 in
22406 _menhir_env.MenhirLib.EngineTypes.stack <- {
22407 MenhirLib.EngineTypes.state = _menhir_s;
22408 MenhirLib.EngineTypes.semv = Obj.repr _v;
22409 MenhirLib.EngineTypes.startp = _startpos;
22410 MenhirLib.EngineTypes.endp = _endpos;
22411 MenhirLib.EngineTypes.next = _menhir_stack;
22412 });
22413 (fun _menhir_env ->
22414 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22415 let {
22416 MenhirLib.EngineTypes.semv = r;
22417 MenhirLib.EngineTypes.startp = _startpos_r_;
22418 MenhirLib.EngineTypes.endp = _endpos_r_;
22419 MenhirLib.EngineTypes.next = {
22420 MenhirLib.EngineTypes.semv = _2;
22421 MenhirLib.EngineTypes.startp = _startpos__2_;
22422 MenhirLib.EngineTypes.endp = _endpos__2_;
22423 MenhirLib.EngineTypes.next = {
22424 MenhirLib.EngineTypes.state = _menhir_s;
22425 MenhirLib.EngineTypes.semv = d;
22426 MenhirLib.EngineTypes.startp = _startpos_d_;
22427 MenhirLib.EngineTypes.endp = _endpos_d_;
22428 MenhirLib.EngineTypes.next = _menhir_stack;
22429 };
22430 };
22431 } = _menhir_stack in
22432 let r : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ = Obj.magic r in
22433 let _2 : (
22434 # 153 "parser_cocci_menhir.mly"
22435 (Data.clt)
22436 # 22410 "parser_cocci_menhir.ml"
22437 ) = Obj.magic _2 in
22438 let d : (
22439 # 119 "parser_cocci_menhir.mly"
22440 (Data.clt)
22441 # 22415 "parser_cocci_menhir.ml"
22442 ) = Obj.magic d in
22443 let _startpos = _startpos_d_ in
22444 let _endpos = _endpos_r_ in
22445 let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
22446 # 2121 "parser_cocci_menhir.mly"
22447 ( fun build_dots build_comma ->
22448 (build_dots "..." d)::
22449 (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
22450 (r build_dots build_comma) )
22451 # 22425 "parser_cocci_menhir.ml"
22452 in
22453 _menhir_env.MenhirLib.EngineTypes.stack <- {
22454 MenhirLib.EngineTypes.state = _menhir_s;
22455 MenhirLib.EngineTypes.semv = Obj.repr _v;
22456 MenhirLib.EngineTypes.startp = _startpos;
22457 MenhirLib.EngineTypes.endp = _endpos;
22458 MenhirLib.EngineTypes.next = _menhir_stack;
22459 });
22460 (fun _menhir_env ->
22461 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22462 let {
22463 MenhirLib.EngineTypes.semv = i;
22464 MenhirLib.EngineTypes.startp = _startpos_i_;
22465 MenhirLib.EngineTypes.endp = _endpos_i_;
22466 MenhirLib.EngineTypes.next = {
22467 MenhirLib.EngineTypes.state = _menhir_s;
22468 MenhirLib.EngineTypes.startp = _startpos__1_;
22469 MenhirLib.EngineTypes.endp = _endpos__1_;
22470 MenhirLib.EngineTypes.next = _menhir_stack;
22471 };
22472 } = _menhir_stack in
22473 let i : 'tv_ident_or_const = Obj.magic i in
22474 let _startpos = _startpos__1_ in
22475 let _endpos = _endpos_i_ in
22476 let _v : 'tv_not_ceq =
22477 # 1940 "parser_cocci_menhir.mly"
22478 ( (if !Data.in_iso
22479 then failwith "constraints not allowed in iso file");
22480 (if !Data.in_generating
22481 then failwith "constraints not allowed in a generated rule file");
22482 [i] )
22483 # 22457 "parser_cocci_menhir.ml"
22484 in
22485 _menhir_env.MenhirLib.EngineTypes.stack <- {
22486 MenhirLib.EngineTypes.state = _menhir_s;
22487 MenhirLib.EngineTypes.semv = Obj.repr _v;
22488 MenhirLib.EngineTypes.startp = _startpos;
22489 MenhirLib.EngineTypes.endp = _endpos;
22490 MenhirLib.EngineTypes.next = _menhir_stack;
22491 });
22492 (fun _menhir_env ->
22493 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22494 let {
22495 MenhirLib.EngineTypes.startp = _startpos__4_;
22496 MenhirLib.EngineTypes.endp = _endpos__4_;
22497 MenhirLib.EngineTypes.next = {
22498 MenhirLib.EngineTypes.semv = l;
22499 MenhirLib.EngineTypes.startp = _startpos_l_;
22500 MenhirLib.EngineTypes.endp = _endpos_l_;
22501 MenhirLib.EngineTypes.next = {
22502 MenhirLib.EngineTypes.startp = _startpos__2_;
22503 MenhirLib.EngineTypes.endp = _endpos__2_;
22504 MenhirLib.EngineTypes.next = {
22505 MenhirLib.EngineTypes.state = _menhir_s;
22506 MenhirLib.EngineTypes.startp = _startpos__1_;
22507 MenhirLib.EngineTypes.endp = _endpos__1_;
22508 MenhirLib.EngineTypes.next = _menhir_stack;
22509 };
22510 };
22511 };
22512 } = _menhir_stack in
22513 let l : 'tv_comma_list_ident_or_const_ = Obj.magic l in
22514 let _startpos = _startpos__1_ in
22515 let _endpos = _endpos__4_ in
22516 let _v : 'tv_not_ceq =
22517 # 1946 "parser_cocci_menhir.mly"
22518 ( (if !Data.in_iso
22519 then failwith "constraints not allowed in iso file");
22520 (if !Data.in_generating
22521 then failwith "constraints not allowed in a generated rule file");
22522 l )
22523 # 22497 "parser_cocci_menhir.ml"
22524 in
22525 _menhir_env.MenhirLib.EngineTypes.stack <- {
22526 MenhirLib.EngineTypes.state = _menhir_s;
22527 MenhirLib.EngineTypes.semv = Obj.repr _v;
22528 MenhirLib.EngineTypes.startp = _startpos;
22529 MenhirLib.EngineTypes.endp = _endpos;
22530 MenhirLib.EngineTypes.next = _menhir_stack;
22531 });
22532 (fun _menhir_env ->
22533 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22534 let {
22535 MenhirLib.EngineTypes.state = _menhir_s;
22536 MenhirLib.EngineTypes.semv = ceq;
22537 MenhirLib.EngineTypes.startp = _startpos_ceq_;
22538 MenhirLib.EngineTypes.endp = _endpos_ceq_;
22539 MenhirLib.EngineTypes.next = _menhir_stack;
22540 } = _menhir_stack in
22541 let ceq : 'tv_not_ceq = Obj.magic ceq in
22542 let _startpos = _startpos_ceq_ in
22543 let _endpos = _endpos_ceq_ in
22544 let _v : 'tv_not_ceq_or_sub =
22545 # 1916 "parser_cocci_menhir.mly"
22546 (Ast0.NotExpCstrt ceq)
22547 # 22521 "parser_cocci_menhir.ml"
22548 in
22549 _menhir_env.MenhirLib.EngineTypes.stack <- {
22550 MenhirLib.EngineTypes.state = _menhir_s;
22551 MenhirLib.EngineTypes.semv = Obj.repr _v;
22552 MenhirLib.EngineTypes.startp = _startpos;
22553 MenhirLib.EngineTypes.endp = _endpos;
22554 MenhirLib.EngineTypes.next = _menhir_stack;
22555 });
22556 (fun _menhir_env ->
22557 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22558 let {
22559 MenhirLib.EngineTypes.state = _menhir_s;
22560 MenhirLib.EngineTypes.semv = s;
22561 MenhirLib.EngineTypes.startp = _startpos_s_;
22562 MenhirLib.EngineTypes.endp = _endpos_s_;
22563 MenhirLib.EngineTypes.next = _menhir_stack;
22564 } = _menhir_stack in
22565 let s : 'tv_sub = Obj.magic s in
22566 let _startpos = _startpos_s_ in
22567 let _endpos = _endpos_s_ in
22568 let _v : 'tv_not_ceq_or_sub =
22569 # 1917 "parser_cocci_menhir.mly"
22570 (Ast0.SubExpCstrt s)
22571 # 22545 "parser_cocci_menhir.ml"
22572 in
22573 _menhir_env.MenhirLib.EngineTypes.stack <- {
22574 MenhirLib.EngineTypes.state = _menhir_s;
22575 MenhirLib.EngineTypes.semv = Obj.repr _v;
22576 MenhirLib.EngineTypes.startp = _startpos;
22577 MenhirLib.EngineTypes.endp = _endpos;
22578 MenhirLib.EngineTypes.next = _menhir_stack;
22579 });
22580 (fun _menhir_env ->
22581 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22582 let {
22583 MenhirLib.EngineTypes.semv = i;
22584 MenhirLib.EngineTypes.startp = _startpos_i_;
22585 MenhirLib.EngineTypes.endp = _endpos_i_;
22586 MenhirLib.EngineTypes.next = {
22587 MenhirLib.EngineTypes.state = _menhir_s;
22588 MenhirLib.EngineTypes.startp = _startpos__1_;
22589 MenhirLib.EngineTypes.endp = _endpos__1_;
22590 MenhirLib.EngineTypes.next = _menhir_stack;
22591 };
22592 } = _menhir_stack in
22593 let i : 'tv_pure_ident = Obj.magic i in
22594 let _startpos = _startpos__1_ in
22595 let _endpos = _endpos_i_ in
22596 let _v : 'tv_not_eqe =
22597 # 1921 "parser_cocci_menhir.mly"
22598 ( (if !Data.in_iso
22599 then failwith "constraints not allowed in iso file");
22600 (if !Data.in_generating
22601 then failwith "constraints not allowed in a generated rule file");
22602 [Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i))))]
22603 )
22604 # 22578 "parser_cocci_menhir.ml"
22605 in
22606 _menhir_env.MenhirLib.EngineTypes.stack <- {
22607 MenhirLib.EngineTypes.state = _menhir_s;
22608 MenhirLib.EngineTypes.semv = Obj.repr _v;
22609 MenhirLib.EngineTypes.startp = _startpos;
22610 MenhirLib.EngineTypes.endp = _endpos;
22611 MenhirLib.EngineTypes.next = _menhir_stack;
22612 });
22613 (fun _menhir_env ->
22614 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22615 let {
22616 MenhirLib.EngineTypes.startp = _startpos__4_;
22617 MenhirLib.EngineTypes.endp = _endpos__4_;
22618 MenhirLib.EngineTypes.next = {
22619 MenhirLib.EngineTypes.semv = l;
22620 MenhirLib.EngineTypes.startp = _startpos_l_;
22621 MenhirLib.EngineTypes.endp = _endpos_l_;
22622 MenhirLib.EngineTypes.next = {
22623 MenhirLib.EngineTypes.startp = _startpos__2_;
22624 MenhirLib.EngineTypes.endp = _endpos__2_;
22625 MenhirLib.EngineTypes.next = {
22626 MenhirLib.EngineTypes.state = _menhir_s;
22627 MenhirLib.EngineTypes.startp = _startpos__1_;
22628 MenhirLib.EngineTypes.endp = _endpos__1_;
22629 MenhirLib.EngineTypes.next = _menhir_stack;
22630 };
22631 };
22632 };
22633 } = _menhir_stack in
22634 let l : 'tv_comma_list_pure_ident_ = Obj.magic l in
22635 let _startpos = _startpos__1_ in
22636 let _endpos = _endpos__4_ in
22637 let _v : 'tv_not_eqe =
22638 # 1928 "parser_cocci_menhir.mly"
22639 ( (if !Data.in_iso
22640 then failwith "constraints not allowed in iso file");
22641 (if !Data.in_generating
22642 then failwith "constraints not allowed in a generated rule file");
22643 List.map
22644 (function i ->
22645 Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))))
22646 l
22647 )
22648 # 22622 "parser_cocci_menhir.ml"
22649 in
22650 _menhir_env.MenhirLib.EngineTypes.stack <- {
22651 MenhirLib.EngineTypes.state = _menhir_s;
22652 MenhirLib.EngineTypes.semv = Obj.repr _v;
22653 MenhirLib.EngineTypes.startp = _startpos;
22654 MenhirLib.EngineTypes.endp = _endpos;
22655 MenhirLib.EngineTypes.next = _menhir_stack;
22656 });
22657 (fun _menhir_env ->
22658 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22659 let {
22660 MenhirLib.EngineTypes.semv = i;
22661 MenhirLib.EngineTypes.startp = _startpos_i_;
22662 MenhirLib.EngineTypes.endp = _endpos_i_;
22663 MenhirLib.EngineTypes.next = {
22664 MenhirLib.EngineTypes.state = _menhir_s;
22665 MenhirLib.EngineTypes.startp = _startpos__1_;
22666 MenhirLib.EngineTypes.endp = _endpos__1_;
22667 MenhirLib.EngineTypes.next = _menhir_stack;
22668 };
22669 } = _menhir_stack in
22670 let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
22671 let _startpos = _startpos__1_ in
22672 let _endpos = _endpos_i_ in
22673 let _v : 'tv_not_eqid =
22674 # 1878 "parser_cocci_menhir.mly"
22675 ( (if !Data.in_iso
22676 then failwith "constraints not allowed in iso file");
22677 (if !Data.in_generating
22678 (* pb: constraints not stored with metavars; too lazy to search for
22679 them in the pattern *)
22680 then failwith "constraints not allowed in a generated rule file");
22681 (match i with
22682 (Some rn,id) ->
22683 let i =
22684 P.check_inherited_constraint i
22685 (function mv -> Ast.MetaIdDecl(Ast.NONE,mv)) in
22686 Ast.IdNegIdSet([],[i])
22687 | (None,i) -> Ast.IdNegIdSet([i],[])) )
22688 # 22662 "parser_cocci_menhir.ml"
22689 in
22690 _menhir_env.MenhirLib.EngineTypes.stack <- {
22691 MenhirLib.EngineTypes.state = _menhir_s;
22692 MenhirLib.EngineTypes.semv = Obj.repr _v;
22693 MenhirLib.EngineTypes.startp = _startpos;
22694 MenhirLib.EngineTypes.endp = _endpos;
22695 MenhirLib.EngineTypes.next = _menhir_stack;
22696 });
22697 (fun _menhir_env ->
22698 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22699 let {
22700 MenhirLib.EngineTypes.startp = _startpos__4_;
22701 MenhirLib.EngineTypes.endp = _endpos__4_;
22702 MenhirLib.EngineTypes.next = {
22703 MenhirLib.EngineTypes.semv = l;
22704 MenhirLib.EngineTypes.startp = _startpos_l_;
22705 MenhirLib.EngineTypes.endp = _endpos_l_;
22706 MenhirLib.EngineTypes.next = {
22707 MenhirLib.EngineTypes.startp = _startpos__2_;
22708 MenhirLib.EngineTypes.endp = _endpos__2_;
22709 MenhirLib.EngineTypes.next = {
22710 MenhirLib.EngineTypes.state = _menhir_s;
22711 MenhirLib.EngineTypes.startp = _startpos__1_;
22712 MenhirLib.EngineTypes.endp = _endpos__1_;
22713 MenhirLib.EngineTypes.next = _menhir_stack;
22714 };
22715 };
22716 };
22717 } = _menhir_stack in
22718 let l : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic l in
22719 let _startpos = _startpos__1_ in
22720 let _endpos = _endpos__4_ in
22721 let _v : 'tv_not_eqid =
22722 # 1892 "parser_cocci_menhir.mly"
22723 ( (if !Data.in_iso
22724 then failwith "constraints not allowed in iso file");
22725 (if !Data.in_generating
22726 then failwith "constraints not allowed in a generated rule file");
22727 let (str,meta) =
22728 List.fold_left
22729 (function (str,meta) ->
22730 function
22731 (Some rn,id) as i ->
22732 let i =
22733 P.check_inherited_constraint i
22734 (function mv -> Ast.MetaIdDecl(Ast.NONE,mv)) in
22735 (str,i::meta)
22736 | (None,i) -> (i::str,meta))
22737 ([],[]) l in
22738 Ast.IdNegIdSet(str,meta)
22739 )
22740 # 22714 "parser_cocci_menhir.ml"
22741 in
22742 _menhir_env.MenhirLib.EngineTypes.stack <- {
22743 MenhirLib.EngineTypes.state = _menhir_s;
22744 MenhirLib.EngineTypes.semv = Obj.repr _v;
22745 MenhirLib.EngineTypes.startp = _startpos;
22746 MenhirLib.EngineTypes.endp = _endpos;
22747 MenhirLib.EngineTypes.next = _menhir_stack;
22748 });
22749 (fun _menhir_env ->
22750 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22751 let {
22752 MenhirLib.EngineTypes.semv = i;
22753 MenhirLib.EngineTypes.startp = _startpos_i_;
22754 MenhirLib.EngineTypes.endp = _endpos_i_;
22755 MenhirLib.EngineTypes.next = {
22756 MenhirLib.EngineTypes.state = _menhir_s;
22757 MenhirLib.EngineTypes.startp = _startpos__1_;
22758 MenhirLib.EngineTypes.endp = _endpos__1_;
22759 MenhirLib.EngineTypes.next = _menhir_stack;
22760 };
22761 } = _menhir_stack in
22762 let i : 'tv_meta_ident = Obj.magic i in
22763 let _startpos = _startpos__1_ in
22764 let _endpos = _endpos_i_ in
22765 let _v : 'tv_not_pos =
22766 # 1985 "parser_cocci_menhir.mly"
22767 ( (if !Data.in_iso
22768 then failwith "constraints not allowed in iso file");
22769 (if !Data.in_generating
22770 then failwith "constraints not allowed in a generated rule file");
22771 let i =
22772 P.check_inherited_constraint i
22773 (function mv -> Ast.MetaPosDecl(Ast.NONE,mv)) in
22774 [i] )
22775 # 22749 "parser_cocci_menhir.ml"
22776 in
22777 _menhir_env.MenhirLib.EngineTypes.stack <- {
22778 MenhirLib.EngineTypes.state = _menhir_s;
22779 MenhirLib.EngineTypes.semv = Obj.repr _v;
22780 MenhirLib.EngineTypes.startp = _startpos;
22781 MenhirLib.EngineTypes.endp = _endpos;
22782 MenhirLib.EngineTypes.next = _menhir_stack;
22783 });
22784 (fun _menhir_env ->
22785 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22786 let {
22787 MenhirLib.EngineTypes.startp = _startpos__4_;
22788 MenhirLib.EngineTypes.endp = _endpos__4_;
22789 MenhirLib.EngineTypes.next = {
22790 MenhirLib.EngineTypes.semv = l;
22791 MenhirLib.EngineTypes.startp = _startpos_l_;
22792 MenhirLib.EngineTypes.endp = _endpos_l_;
22793 MenhirLib.EngineTypes.next = {
22794 MenhirLib.EngineTypes.startp = _startpos__2_;
22795 MenhirLib.EngineTypes.endp = _endpos__2_;
22796 MenhirLib.EngineTypes.next = {
22797 MenhirLib.EngineTypes.state = _menhir_s;
22798 MenhirLib.EngineTypes.startp = _startpos__1_;
22799 MenhirLib.EngineTypes.endp = _endpos__1_;
22800 MenhirLib.EngineTypes.next = _menhir_stack;
22801 };
22802 };
22803 };
22804 } = _menhir_stack in
22805 let l : 'tv_comma_list_meta_ident_ = Obj.magic l in
22806 let _startpos = _startpos__1_ in
22807 let _endpos = _endpos__4_ in
22808 let _v : 'tv_not_pos =
22809 # 1994 "parser_cocci_menhir.mly"
22810 ( (if !Data.in_iso
22811 then failwith "constraints not allowed in iso file");
22812 (if !Data.in_generating
22813 then failwith "constraints not allowed in a generated rule file");
22814 List.map
22815 (function i ->
22816 P.check_inherited_constraint i
22817 (function mv -> Ast.MetaPosDecl(Ast.NONE,mv)))
22818 l )
22819 # 22793 "parser_cocci_menhir.ml"
22820 in
22821 _menhir_env.MenhirLib.EngineTypes.stack <- {
22822 MenhirLib.EngineTypes.state = _menhir_s;
22823 MenhirLib.EngineTypes.semv = Obj.repr _v;
22824 MenhirLib.EngineTypes.startp = _startpos;
22825 MenhirLib.EngineTypes.endp = _endpos;
22826 MenhirLib.EngineTypes.next = _menhir_stack;
22827 });
22828 (fun _menhir_env ->
22829 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22830 let {
22831 MenhirLib.EngineTypes.state = _menhir_s;
22832 MenhirLib.EngineTypes.semv = _1;
22833 MenhirLib.EngineTypes.startp = _startpos__1_;
22834 MenhirLib.EngineTypes.endp = _endpos__1_;
22835 MenhirLib.EngineTypes.next = _menhir_stack;
22836 } = _menhir_stack in
22837 let _1 : 'tv_decl = Obj.magic _1 in
22838 let _startpos = _startpos__1_ in
22839 let _endpos = _endpos__1_ in
22840 let _v : 'tv_one_dec_decl_ =
22841 # 2082 "parser_cocci_menhir.mly"
22842 ( _1 )
22843 # 22817 "parser_cocci_menhir.ml"
22844 in
22845 _menhir_env.MenhirLib.EngineTypes.stack <- {
22846 MenhirLib.EngineTypes.state = _menhir_s;
22847 MenhirLib.EngineTypes.semv = Obj.repr _v;
22848 MenhirLib.EngineTypes.startp = _startpos;
22849 MenhirLib.EngineTypes.endp = _endpos;
22850 MenhirLib.EngineTypes.next = _menhir_stack;
22851 });
22852 (fun _menhir_env ->
22853 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22854 let {
22855 MenhirLib.EngineTypes.state = _menhir_s;
22856 MenhirLib.EngineTypes.semv = _1;
22857 MenhirLib.EngineTypes.startp = _startpos__1_;
22858 MenhirLib.EngineTypes.endp = _endpos__1_;
22859 MenhirLib.EngineTypes.next = _menhir_stack;
22860 } = _menhir_stack in
22861 let _1 : (
22862 # 110 "parser_cocci_menhir.mly"
22863 (Parse_aux.list_info)
22864 # 22838 "parser_cocci_menhir.ml"
22865 ) = Obj.magic _1 in
22866 let _startpos = _startpos__1_ in
22867 let _endpos = _endpos__1_ in
22868 let _v : 'tv_one_dec_decl_ =
22869 # 2084 "parser_cocci_menhir.mly"
22870 ( let (nm,lenname,pure,clt) = _1 in
22871 let nm = P.clt2mcode nm clt in
22872 let lenname =
22873 match lenname with
22874 Ast.AnyLen -> Ast0.AnyListLen
22875 | Ast.MetaLen nm -> Ast0.MetaListLen(P.clt2mcode nm clt)
22876 | Ast.CstLen n -> Ast0.CstListLen n in
22877 Ast0.wrap(Ast0.MetaParamList(nm,lenname,pure)) )
22878 # 22852 "parser_cocci_menhir.ml"
22879 in
22880 _menhir_env.MenhirLib.EngineTypes.stack <- {
22881 MenhirLib.EngineTypes.state = _menhir_s;
22882 MenhirLib.EngineTypes.semv = Obj.repr _v;
22883 MenhirLib.EngineTypes.startp = _startpos;
22884 MenhirLib.EngineTypes.endp = _endpos;
22885 MenhirLib.EngineTypes.next = _menhir_stack;
22886 });
22887 (fun _menhir_env ->
22888 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22889 let {
22890 MenhirLib.EngineTypes.state = _menhir_s;
22891 MenhirLib.EngineTypes.semv = _1;
22892 MenhirLib.EngineTypes.startp = _startpos__1_;
22893 MenhirLib.EngineTypes.endp = _endpos__1_;
22894 MenhirLib.EngineTypes.next = _menhir_stack;
22895 } = _menhir_stack in
22896 let _1 : 'tv_name_opt_decl = Obj.magic _1 in
22897 let _startpos = _startpos__1_ in
22898 let _endpos = _endpos__1_ in
22899 let _v : 'tv_one_dec_name_opt_decl_ =
22900 # 2082 "parser_cocci_menhir.mly"
22901 ( _1 )
22902 # 22876 "parser_cocci_menhir.ml"
22903 in
22904 _menhir_env.MenhirLib.EngineTypes.stack <- {
22905 MenhirLib.EngineTypes.state = _menhir_s;
22906 MenhirLib.EngineTypes.semv = Obj.repr _v;
22907 MenhirLib.EngineTypes.startp = _startpos;
22908 MenhirLib.EngineTypes.endp = _endpos;
22909 MenhirLib.EngineTypes.next = _menhir_stack;
22910 });
22911 (fun _menhir_env ->
22912 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22913 let {
22914 MenhirLib.EngineTypes.state = _menhir_s;
22915 MenhirLib.EngineTypes.semv = _1;
22916 MenhirLib.EngineTypes.startp = _startpos__1_;
22917 MenhirLib.EngineTypes.endp = _endpos__1_;
22918 MenhirLib.EngineTypes.next = _menhir_stack;
22919 } = _menhir_stack in
22920 let _1 : (
22921 # 110 "parser_cocci_menhir.mly"
22922 (Parse_aux.list_info)
22923 # 22897 "parser_cocci_menhir.ml"
22924 ) = Obj.magic _1 in
22925 let _startpos = _startpos__1_ in
22926 let _endpos = _endpos__1_ in
22927 let _v : 'tv_one_dec_name_opt_decl_ =
22928 # 2084 "parser_cocci_menhir.mly"
22929 ( let (nm,lenname,pure,clt) = _1 in
22930 let nm = P.clt2mcode nm clt in
22931 let lenname =
22932 match lenname with
22933 Ast.AnyLen -> Ast0.AnyListLen
22934 | Ast.MetaLen nm -> Ast0.MetaListLen(P.clt2mcode nm clt)
22935 | Ast.CstLen n -> Ast0.CstListLen n in
22936 Ast0.wrap(Ast0.MetaParamList(nm,lenname,pure)) )
22937 # 22911 "parser_cocci_menhir.ml"
22938 in
22939 _menhir_env.MenhirLib.EngineTypes.stack <- {
22940 MenhirLib.EngineTypes.state = _menhir_s;
22941 MenhirLib.EngineTypes.semv = Obj.repr _v;
22942 MenhirLib.EngineTypes.startp = _startpos;
22943 MenhirLib.EngineTypes.endp = _endpos;
22944 MenhirLib.EngineTypes.next = _menhir_stack;
22945 });
22946 (fun _menhir_env ->
22947 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22948 let {
22949 MenhirLib.EngineTypes.semv = pv;
22950 MenhirLib.EngineTypes.startp = _startpos_pv_;
22951 MenhirLib.EngineTypes.endp = _endpos_pv_;
22952 MenhirLib.EngineTypes.next = {
22953 MenhirLib.EngineTypes.state = _menhir_s;
22954 MenhirLib.EngineTypes.semv = t;
22955 MenhirLib.EngineTypes.startp = _startpos_t_;
22956 MenhirLib.EngineTypes.endp = _endpos_t_;
22957 MenhirLib.EngineTypes.next = _menhir_stack;
22958 };
22959 } = _menhir_stack in
22960 let pv : (
22961 # 153 "parser_cocci_menhir.mly"
22962 (Data.clt)
22963 # 22937 "parser_cocci_menhir.ml"
22964 ) = Obj.magic pv in
22965 let t : 'tv_ctype = Obj.magic t in
22966 let _startpos = _startpos_t_ in
22967 let _endpos = _endpos_pv_ in
22968 let _v : 'tv_one_decl_var =
22969 # 1276 "parser_cocci_menhir.mly"
22970 ( Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv)) )
22971 # 22945 "parser_cocci_menhir.ml"
22972 in
22973 _menhir_env.MenhirLib.EngineTypes.stack <- {
22974 MenhirLib.EngineTypes.state = _menhir_s;
22975 MenhirLib.EngineTypes.semv = Obj.repr _v;
22976 MenhirLib.EngineTypes.startp = _startpos;
22977 MenhirLib.EngineTypes.endp = _endpos;
22978 MenhirLib.EngineTypes.next = _menhir_stack;
22979 });
22980 (fun _menhir_env ->
22981 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
22982 let {
22983 MenhirLib.EngineTypes.state = _menhir_s;
22984 MenhirLib.EngineTypes.semv = _1;
22985 MenhirLib.EngineTypes.startp = _startpos__1_;
22986 MenhirLib.EngineTypes.endp = _endpos__1_;
22987 MenhirLib.EngineTypes.next = _menhir_stack;
22988 } = _menhir_stack in
22989 let _1 : (
22990 # 109 "parser_cocci_menhir.mly"
22991 (Parse_aux.info)
22992 # 22966 "parser_cocci_menhir.ml"
22993 ) = Obj.magic _1 in
22994 let _startpos = _startpos__1_ in
22995 let _endpos = _endpos__1_ in
22996 let _v : 'tv_one_decl_var =
22997 # 1277 "parser_cocci_menhir.mly"
22998 ( P.meta_decl _1 )
22999 # 22973 "parser_cocci_menhir.ml"
23000 in
23001 _menhir_env.MenhirLib.EngineTypes.stack <- {
23002 MenhirLib.EngineTypes.state = _menhir_s;
23003 MenhirLib.EngineTypes.semv = Obj.repr _v;
23004 MenhirLib.EngineTypes.startp = _startpos;
23005 MenhirLib.EngineTypes.endp = _endpos;
23006 MenhirLib.EngineTypes.next = _menhir_stack;
23007 });
23008 (fun _menhir_env ->
23009 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23010 let {
23011 MenhirLib.EngineTypes.semv = pv;
23012 MenhirLib.EngineTypes.startp = _startpos_pv_;
23013 MenhirLib.EngineTypes.endp = _endpos_pv_;
23014 MenhirLib.EngineTypes.next = {
23015 MenhirLib.EngineTypes.semv = d;
23016 MenhirLib.EngineTypes.startp = _startpos_d_;
23017 MenhirLib.EngineTypes.endp = _endpos_d_;
23018 MenhirLib.EngineTypes.next = {
23019 MenhirLib.EngineTypes.state = _menhir_s;
23020 MenhirLib.EngineTypes.semv = t;
23021 MenhirLib.EngineTypes.startp = _startpos_t_;
23022 MenhirLib.EngineTypes.endp = _endpos_t_;
23023 MenhirLib.EngineTypes.next = _menhir_stack;
23024 };
23025 };
23026 } = _menhir_stack in
23027 let pv : (
23028 # 153 "parser_cocci_menhir.mly"
23029 (Data.clt)
23030 # 23004 "parser_cocci_menhir.ml"
23031 ) = Obj.magic pv in
23032 let d : 'tv_d_ident = Obj.magic d in
23033 let t : 'tv_ctype = Obj.magic t in
23034 let _startpos = _startpos_t_ in
23035 let _endpos = _endpos_pv_ in
23036 let _v : 'tv_one_decl_var = let s =
23037
23038 # 39 "standard.mly"
23039 ( None )
23040 # 23014 "parser_cocci_menhir.ml"
23041
23042 in
23043
23044 # 1279 "parser_cocci_menhir.mly"
23045 ( let (id,fn) = d in
23046 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
23047 # 23021 "parser_cocci_menhir.ml"
23048 in
23049 _menhir_env.MenhirLib.EngineTypes.stack <- {
23050 MenhirLib.EngineTypes.state = _menhir_s;
23051 MenhirLib.EngineTypes.semv = Obj.repr _v;
23052 MenhirLib.EngineTypes.startp = _startpos;
23053 MenhirLib.EngineTypes.endp = _endpos;
23054 MenhirLib.EngineTypes.next = _menhir_stack;
23055 });
23056 (fun _menhir_env ->
23057 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23058 let {
23059 MenhirLib.EngineTypes.semv = pv;
23060 MenhirLib.EngineTypes.startp = _startpos_pv_;
23061 MenhirLib.EngineTypes.endp = _endpos_pv_;
23062 MenhirLib.EngineTypes.next = {
23063 MenhirLib.EngineTypes.semv = d;
23064 MenhirLib.EngineTypes.startp = _startpos_d_;
23065 MenhirLib.EngineTypes.endp = _endpos_d_;
23066 MenhirLib.EngineTypes.next = {
23067 MenhirLib.EngineTypes.semv = t;
23068 MenhirLib.EngineTypes.startp = _startpos_t_;
23069 MenhirLib.EngineTypes.endp = _endpos_t_;
23070 MenhirLib.EngineTypes.next = {
23071 MenhirLib.EngineTypes.state = _menhir_s;
23072 MenhirLib.EngineTypes.semv = x0;
23073 MenhirLib.EngineTypes.startp = _startpos_x0_;
23074 MenhirLib.EngineTypes.endp = _endpos_x0_;
23075 MenhirLib.EngineTypes.next = _menhir_stack;
23076 };
23077 };
23078 };
23079 } = _menhir_stack in
23080 let pv : (
23081 # 153 "parser_cocci_menhir.mly"
23082 (Data.clt)
23083 # 23057 "parser_cocci_menhir.ml"
23084 ) = Obj.magic pv in
23085 let d : 'tv_d_ident = Obj.magic d in
23086 let t : 'tv_ctype = Obj.magic t in
23087 let x0 : 'tv_storage = Obj.magic x0 in
23088 let _startpos = _startpos_x0_ in
23089 let _endpos = _endpos_pv_ in
23090 let _v : 'tv_one_decl_var = let s =
23091 let x = x0 in
23092
23093 # 41 "standard.mly"
23094 ( Some x )
23095 # 23069 "parser_cocci_menhir.ml"
23096
23097 in
23098
23099 # 1279 "parser_cocci_menhir.mly"
23100 ( let (id,fn) = d in
23101 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
23102 # 23076 "parser_cocci_menhir.ml"
23103 in
23104 _menhir_env.MenhirLib.EngineTypes.stack <- {
23105 MenhirLib.EngineTypes.state = _menhir_s;
23106 MenhirLib.EngineTypes.semv = Obj.repr _v;
23107 MenhirLib.EngineTypes.startp = _startpos;
23108 MenhirLib.EngineTypes.endp = _endpos;
23109 MenhirLib.EngineTypes.next = _menhir_stack;
23110 });
23111 (fun _menhir_env ->
23112 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23113 let {
23114 MenhirLib.EngineTypes.state = _menhir_s;
23115 MenhirLib.EngineTypes.semv = f;
23116 MenhirLib.EngineTypes.startp = _startpos_f_;
23117 MenhirLib.EngineTypes.endp = _endpos_f_;
23118 MenhirLib.EngineTypes.next = _menhir_stack;
23119 } = _menhir_stack in
23120 let f : 'tv_funproto = Obj.magic f in
23121 let _startpos = _startpos_f_ in
23122 let _endpos = _endpos_f_ in
23123 let _v : 'tv_one_decl_var =
23124 # 1281 "parser_cocci_menhir.mly"
23125 ( f )
23126 # 23100 "parser_cocci_menhir.ml"
23127 in
23128 _menhir_env.MenhirLib.EngineTypes.stack <- {
23129 MenhirLib.EngineTypes.state = _menhir_s;
23130 MenhirLib.EngineTypes.semv = Obj.repr _v;
23131 MenhirLib.EngineTypes.startp = _startpos;
23132 MenhirLib.EngineTypes.endp = _endpos;
23133 MenhirLib.EngineTypes.next = _menhir_stack;
23134 });
23135 (fun _menhir_env ->
23136 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23137 let {
23138 MenhirLib.EngineTypes.semv = pv;
23139 MenhirLib.EngineTypes.startp = _startpos_pv_;
23140 MenhirLib.EngineTypes.endp = _endpos_pv_;
23141 MenhirLib.EngineTypes.next = {
23142 MenhirLib.EngineTypes.semv = e;
23143 MenhirLib.EngineTypes.startp = _startpos_e_;
23144 MenhirLib.EngineTypes.endp = _endpos_e_;
23145 MenhirLib.EngineTypes.next = {
23146 MenhirLib.EngineTypes.semv = q;
23147 MenhirLib.EngineTypes.startp = _startpos_q_;
23148 MenhirLib.EngineTypes.endp = _endpos_q_;
23149 MenhirLib.EngineTypes.next = {
23150 MenhirLib.EngineTypes.semv = d;
23151 MenhirLib.EngineTypes.startp = _startpos_d_;
23152 MenhirLib.EngineTypes.endp = _endpos_d_;
23153 MenhirLib.EngineTypes.next = {
23154 MenhirLib.EngineTypes.state = _menhir_s;
23155 MenhirLib.EngineTypes.semv = t;
23156 MenhirLib.EngineTypes.startp = _startpos_t_;
23157 MenhirLib.EngineTypes.endp = _endpos_t_;
23158 MenhirLib.EngineTypes.next = _menhir_stack;
23159 };
23160 };
23161 };
23162 };
23163 } = _menhir_stack in
23164 let pv : (
23165 # 153 "parser_cocci_menhir.mly"
23166 (Data.clt)
23167 # 23141 "parser_cocci_menhir.ml"
23168 ) = Obj.magic pv in
23169 let e : 'tv_initialize = Obj.magic e in
23170 let q : (
23171 # 153 "parser_cocci_menhir.mly"
23172 (Data.clt)
23173 # 23147 "parser_cocci_menhir.ml"
23174 ) = Obj.magic q in
23175 let d : 'tv_d_ident = Obj.magic d in
23176 let t : 'tv_ctype = Obj.magic t in
23177 let _startpos = _startpos_t_ in
23178 let _endpos = _endpos_pv_ in
23179 let _v : 'tv_one_decl_var = let s =
23180
23181 # 39 "standard.mly"
23182 ( None )
23183 # 23157 "parser_cocci_menhir.ml"
23184
23185 in
23186
23187 # 1283 "parser_cocci_menhir.mly"
23188 ( let (id,fn) = d in
23189 Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) )
23190 # 23164 "parser_cocci_menhir.ml"
23191 in
23192 _menhir_env.MenhirLib.EngineTypes.stack <- {
23193 MenhirLib.EngineTypes.state = _menhir_s;
23194 MenhirLib.EngineTypes.semv = Obj.repr _v;
23195 MenhirLib.EngineTypes.startp = _startpos;
23196 MenhirLib.EngineTypes.endp = _endpos;
23197 MenhirLib.EngineTypes.next = _menhir_stack;
23198 });
23199 (fun _menhir_env ->
23200 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23201 let {
23202 MenhirLib.EngineTypes.semv = pv;
23203 MenhirLib.EngineTypes.startp = _startpos_pv_;
23204 MenhirLib.EngineTypes.endp = _endpos_pv_;
23205 MenhirLib.EngineTypes.next = {
23206 MenhirLib.EngineTypes.semv = e;
23207 MenhirLib.EngineTypes.startp = _startpos_e_;
23208 MenhirLib.EngineTypes.endp = _endpos_e_;
23209 MenhirLib.EngineTypes.next = {
23210 MenhirLib.EngineTypes.semv = q;
23211 MenhirLib.EngineTypes.startp = _startpos_q_;
23212 MenhirLib.EngineTypes.endp = _endpos_q_;
23213 MenhirLib.EngineTypes.next = {
23214 MenhirLib.EngineTypes.semv = d;
23215 MenhirLib.EngineTypes.startp = _startpos_d_;
23216 MenhirLib.EngineTypes.endp = _endpos_d_;
23217 MenhirLib.EngineTypes.next = {
23218 MenhirLib.EngineTypes.semv = t;
23219 MenhirLib.EngineTypes.startp = _startpos_t_;
23220 MenhirLib.EngineTypes.endp = _endpos_t_;
23221 MenhirLib.EngineTypes.next = {
23222 MenhirLib.EngineTypes.state = _menhir_s;
23223 MenhirLib.EngineTypes.semv = x0;
23224 MenhirLib.EngineTypes.startp = _startpos_x0_;
23225 MenhirLib.EngineTypes.endp = _endpos_x0_;
23226 MenhirLib.EngineTypes.next = _menhir_stack;
23227 };
23228 };
23229 };
23230 };
23231 };
23232 } = _menhir_stack in
23233 let pv : (
23234 # 153 "parser_cocci_menhir.mly"
23235 (Data.clt)
23236 # 23210 "parser_cocci_menhir.ml"
23237 ) = Obj.magic pv in
23238 let e : 'tv_initialize = Obj.magic e in
23239 let q : (
23240 # 153 "parser_cocci_menhir.mly"
23241 (Data.clt)
23242 # 23216 "parser_cocci_menhir.ml"
23243 ) = Obj.magic q in
23244 let d : 'tv_d_ident = Obj.magic d in
23245 let t : 'tv_ctype = Obj.magic t in
23246 let x0 : 'tv_storage = Obj.magic x0 in
23247 let _startpos = _startpos_x0_ in
23248 let _endpos = _endpos_pv_ in
23249 let _v : 'tv_one_decl_var = let s =
23250 let x = x0 in
23251
23252 # 41 "standard.mly"
23253 ( Some x )
23254 # 23228 "parser_cocci_menhir.ml"
23255
23256 in
23257
23258 # 1283 "parser_cocci_menhir.mly"
23259 ( let (id,fn) = d in
23260 Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) )
23261 # 23235 "parser_cocci_menhir.ml"
23262 in
23263 _menhir_env.MenhirLib.EngineTypes.stack <- {
23264 MenhirLib.EngineTypes.state = _menhir_s;
23265 MenhirLib.EngineTypes.semv = Obj.repr _v;
23266 MenhirLib.EngineTypes.startp = _startpos;
23267 MenhirLib.EngineTypes.endp = _endpos;
23268 MenhirLib.EngineTypes.next = _menhir_stack;
23269 });
23270 (fun _menhir_env ->
23271 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23272 let {
23273 MenhirLib.EngineTypes.semv = pv;
23274 MenhirLib.EngineTypes.startp = _startpos_pv_;
23275 MenhirLib.EngineTypes.endp = _endpos_pv_;
23276 MenhirLib.EngineTypes.next = {
23277 MenhirLib.EngineTypes.semv = d;
23278 MenhirLib.EngineTypes.startp = _startpos_d_;
23279 MenhirLib.EngineTypes.endp = _endpos_d_;
23280 MenhirLib.EngineTypes.next = {
23281 MenhirLib.EngineTypes.state = _menhir_s;
23282 MenhirLib.EngineTypes.semv = i;
23283 MenhirLib.EngineTypes.startp = _startpos_i_;
23284 MenhirLib.EngineTypes.endp = _endpos_i_;
23285 MenhirLib.EngineTypes.next = _menhir_stack;
23286 };
23287 };
23288 } = _menhir_stack in
23289 let pv : (
23290 # 153 "parser_cocci_menhir.mly"
23291 (Data.clt)
23292 # 23266 "parser_cocci_menhir.ml"
23293 ) = Obj.magic pv in
23294 let d : 'tv_d_ident = Obj.magic d in
23295 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
23296 let _startpos = _startpos_i_ in
23297 let _endpos = _endpos_pv_ in
23298 let _v : 'tv_one_decl_var = let cv =
23299
23300 # 39 "standard.mly"
23301 ( None )
23302 # 23276 "parser_cocci_menhir.ml"
23303
23304 in
23305 let s =
23306
23307 # 39 "standard.mly"
23308 ( None )
23309 # 23283 "parser_cocci_menhir.ml"
23310
23311 in
23312
23313 # 1288 "parser_cocci_menhir.mly"
23314 ( let (id,fn) = d in
23315 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
23316 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
23317 # 23291 "parser_cocci_menhir.ml"
23318 in
23319 _menhir_env.MenhirLib.EngineTypes.stack <- {
23320 MenhirLib.EngineTypes.state = _menhir_s;
23321 MenhirLib.EngineTypes.semv = Obj.repr _v;
23322 MenhirLib.EngineTypes.startp = _startpos;
23323 MenhirLib.EngineTypes.endp = _endpos;
23324 MenhirLib.EngineTypes.next = _menhir_stack;
23325 });
23326 (fun _menhir_env ->
23327 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23328 let {
23329 MenhirLib.EngineTypes.semv = pv;
23330 MenhirLib.EngineTypes.startp = _startpos_pv_;
23331 MenhirLib.EngineTypes.endp = _endpos_pv_;
23332 MenhirLib.EngineTypes.next = {
23333 MenhirLib.EngineTypes.semv = d;
23334 MenhirLib.EngineTypes.startp = _startpos_d_;
23335 MenhirLib.EngineTypes.endp = _endpos_d_;
23336 MenhirLib.EngineTypes.next = {
23337 MenhirLib.EngineTypes.semv = i;
23338 MenhirLib.EngineTypes.startp = _startpos_i_;
23339 MenhirLib.EngineTypes.endp = _endpos_i_;
23340 MenhirLib.EngineTypes.next = {
23341 MenhirLib.EngineTypes.state = _menhir_s;
23342 MenhirLib.EngineTypes.semv = x0;
23343 MenhirLib.EngineTypes.startp = _startpos_x0_;
23344 MenhirLib.EngineTypes.endp = _endpos_x0_;
23345 MenhirLib.EngineTypes.next = _menhir_stack;
23346 };
23347 };
23348 };
23349 } = _menhir_stack in
23350 let pv : (
23351 # 153 "parser_cocci_menhir.mly"
23352 (Data.clt)
23353 # 23327 "parser_cocci_menhir.ml"
23354 ) = Obj.magic pv in
23355 let d : 'tv_d_ident = Obj.magic d in
23356 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
23357 let x0 : 'tv_const_vol = Obj.magic x0 in
23358 let _startpos = _startpos_x0_ in
23359 let _endpos = _endpos_pv_ in
23360 let _v : 'tv_one_decl_var = let cv =
23361 let x = x0 in
23362
23363 # 41 "standard.mly"
23364 ( Some x )
23365 # 23339 "parser_cocci_menhir.ml"
23366
23367 in
23368 let s =
23369
23370 # 39 "standard.mly"
23371 ( None )
23372 # 23346 "parser_cocci_menhir.ml"
23373
23374 in
23375
23376 # 1288 "parser_cocci_menhir.mly"
23377 ( let (id,fn) = d in
23378 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
23379 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
23380 # 23354 "parser_cocci_menhir.ml"
23381 in
23382 _menhir_env.MenhirLib.EngineTypes.stack <- {
23383 MenhirLib.EngineTypes.state = _menhir_s;
23384 MenhirLib.EngineTypes.semv = Obj.repr _v;
23385 MenhirLib.EngineTypes.startp = _startpos;
23386 MenhirLib.EngineTypes.endp = _endpos;
23387 MenhirLib.EngineTypes.next = _menhir_stack;
23388 });
23389 (fun _menhir_env ->
23390 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23391 let {
23392 MenhirLib.EngineTypes.semv = pv;
23393 MenhirLib.EngineTypes.startp = _startpos_pv_;
23394 MenhirLib.EngineTypes.endp = _endpos_pv_;
23395 MenhirLib.EngineTypes.next = {
23396 MenhirLib.EngineTypes.semv = d;
23397 MenhirLib.EngineTypes.startp = _startpos_d_;
23398 MenhirLib.EngineTypes.endp = _endpos_d_;
23399 MenhirLib.EngineTypes.next = {
23400 MenhirLib.EngineTypes.semv = i;
23401 MenhirLib.EngineTypes.startp = _startpos_i_;
23402 MenhirLib.EngineTypes.endp = _endpos_i_;
23403 MenhirLib.EngineTypes.next = {
23404 MenhirLib.EngineTypes.state = _menhir_s;
23405 MenhirLib.EngineTypes.semv = x0;
23406 MenhirLib.EngineTypes.startp = _startpos_x0_;
23407 MenhirLib.EngineTypes.endp = _endpos_x0_;
23408 MenhirLib.EngineTypes.next = _menhir_stack;
23409 };
23410 };
23411 };
23412 } = _menhir_stack in
23413 let pv : (
23414 # 153 "parser_cocci_menhir.mly"
23415 (Data.clt)
23416 # 23390 "parser_cocci_menhir.ml"
23417 ) = Obj.magic pv in
23418 let d : 'tv_d_ident = Obj.magic d in
23419 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
23420 let x0 : 'tv_storage = Obj.magic x0 in
23421 let _startpos = _startpos_x0_ in
23422 let _endpos = _endpos_pv_ in
23423 let _v : 'tv_one_decl_var = let cv =
23424
23425 # 39 "standard.mly"
23426 ( None )
23427 # 23401 "parser_cocci_menhir.ml"
23428
23429 in
23430 let s =
23431 let x = x0 in
23432
23433 # 41 "standard.mly"
23434 ( Some x )
23435 # 23409 "parser_cocci_menhir.ml"
23436
23437 in
23438
23439 # 1288 "parser_cocci_menhir.mly"
23440 ( let (id,fn) = d in
23441 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
23442 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
23443 # 23417 "parser_cocci_menhir.ml"
23444 in
23445 _menhir_env.MenhirLib.EngineTypes.stack <- {
23446 MenhirLib.EngineTypes.state = _menhir_s;
23447 MenhirLib.EngineTypes.semv = Obj.repr _v;
23448 MenhirLib.EngineTypes.startp = _startpos;
23449 MenhirLib.EngineTypes.endp = _endpos;
23450 MenhirLib.EngineTypes.next = _menhir_stack;
23451 });
23452 (fun _menhir_env ->
23453 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23454 let {
23455 MenhirLib.EngineTypes.semv = pv;
23456 MenhirLib.EngineTypes.startp = _startpos_pv_;
23457 MenhirLib.EngineTypes.endp = _endpos_pv_;
23458 MenhirLib.EngineTypes.next = {
23459 MenhirLib.EngineTypes.semv = d;
23460 MenhirLib.EngineTypes.startp = _startpos_d_;
23461 MenhirLib.EngineTypes.endp = _endpos_d_;
23462 MenhirLib.EngineTypes.next = {
23463 MenhirLib.EngineTypes.semv = i;
23464 MenhirLib.EngineTypes.startp = _startpos_i_;
23465 MenhirLib.EngineTypes.endp = _endpos_i_;
23466 MenhirLib.EngineTypes.next = {
23467 MenhirLib.EngineTypes.semv = x1;
23468 MenhirLib.EngineTypes.startp = _startpos_x1_;
23469 MenhirLib.EngineTypes.endp = _endpos_x1_;
23470 MenhirLib.EngineTypes.next = {
23471 MenhirLib.EngineTypes.state = _menhir_s;
23472 MenhirLib.EngineTypes.semv = x0;
23473 MenhirLib.EngineTypes.startp = _startpos_x0_;
23474 MenhirLib.EngineTypes.endp = _endpos_x0_;
23475 MenhirLib.EngineTypes.next = _menhir_stack;
23476 };
23477 };
23478 };
23479 };
23480 } = _menhir_stack in
23481 let pv : (
23482 # 153 "parser_cocci_menhir.mly"
23483 (Data.clt)
23484 # 23458 "parser_cocci_menhir.ml"
23485 ) = Obj.magic pv in
23486 let d : 'tv_d_ident = Obj.magic d in
23487 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
23488 let x1 : 'tv_const_vol = Obj.magic x1 in
23489 let x0 : 'tv_storage = Obj.magic x0 in
23490 let _startpos = _startpos_x0_ in
23491 let _endpos = _endpos_pv_ in
23492 let _v : 'tv_one_decl_var = let cv =
23493 let x = x1 in
23494
23495 # 41 "standard.mly"
23496 ( Some x )
23497 # 23471 "parser_cocci_menhir.ml"
23498
23499 in
23500 let s =
23501 let x = x0 in
23502
23503 # 41 "standard.mly"
23504 ( Some x )
23505 # 23479 "parser_cocci_menhir.ml"
23506
23507 in
23508
23509 # 1288 "parser_cocci_menhir.mly"
23510 ( let (id,fn) = d in
23511 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
23512 Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
23513 # 23487 "parser_cocci_menhir.ml"
23514 in
23515 _menhir_env.MenhirLib.EngineTypes.stack <- {
23516 MenhirLib.EngineTypes.state = _menhir_s;
23517 MenhirLib.EngineTypes.semv = Obj.repr _v;
23518 MenhirLib.EngineTypes.startp = _startpos;
23519 MenhirLib.EngineTypes.endp = _endpos;
23520 MenhirLib.EngineTypes.next = _menhir_stack;
23521 });
23522 (fun _menhir_env ->
23523 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23524 let {
23525 MenhirLib.EngineTypes.semv = pv;
23526 MenhirLib.EngineTypes.startp = _startpos_pv_;
23527 MenhirLib.EngineTypes.endp = _endpos_pv_;
23528 MenhirLib.EngineTypes.next = {
23529 MenhirLib.EngineTypes.semv = e;
23530 MenhirLib.EngineTypes.startp = _startpos_e_;
23531 MenhirLib.EngineTypes.endp = _endpos_e_;
23532 MenhirLib.EngineTypes.next = {
23533 MenhirLib.EngineTypes.semv = q;
23534 MenhirLib.EngineTypes.startp = _startpos_q_;
23535 MenhirLib.EngineTypes.endp = _endpos_q_;
23536 MenhirLib.EngineTypes.next = {
23537 MenhirLib.EngineTypes.semv = d;
23538 MenhirLib.EngineTypes.startp = _startpos_d_;
23539 MenhirLib.EngineTypes.endp = _endpos_d_;
23540 MenhirLib.EngineTypes.next = {
23541 MenhirLib.EngineTypes.state = _menhir_s;
23542 MenhirLib.EngineTypes.semv = i;
23543 MenhirLib.EngineTypes.startp = _startpos_i_;
23544 MenhirLib.EngineTypes.endp = _endpos_i_;
23545 MenhirLib.EngineTypes.next = _menhir_stack;
23546 };
23547 };
23548 };
23549 };
23550 } = _menhir_stack in
23551 let pv : (
23552 # 153 "parser_cocci_menhir.mly"
23553 (Data.clt)
23554 # 23528 "parser_cocci_menhir.ml"
23555 ) = Obj.magic pv in
23556 let e : 'tv_initialize = Obj.magic e in
23557 let q : (
23558 # 153 "parser_cocci_menhir.mly"
23559 (Data.clt)
23560 # 23534 "parser_cocci_menhir.ml"
23561 ) = Obj.magic q in
23562 let d : 'tv_d_ident = Obj.magic d in
23563 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
23564 let _startpos = _startpos_i_ in
23565 let _endpos = _endpos_pv_ in
23566 let _v : 'tv_one_decl_var = let cv =
23567
23568 # 39 "standard.mly"
23569 ( None )
23570 # 23544 "parser_cocci_menhir.ml"
23571
23572 in
23573 let s =
23574
23575 # 39 "standard.mly"
23576 ( None )
23577 # 23551 "parser_cocci_menhir.ml"
23578
23579 in
23580
23581 # 1293 "parser_cocci_menhir.mly"
23582 ( let (id,fn) = d in
23583 !Data.add_type_name (P.id2name i);
23584 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
23585 Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
23586 P.clt2mcode ";" pv)) )
23587 # 23561 "parser_cocci_menhir.ml"
23588 in
23589 _menhir_env.MenhirLib.EngineTypes.stack <- {
23590 MenhirLib.EngineTypes.state = _menhir_s;
23591 MenhirLib.EngineTypes.semv = Obj.repr _v;
23592 MenhirLib.EngineTypes.startp = _startpos;
23593 MenhirLib.EngineTypes.endp = _endpos;
23594 MenhirLib.EngineTypes.next = _menhir_stack;
23595 });
23596 (fun _menhir_env ->
23597 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23598 let {
23599 MenhirLib.EngineTypes.semv = pv;
23600 MenhirLib.EngineTypes.startp = _startpos_pv_;
23601 MenhirLib.EngineTypes.endp = _endpos_pv_;
23602 MenhirLib.EngineTypes.next = {
23603 MenhirLib.EngineTypes.semv = e;
23604 MenhirLib.EngineTypes.startp = _startpos_e_;
23605 MenhirLib.EngineTypes.endp = _endpos_e_;
23606 MenhirLib.EngineTypes.next = {
23607 MenhirLib.EngineTypes.semv = q;
23608 MenhirLib.EngineTypes.startp = _startpos_q_;
23609 MenhirLib.EngineTypes.endp = _endpos_q_;
23610 MenhirLib.EngineTypes.next = {
23611 MenhirLib.EngineTypes.semv = d;
23612 MenhirLib.EngineTypes.startp = _startpos_d_;
23613 MenhirLib.EngineTypes.endp = _endpos_d_;
23614 MenhirLib.EngineTypes.next = {
23615 MenhirLib.EngineTypes.semv = i;
23616 MenhirLib.EngineTypes.startp = _startpos_i_;
23617 MenhirLib.EngineTypes.endp = _endpos_i_;
23618 MenhirLib.EngineTypes.next = {
23619 MenhirLib.EngineTypes.state = _menhir_s;
23620 MenhirLib.EngineTypes.semv = x0;
23621 MenhirLib.EngineTypes.startp = _startpos_x0_;
23622 MenhirLib.EngineTypes.endp = _endpos_x0_;
23623 MenhirLib.EngineTypes.next = _menhir_stack;
23624 };
23625 };
23626 };
23627 };
23628 };
23629 } = _menhir_stack in
23630 let pv : (
23631 # 153 "parser_cocci_menhir.mly"
23632 (Data.clt)
23633 # 23607 "parser_cocci_menhir.ml"
23634 ) = Obj.magic pv in
23635 let e : 'tv_initialize = Obj.magic e in
23636 let q : (
23637 # 153 "parser_cocci_menhir.mly"
23638 (Data.clt)
23639 # 23613 "parser_cocci_menhir.ml"
23640 ) = Obj.magic q in
23641 let d : 'tv_d_ident = Obj.magic d in
23642 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
23643 let x0 : 'tv_const_vol = Obj.magic x0 in
23644 let _startpos = _startpos_x0_ in
23645 let _endpos = _endpos_pv_ in
23646 let _v : 'tv_one_decl_var = let cv =
23647 let x = x0 in
23648
23649 # 41 "standard.mly"
23650 ( Some x )
23651 # 23625 "parser_cocci_menhir.ml"
23652
23653 in
23654 let s =
23655
23656 # 39 "standard.mly"
23657 ( None )
23658 # 23632 "parser_cocci_menhir.ml"
23659
23660 in
23661
23662 # 1293 "parser_cocci_menhir.mly"
23663 ( let (id,fn) = d in
23664 !Data.add_type_name (P.id2name i);
23665 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
23666 Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
23667 P.clt2mcode ";" pv)) )
23668 # 23642 "parser_cocci_menhir.ml"
23669 in
23670 _menhir_env.MenhirLib.EngineTypes.stack <- {
23671 MenhirLib.EngineTypes.state = _menhir_s;
23672 MenhirLib.EngineTypes.semv = Obj.repr _v;
23673 MenhirLib.EngineTypes.startp = _startpos;
23674 MenhirLib.EngineTypes.endp = _endpos;
23675 MenhirLib.EngineTypes.next = _menhir_stack;
23676 });
23677 (fun _menhir_env ->
23678 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23679 let {
23680 MenhirLib.EngineTypes.semv = pv;
23681 MenhirLib.EngineTypes.startp = _startpos_pv_;
23682 MenhirLib.EngineTypes.endp = _endpos_pv_;
23683 MenhirLib.EngineTypes.next = {
23684 MenhirLib.EngineTypes.semv = e;
23685 MenhirLib.EngineTypes.startp = _startpos_e_;
23686 MenhirLib.EngineTypes.endp = _endpos_e_;
23687 MenhirLib.EngineTypes.next = {
23688 MenhirLib.EngineTypes.semv = q;
23689 MenhirLib.EngineTypes.startp = _startpos_q_;
23690 MenhirLib.EngineTypes.endp = _endpos_q_;
23691 MenhirLib.EngineTypes.next = {
23692 MenhirLib.EngineTypes.semv = d;
23693 MenhirLib.EngineTypes.startp = _startpos_d_;
23694 MenhirLib.EngineTypes.endp = _endpos_d_;
23695 MenhirLib.EngineTypes.next = {
23696 MenhirLib.EngineTypes.semv = i;
23697 MenhirLib.EngineTypes.startp = _startpos_i_;
23698 MenhirLib.EngineTypes.endp = _endpos_i_;
23699 MenhirLib.EngineTypes.next = {
23700 MenhirLib.EngineTypes.state = _menhir_s;
23701 MenhirLib.EngineTypes.semv = x0;
23702 MenhirLib.EngineTypes.startp = _startpos_x0_;
23703 MenhirLib.EngineTypes.endp = _endpos_x0_;
23704 MenhirLib.EngineTypes.next = _menhir_stack;
23705 };
23706 };
23707 };
23708 };
23709 };
23710 } = _menhir_stack in
23711 let pv : (
23712 # 153 "parser_cocci_menhir.mly"
23713 (Data.clt)
23714 # 23688 "parser_cocci_menhir.ml"
23715 ) = Obj.magic pv in
23716 let e : 'tv_initialize = Obj.magic e in
23717 let q : (
23718 # 153 "parser_cocci_menhir.mly"
23719 (Data.clt)
23720 # 23694 "parser_cocci_menhir.ml"
23721 ) = Obj.magic q in
23722 let d : 'tv_d_ident = Obj.magic d in
23723 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
23724 let x0 : 'tv_storage = Obj.magic x0 in
23725 let _startpos = _startpos_x0_ in
23726 let _endpos = _endpos_pv_ in
23727 let _v : 'tv_one_decl_var = let cv =
23728
23729 # 39 "standard.mly"
23730 ( None )
23731 # 23705 "parser_cocci_menhir.ml"
23732
23733 in
23734 let s =
23735 let x = x0 in
23736
23737 # 41 "standard.mly"
23738 ( Some x )
23739 # 23713 "parser_cocci_menhir.ml"
23740
23741 in
23742
23743 # 1293 "parser_cocci_menhir.mly"
23744 ( let (id,fn) = d in
23745 !Data.add_type_name (P.id2name i);
23746 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
23747 Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
23748 P.clt2mcode ";" pv)) )
23749 # 23723 "parser_cocci_menhir.ml"
23750 in
23751 _menhir_env.MenhirLib.EngineTypes.stack <- {
23752 MenhirLib.EngineTypes.state = _menhir_s;
23753 MenhirLib.EngineTypes.semv = Obj.repr _v;
23754 MenhirLib.EngineTypes.startp = _startpos;
23755 MenhirLib.EngineTypes.endp = _endpos;
23756 MenhirLib.EngineTypes.next = _menhir_stack;
23757 });
23758 (fun _menhir_env ->
23759 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23760 let {
23761 MenhirLib.EngineTypes.semv = pv;
23762 MenhirLib.EngineTypes.startp = _startpos_pv_;
23763 MenhirLib.EngineTypes.endp = _endpos_pv_;
23764 MenhirLib.EngineTypes.next = {
23765 MenhirLib.EngineTypes.semv = e;
23766 MenhirLib.EngineTypes.startp = _startpos_e_;
23767 MenhirLib.EngineTypes.endp = _endpos_e_;
23768 MenhirLib.EngineTypes.next = {
23769 MenhirLib.EngineTypes.semv = q;
23770 MenhirLib.EngineTypes.startp = _startpos_q_;
23771 MenhirLib.EngineTypes.endp = _endpos_q_;
23772 MenhirLib.EngineTypes.next = {
23773 MenhirLib.EngineTypes.semv = d;
23774 MenhirLib.EngineTypes.startp = _startpos_d_;
23775 MenhirLib.EngineTypes.endp = _endpos_d_;
23776 MenhirLib.EngineTypes.next = {
23777 MenhirLib.EngineTypes.semv = i;
23778 MenhirLib.EngineTypes.startp = _startpos_i_;
23779 MenhirLib.EngineTypes.endp = _endpos_i_;
23780 MenhirLib.EngineTypes.next = {
23781 MenhirLib.EngineTypes.semv = x1;
23782 MenhirLib.EngineTypes.startp = _startpos_x1_;
23783 MenhirLib.EngineTypes.endp = _endpos_x1_;
23784 MenhirLib.EngineTypes.next = {
23785 MenhirLib.EngineTypes.state = _menhir_s;
23786 MenhirLib.EngineTypes.semv = x0;
23787 MenhirLib.EngineTypes.startp = _startpos_x0_;
23788 MenhirLib.EngineTypes.endp = _endpos_x0_;
23789 MenhirLib.EngineTypes.next = _menhir_stack;
23790 };
23791 };
23792 };
23793 };
23794 };
23795 };
23796 } = _menhir_stack in
23797 let pv : (
23798 # 153 "parser_cocci_menhir.mly"
23799 (Data.clt)
23800 # 23774 "parser_cocci_menhir.ml"
23801 ) = Obj.magic pv in
23802 let e : 'tv_initialize = Obj.magic e in
23803 let q : (
23804 # 153 "parser_cocci_menhir.mly"
23805 (Data.clt)
23806 # 23780 "parser_cocci_menhir.ml"
23807 ) = Obj.magic q in
23808 let d : 'tv_d_ident = Obj.magic d in
23809 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
23810 let x1 : 'tv_const_vol = Obj.magic x1 in
23811 let x0 : 'tv_storage = Obj.magic x0 in
23812 let _startpos = _startpos_x0_ in
23813 let _endpos = _endpos_pv_ in
23814 let _v : 'tv_one_decl_var = let cv =
23815 let x = x1 in
23816
23817 # 41 "standard.mly"
23818 ( Some x )
23819 # 23793 "parser_cocci_menhir.ml"
23820
23821 in
23822 let s =
23823 let x = x0 in
23824
23825 # 41 "standard.mly"
23826 ( Some x )
23827 # 23801 "parser_cocci_menhir.ml"
23828
23829 in
23830
23831 # 1293 "parser_cocci_menhir.mly"
23832 ( let (id,fn) = d in
23833 !Data.add_type_name (P.id2name i);
23834 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
23835 Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
23836 P.clt2mcode ";" pv)) )
23837 # 23811 "parser_cocci_menhir.ml"
23838 in
23839 _menhir_env.MenhirLib.EngineTypes.stack <- {
23840 MenhirLib.EngineTypes.state = _menhir_s;
23841 MenhirLib.EngineTypes.semv = Obj.repr _v;
23842 MenhirLib.EngineTypes.startp = _startpos;
23843 MenhirLib.EngineTypes.endp = _endpos;
23844 MenhirLib.EngineTypes.next = _menhir_stack;
23845 });
23846 (fun _menhir_env ->
23847 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23848 let {
23849 MenhirLib.EngineTypes.semv = pv;
23850 MenhirLib.EngineTypes.startp = _startpos_pv_;
23851 MenhirLib.EngineTypes.endp = _endpos_pv_;
23852 MenhirLib.EngineTypes.next = {
23853 MenhirLib.EngineTypes.semv = rp2;
23854 MenhirLib.EngineTypes.startp = _startpos_rp2_;
23855 MenhirLib.EngineTypes.endp = _endpos_rp2_;
23856 MenhirLib.EngineTypes.next = {
23857 MenhirLib.EngineTypes.semv = p;
23858 MenhirLib.EngineTypes.startp = _startpos_p_;
23859 MenhirLib.EngineTypes.endp = _endpos_p_;
23860 MenhirLib.EngineTypes.next = {
23861 MenhirLib.EngineTypes.semv = lp2;
23862 MenhirLib.EngineTypes.startp = _startpos_lp2_;
23863 MenhirLib.EngineTypes.endp = _endpos_lp2_;
23864 MenhirLib.EngineTypes.next = {
23865 MenhirLib.EngineTypes.semv = rp1;
23866 MenhirLib.EngineTypes.startp = _startpos_rp1_;
23867 MenhirLib.EngineTypes.endp = _endpos_rp1_;
23868 MenhirLib.EngineTypes.next = {
23869 MenhirLib.EngineTypes.semv = d;
23870 MenhirLib.EngineTypes.startp = _startpos_d_;
23871 MenhirLib.EngineTypes.endp = _endpos_d_;
23872 MenhirLib.EngineTypes.next = {
23873 MenhirLib.EngineTypes.semv = st;
23874 MenhirLib.EngineTypes.startp = _startpos_st_;
23875 MenhirLib.EngineTypes.endp = _endpos_st_;
23876 MenhirLib.EngineTypes.next = {
23877 MenhirLib.EngineTypes.semv = lp1;
23878 MenhirLib.EngineTypes.startp = _startpos_lp1_;
23879 MenhirLib.EngineTypes.endp = _endpos_lp1_;
23880 MenhirLib.EngineTypes.next = {
23881 MenhirLib.EngineTypes.state = _menhir_s;
23882 MenhirLib.EngineTypes.semv = t;
23883 MenhirLib.EngineTypes.startp = _startpos_t_;
23884 MenhirLib.EngineTypes.endp = _endpos_t_;
23885 MenhirLib.EngineTypes.next = _menhir_stack;
23886 };
23887 };
23888 };
23889 };
23890 };
23891 };
23892 };
23893 };
23894 } = _menhir_stack in
23895 let pv : (
23896 # 153 "parser_cocci_menhir.mly"
23897 (Data.clt)
23898 # 23872 "parser_cocci_menhir.ml"
23899 ) = Obj.magic pv in
23900 let rp2 : (
23901 # 123 "parser_cocci_menhir.mly"
23902 (Data.clt)
23903 # 23877 "parser_cocci_menhir.ml"
23904 ) = Obj.magic rp2 in
23905 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
23906 let lp2 : (
23907 # 122 "parser_cocci_menhir.mly"
23908 (Data.clt)
23909 # 23883 "parser_cocci_menhir.ml"
23910 ) = Obj.magic lp2 in
23911 let rp1 : (
23912 # 123 "parser_cocci_menhir.mly"
23913 (Data.clt)
23914 # 23888 "parser_cocci_menhir.ml"
23915 ) = Obj.magic rp1 in
23916 let d : 'tv_d_ident = Obj.magic d in
23917 let st : (
23918 # 145 "parser_cocci_menhir.mly"
23919 (Data.clt)
23920 # 23894 "parser_cocci_menhir.ml"
23921 ) = Obj.magic st in
23922 let lp1 : (
23923 # 122 "parser_cocci_menhir.mly"
23924 (Data.clt)
23925 # 23899 "parser_cocci_menhir.ml"
23926 ) = Obj.magic lp1 in
23927 let t : 'tv_ctype = Obj.magic t in
23928 let _startpos = _startpos_t_ in
23929 let _endpos = _endpos_pv_ in
23930 let _v : 'tv_one_decl_var = let s =
23931
23932 # 39 "standard.mly"
23933 ( None )
23934 # 23908 "parser_cocci_menhir.ml"
23935
23936 in
23937
23938 # 1303 "parser_cocci_menhir.mly"
23939 ( let (id,fn) = d in
23940 let t =
23941 Ast0.wrap
23942 (Ast0.FunctionPointer
23943 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
23944 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
23945 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
23946 # 23920 "parser_cocci_menhir.ml"
23947 in
23948 _menhir_env.MenhirLib.EngineTypes.stack <- {
23949 MenhirLib.EngineTypes.state = _menhir_s;
23950 MenhirLib.EngineTypes.semv = Obj.repr _v;
23951 MenhirLib.EngineTypes.startp = _startpos;
23952 MenhirLib.EngineTypes.endp = _endpos;
23953 MenhirLib.EngineTypes.next = _menhir_stack;
23954 });
23955 (fun _menhir_env ->
23956 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
23957 let {
23958 MenhirLib.EngineTypes.semv = pv;
23959 MenhirLib.EngineTypes.startp = _startpos_pv_;
23960 MenhirLib.EngineTypes.endp = _endpos_pv_;
23961 MenhirLib.EngineTypes.next = {
23962 MenhirLib.EngineTypes.semv = rp2;
23963 MenhirLib.EngineTypes.startp = _startpos_rp2_;
23964 MenhirLib.EngineTypes.endp = _endpos_rp2_;
23965 MenhirLib.EngineTypes.next = {
23966 MenhirLib.EngineTypes.semv = p;
23967 MenhirLib.EngineTypes.startp = _startpos_p_;
23968 MenhirLib.EngineTypes.endp = _endpos_p_;
23969 MenhirLib.EngineTypes.next = {
23970 MenhirLib.EngineTypes.semv = lp2;
23971 MenhirLib.EngineTypes.startp = _startpos_lp2_;
23972 MenhirLib.EngineTypes.endp = _endpos_lp2_;
23973 MenhirLib.EngineTypes.next = {
23974 MenhirLib.EngineTypes.semv = rp1;
23975 MenhirLib.EngineTypes.startp = _startpos_rp1_;
23976 MenhirLib.EngineTypes.endp = _endpos_rp1_;
23977 MenhirLib.EngineTypes.next = {
23978 MenhirLib.EngineTypes.semv = d;
23979 MenhirLib.EngineTypes.startp = _startpos_d_;
23980 MenhirLib.EngineTypes.endp = _endpos_d_;
23981 MenhirLib.EngineTypes.next = {
23982 MenhirLib.EngineTypes.semv = st;
23983 MenhirLib.EngineTypes.startp = _startpos_st_;
23984 MenhirLib.EngineTypes.endp = _endpos_st_;
23985 MenhirLib.EngineTypes.next = {
23986 MenhirLib.EngineTypes.semv = lp1;
23987 MenhirLib.EngineTypes.startp = _startpos_lp1_;
23988 MenhirLib.EngineTypes.endp = _endpos_lp1_;
23989 MenhirLib.EngineTypes.next = {
23990 MenhirLib.EngineTypes.semv = t;
23991 MenhirLib.EngineTypes.startp = _startpos_t_;
23992 MenhirLib.EngineTypes.endp = _endpos_t_;
23993 MenhirLib.EngineTypes.next = {
23994 MenhirLib.EngineTypes.state = _menhir_s;
23995 MenhirLib.EngineTypes.semv = x0;
23996 MenhirLib.EngineTypes.startp = _startpos_x0_;
23997 MenhirLib.EngineTypes.endp = _endpos_x0_;
23998 MenhirLib.EngineTypes.next = _menhir_stack;
23999 };
24000 };
24001 };
24002 };
24003 };
24004 };
24005 };
24006 };
24007 };
24008 } = _menhir_stack in
24009 let pv : (
24010 # 153 "parser_cocci_menhir.mly"
24011 (Data.clt)
24012 # 23986 "parser_cocci_menhir.ml"
24013 ) = Obj.magic pv in
24014 let rp2 : (
24015 # 123 "parser_cocci_menhir.mly"
24016 (Data.clt)
24017 # 23991 "parser_cocci_menhir.ml"
24018 ) = Obj.magic rp2 in
24019 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
24020 let lp2 : (
24021 # 122 "parser_cocci_menhir.mly"
24022 (Data.clt)
24023 # 23997 "parser_cocci_menhir.ml"
24024 ) = Obj.magic lp2 in
24025 let rp1 : (
24026 # 123 "parser_cocci_menhir.mly"
24027 (Data.clt)
24028 # 24002 "parser_cocci_menhir.ml"
24029 ) = Obj.magic rp1 in
24030 let d : 'tv_d_ident = Obj.magic d in
24031 let st : (
24032 # 145 "parser_cocci_menhir.mly"
24033 (Data.clt)
24034 # 24008 "parser_cocci_menhir.ml"
24035 ) = Obj.magic st in
24036 let lp1 : (
24037 # 122 "parser_cocci_menhir.mly"
24038 (Data.clt)
24039 # 24013 "parser_cocci_menhir.ml"
24040 ) = Obj.magic lp1 in
24041 let t : 'tv_ctype = Obj.magic t in
24042 let x0 : 'tv_storage = Obj.magic x0 in
24043 let _startpos = _startpos_x0_ in
24044 let _endpos = _endpos_pv_ in
24045 let _v : 'tv_one_decl_var = let s =
24046 let x = x0 in
24047
24048 # 41 "standard.mly"
24049 ( Some x )
24050 # 24024 "parser_cocci_menhir.ml"
24051
24052 in
24053
24054 # 1303 "parser_cocci_menhir.mly"
24055 ( let (id,fn) = d in
24056 let t =
24057 Ast0.wrap
24058 (Ast0.FunctionPointer
24059 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
24060 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
24061 Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
24062 # 24036 "parser_cocci_menhir.ml"
24063 in
24064 _menhir_env.MenhirLib.EngineTypes.stack <- {
24065 MenhirLib.EngineTypes.state = _menhir_s;
24066 MenhirLib.EngineTypes.semv = Obj.repr _v;
24067 MenhirLib.EngineTypes.startp = _startpos;
24068 MenhirLib.EngineTypes.endp = _endpos;
24069 MenhirLib.EngineTypes.next = _menhir_stack;
24070 });
24071 (fun _menhir_env ->
24072 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24073 let {
24074 MenhirLib.EngineTypes.semv = _5;
24075 MenhirLib.EngineTypes.startp = _startpos__5_;
24076 MenhirLib.EngineTypes.endp = _endpos__5_;
24077 MenhirLib.EngineTypes.next = {
24078 MenhirLib.EngineTypes.semv = _4;
24079 MenhirLib.EngineTypes.startp = _startpos__4_;
24080 MenhirLib.EngineTypes.endp = _endpos__4_;
24081 MenhirLib.EngineTypes.next = {
24082 MenhirLib.EngineTypes.semv = _3;
24083 MenhirLib.EngineTypes.startp = _startpos__3_;
24084 MenhirLib.EngineTypes.endp = _endpos__3_;
24085 MenhirLib.EngineTypes.next = {
24086 MenhirLib.EngineTypes.semv = _2;
24087 MenhirLib.EngineTypes.startp = _startpos__2_;
24088 MenhirLib.EngineTypes.endp = _endpos__2_;
24089 MenhirLib.EngineTypes.next = {
24090 MenhirLib.EngineTypes.state = _menhir_s;
24091 MenhirLib.EngineTypes.semv = _1;
24092 MenhirLib.EngineTypes.startp = _startpos__1_;
24093 MenhirLib.EngineTypes.endp = _endpos__1_;
24094 MenhirLib.EngineTypes.next = _menhir_stack;
24095 };
24096 };
24097 };
24098 };
24099 } = _menhir_stack in
24100 let _5 : (
24101 # 153 "parser_cocci_menhir.mly"
24102 (Data.clt)
24103 # 24077 "parser_cocci_menhir.ml"
24104 ) = Obj.magic _5 in
24105 let _4 : (
24106 # 123 "parser_cocci_menhir.mly"
24107 (Data.clt)
24108 # 24082 "parser_cocci_menhir.ml"
24109 ) = Obj.magic _4 in
24110 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
24111 let _2 : (
24112 # 122 "parser_cocci_menhir.mly"
24113 (Data.clt)
24114 # 24088 "parser_cocci_menhir.ml"
24115 ) = Obj.magic _2 in
24116 let _1 : 'tv_decl_ident = Obj.magic _1 in
24117 let _startpos = _startpos__1_ in
24118 let _endpos = _endpos__5_ in
24119 let _v : 'tv_one_decl_var =
24120 # 1311 "parser_cocci_menhir.mly"
24121 ( Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3,
24122 P.clt2mcode ")" _4,P.clt2mcode ";" _5)) )
24123 # 24097 "parser_cocci_menhir.ml"
24124 in
24125 _menhir_env.MenhirLib.EngineTypes.stack <- {
24126 MenhirLib.EngineTypes.state = _menhir_s;
24127 MenhirLib.EngineTypes.semv = Obj.repr _v;
24128 MenhirLib.EngineTypes.startp = _startpos;
24129 MenhirLib.EngineTypes.endp = _endpos;
24130 MenhirLib.EngineTypes.next = _menhir_stack;
24131 });
24132 (fun _menhir_env ->
24133 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24134 let {
24135 MenhirLib.EngineTypes.semv = _7;
24136 MenhirLib.EngineTypes.startp = _startpos__7_;
24137 MenhirLib.EngineTypes.endp = _endpos__7_;
24138 MenhirLib.EngineTypes.next = {
24139 MenhirLib.EngineTypes.semv = e;
24140 MenhirLib.EngineTypes.startp = _startpos_e_;
24141 MenhirLib.EngineTypes.endp = _endpos_e_;
24142 MenhirLib.EngineTypes.next = {
24143 MenhirLib.EngineTypes.semv = q;
24144 MenhirLib.EngineTypes.startp = _startpos_q_;
24145 MenhirLib.EngineTypes.endp = _endpos_q_;
24146 MenhirLib.EngineTypes.next = {
24147 MenhirLib.EngineTypes.semv = _4;
24148 MenhirLib.EngineTypes.startp = _startpos__4_;
24149 MenhirLib.EngineTypes.endp = _endpos__4_;
24150 MenhirLib.EngineTypes.next = {
24151 MenhirLib.EngineTypes.semv = _3;
24152 MenhirLib.EngineTypes.startp = _startpos__3_;
24153 MenhirLib.EngineTypes.endp = _endpos__3_;
24154 MenhirLib.EngineTypes.next = {
24155 MenhirLib.EngineTypes.semv = _2;
24156 MenhirLib.EngineTypes.startp = _startpos__2_;
24157 MenhirLib.EngineTypes.endp = _endpos__2_;
24158 MenhirLib.EngineTypes.next = {
24159 MenhirLib.EngineTypes.state = _menhir_s;
24160 MenhirLib.EngineTypes.semv = _1;
24161 MenhirLib.EngineTypes.startp = _startpos__1_;
24162 MenhirLib.EngineTypes.endp = _endpos__1_;
24163 MenhirLib.EngineTypes.next = _menhir_stack;
24164 };
24165 };
24166 };
24167 };
24168 };
24169 };
24170 } = _menhir_stack in
24171 let _7 : (
24172 # 153 "parser_cocci_menhir.mly"
24173 (Data.clt)
24174 # 24148 "parser_cocci_menhir.ml"
24175 ) = Obj.magic _7 in
24176 let e : 'tv_initialize = Obj.magic e in
24177 let q : (
24178 # 153 "parser_cocci_menhir.mly"
24179 (Data.clt)
24180 # 24154 "parser_cocci_menhir.ml"
24181 ) = Obj.magic q in
24182 let _4 : (
24183 # 123 "parser_cocci_menhir.mly"
24184 (Data.clt)
24185 # 24159 "parser_cocci_menhir.ml"
24186 ) = Obj.magic _4 in
24187 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
24188 let _2 : (
24189 # 122 "parser_cocci_menhir.mly"
24190 (Data.clt)
24191 # 24165 "parser_cocci_menhir.ml"
24192 ) = Obj.magic _2 in
24193 let _1 : 'tv_decl_ident = Obj.magic _1 in
24194 let _startpos = _startpos__1_ in
24195 let _endpos = _endpos__7_ in
24196 let _v : 'tv_one_decl_var =
24197 # 1314 "parser_cocci_menhir.mly"
24198 ( Ast0.wrap
24199 (Ast0.MacroDeclInit
24200 (_1,P.clt2mcode "(" _2,_3,
24201 P.clt2mcode ")" _4,P.clt2mcode "=" q,e,
24202 P.clt2mcode ";" _7)) )
24203 # 24177 "parser_cocci_menhir.ml"
24204 in
24205 _menhir_env.MenhirLib.EngineTypes.stack <- {
24206 MenhirLib.EngineTypes.state = _menhir_s;
24207 MenhirLib.EngineTypes.semv = Obj.repr _v;
24208 MenhirLib.EngineTypes.startp = _startpos;
24209 MenhirLib.EngineTypes.endp = _endpos;
24210 MenhirLib.EngineTypes.next = _menhir_stack;
24211 });
24212 (fun _menhir_env ->
24213 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24214 let {
24215 MenhirLib.EngineTypes.semv = pv;
24216 MenhirLib.EngineTypes.startp = _startpos_pv_;
24217 MenhirLib.EngineTypes.endp = _endpos_pv_;
24218 MenhirLib.EngineTypes.next = {
24219 MenhirLib.EngineTypes.semv = e;
24220 MenhirLib.EngineTypes.startp = _startpos_e_;
24221 MenhirLib.EngineTypes.endp = _endpos_e_;
24222 MenhirLib.EngineTypes.next = {
24223 MenhirLib.EngineTypes.semv = q;
24224 MenhirLib.EngineTypes.startp = _startpos_q_;
24225 MenhirLib.EngineTypes.endp = _endpos_q_;
24226 MenhirLib.EngineTypes.next = {
24227 MenhirLib.EngineTypes.semv = rp2;
24228 MenhirLib.EngineTypes.startp = _startpos_rp2_;
24229 MenhirLib.EngineTypes.endp = _endpos_rp2_;
24230 MenhirLib.EngineTypes.next = {
24231 MenhirLib.EngineTypes.semv = p;
24232 MenhirLib.EngineTypes.startp = _startpos_p_;
24233 MenhirLib.EngineTypes.endp = _endpos_p_;
24234 MenhirLib.EngineTypes.next = {
24235 MenhirLib.EngineTypes.semv = lp2;
24236 MenhirLib.EngineTypes.startp = _startpos_lp2_;
24237 MenhirLib.EngineTypes.endp = _endpos_lp2_;
24238 MenhirLib.EngineTypes.next = {
24239 MenhirLib.EngineTypes.semv = rp1;
24240 MenhirLib.EngineTypes.startp = _startpos_rp1_;
24241 MenhirLib.EngineTypes.endp = _endpos_rp1_;
24242 MenhirLib.EngineTypes.next = {
24243 MenhirLib.EngineTypes.semv = d;
24244 MenhirLib.EngineTypes.startp = _startpos_d_;
24245 MenhirLib.EngineTypes.endp = _endpos_d_;
24246 MenhirLib.EngineTypes.next = {
24247 MenhirLib.EngineTypes.semv = st;
24248 MenhirLib.EngineTypes.startp = _startpos_st_;
24249 MenhirLib.EngineTypes.endp = _endpos_st_;
24250 MenhirLib.EngineTypes.next = {
24251 MenhirLib.EngineTypes.semv = lp1;
24252 MenhirLib.EngineTypes.startp = _startpos_lp1_;
24253 MenhirLib.EngineTypes.endp = _endpos_lp1_;
24254 MenhirLib.EngineTypes.next = {
24255 MenhirLib.EngineTypes.state = _menhir_s;
24256 MenhirLib.EngineTypes.semv = t;
24257 MenhirLib.EngineTypes.startp = _startpos_t_;
24258 MenhirLib.EngineTypes.endp = _endpos_t_;
24259 MenhirLib.EngineTypes.next = _menhir_stack;
24260 };
24261 };
24262 };
24263 };
24264 };
24265 };
24266 };
24267 };
24268 };
24269 };
24270 } = _menhir_stack in
24271 let pv : (
24272 # 153 "parser_cocci_menhir.mly"
24273 (Data.clt)
24274 # 24248 "parser_cocci_menhir.ml"
24275 ) = Obj.magic pv in
24276 let e : 'tv_initialize = Obj.magic e in
24277 let q : (
24278 # 153 "parser_cocci_menhir.mly"
24279 (Data.clt)
24280 # 24254 "parser_cocci_menhir.ml"
24281 ) = Obj.magic q in
24282 let rp2 : (
24283 # 123 "parser_cocci_menhir.mly"
24284 (Data.clt)
24285 # 24259 "parser_cocci_menhir.ml"
24286 ) = Obj.magic rp2 in
24287 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
24288 let lp2 : (
24289 # 122 "parser_cocci_menhir.mly"
24290 (Data.clt)
24291 # 24265 "parser_cocci_menhir.ml"
24292 ) = Obj.magic lp2 in
24293 let rp1 : (
24294 # 123 "parser_cocci_menhir.mly"
24295 (Data.clt)
24296 # 24270 "parser_cocci_menhir.ml"
24297 ) = Obj.magic rp1 in
24298 let d : 'tv_d_ident = Obj.magic d in
24299 let st : (
24300 # 145 "parser_cocci_menhir.mly"
24301 (Data.clt)
24302 # 24276 "parser_cocci_menhir.ml"
24303 ) = Obj.magic st in
24304 let lp1 : (
24305 # 122 "parser_cocci_menhir.mly"
24306 (Data.clt)
24307 # 24281 "parser_cocci_menhir.ml"
24308 ) = Obj.magic lp1 in
24309 let t : 'tv_ctype = Obj.magic t in
24310 let _startpos = _startpos_t_ in
24311 let _endpos = _endpos_pv_ in
24312 let _v : 'tv_one_decl_var = let s =
24313
24314 # 39 "standard.mly"
24315 ( None )
24316 # 24290 "parser_cocci_menhir.ml"
24317
24318 in
24319
24320 # 1323 "parser_cocci_menhir.mly"
24321 ( let (id,fn) = d in
24322 let t =
24323 Ast0.wrap
24324 (Ast0.FunctionPointer
24325 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
24326 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
24327 Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)))
24328 # 24302 "parser_cocci_menhir.ml"
24329 in
24330 _menhir_env.MenhirLib.EngineTypes.stack <- {
24331 MenhirLib.EngineTypes.state = _menhir_s;
24332 MenhirLib.EngineTypes.semv = Obj.repr _v;
24333 MenhirLib.EngineTypes.startp = _startpos;
24334 MenhirLib.EngineTypes.endp = _endpos;
24335 MenhirLib.EngineTypes.next = _menhir_stack;
24336 });
24337 (fun _menhir_env ->
24338 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24339 let {
24340 MenhirLib.EngineTypes.semv = pv;
24341 MenhirLib.EngineTypes.startp = _startpos_pv_;
24342 MenhirLib.EngineTypes.endp = _endpos_pv_;
24343 MenhirLib.EngineTypes.next = {
24344 MenhirLib.EngineTypes.semv = e;
24345 MenhirLib.EngineTypes.startp = _startpos_e_;
24346 MenhirLib.EngineTypes.endp = _endpos_e_;
24347 MenhirLib.EngineTypes.next = {
24348 MenhirLib.EngineTypes.semv = q;
24349 MenhirLib.EngineTypes.startp = _startpos_q_;
24350 MenhirLib.EngineTypes.endp = _endpos_q_;
24351 MenhirLib.EngineTypes.next = {
24352 MenhirLib.EngineTypes.semv = rp2;
24353 MenhirLib.EngineTypes.startp = _startpos_rp2_;
24354 MenhirLib.EngineTypes.endp = _endpos_rp2_;
24355 MenhirLib.EngineTypes.next = {
24356 MenhirLib.EngineTypes.semv = p;
24357 MenhirLib.EngineTypes.startp = _startpos_p_;
24358 MenhirLib.EngineTypes.endp = _endpos_p_;
24359 MenhirLib.EngineTypes.next = {
24360 MenhirLib.EngineTypes.semv = lp2;
24361 MenhirLib.EngineTypes.startp = _startpos_lp2_;
24362 MenhirLib.EngineTypes.endp = _endpos_lp2_;
24363 MenhirLib.EngineTypes.next = {
24364 MenhirLib.EngineTypes.semv = rp1;
24365 MenhirLib.EngineTypes.startp = _startpos_rp1_;
24366 MenhirLib.EngineTypes.endp = _endpos_rp1_;
24367 MenhirLib.EngineTypes.next = {
24368 MenhirLib.EngineTypes.semv = d;
24369 MenhirLib.EngineTypes.startp = _startpos_d_;
24370 MenhirLib.EngineTypes.endp = _endpos_d_;
24371 MenhirLib.EngineTypes.next = {
24372 MenhirLib.EngineTypes.semv = st;
24373 MenhirLib.EngineTypes.startp = _startpos_st_;
24374 MenhirLib.EngineTypes.endp = _endpos_st_;
24375 MenhirLib.EngineTypes.next = {
24376 MenhirLib.EngineTypes.semv = lp1;
24377 MenhirLib.EngineTypes.startp = _startpos_lp1_;
24378 MenhirLib.EngineTypes.endp = _endpos_lp1_;
24379 MenhirLib.EngineTypes.next = {
24380 MenhirLib.EngineTypes.semv = t;
24381 MenhirLib.EngineTypes.startp = _startpos_t_;
24382 MenhirLib.EngineTypes.endp = _endpos_t_;
24383 MenhirLib.EngineTypes.next = {
24384 MenhirLib.EngineTypes.state = _menhir_s;
24385 MenhirLib.EngineTypes.semv = x0;
24386 MenhirLib.EngineTypes.startp = _startpos_x0_;
24387 MenhirLib.EngineTypes.endp = _endpos_x0_;
24388 MenhirLib.EngineTypes.next = _menhir_stack;
24389 };
24390 };
24391 };
24392 };
24393 };
24394 };
24395 };
24396 };
24397 };
24398 };
24399 };
24400 } = _menhir_stack in
24401 let pv : (
24402 # 153 "parser_cocci_menhir.mly"
24403 (Data.clt)
24404 # 24378 "parser_cocci_menhir.ml"
24405 ) = Obj.magic pv in
24406 let e : 'tv_initialize = Obj.magic e in
24407 let q : (
24408 # 153 "parser_cocci_menhir.mly"
24409 (Data.clt)
24410 # 24384 "parser_cocci_menhir.ml"
24411 ) = Obj.magic q in
24412 let rp2 : (
24413 # 123 "parser_cocci_menhir.mly"
24414 (Data.clt)
24415 # 24389 "parser_cocci_menhir.ml"
24416 ) = Obj.magic rp2 in
24417 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
24418 let lp2 : (
24419 # 122 "parser_cocci_menhir.mly"
24420 (Data.clt)
24421 # 24395 "parser_cocci_menhir.ml"
24422 ) = Obj.magic lp2 in
24423 let rp1 : (
24424 # 123 "parser_cocci_menhir.mly"
24425 (Data.clt)
24426 # 24400 "parser_cocci_menhir.ml"
24427 ) = Obj.magic rp1 in
24428 let d : 'tv_d_ident = Obj.magic d in
24429 let st : (
24430 # 145 "parser_cocci_menhir.mly"
24431 (Data.clt)
24432 # 24406 "parser_cocci_menhir.ml"
24433 ) = Obj.magic st in
24434 let lp1 : (
24435 # 122 "parser_cocci_menhir.mly"
24436 (Data.clt)
24437 # 24411 "parser_cocci_menhir.ml"
24438 ) = Obj.magic lp1 in
24439 let t : 'tv_ctype = Obj.magic t in
24440 let x0 : 'tv_storage = Obj.magic x0 in
24441 let _startpos = _startpos_x0_ in
24442 let _endpos = _endpos_pv_ in
24443 let _v : 'tv_one_decl_var = let s =
24444 let x = x0 in
24445
24446 # 41 "standard.mly"
24447 ( Some x )
24448 # 24422 "parser_cocci_menhir.ml"
24449
24450 in
24451
24452 # 1323 "parser_cocci_menhir.mly"
24453 ( let (id,fn) = d in
24454 let t =
24455 Ast0.wrap
24456 (Ast0.FunctionPointer
24457 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
24458 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
24459 Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)))
24460 # 24434 "parser_cocci_menhir.ml"
24461 in
24462 _menhir_env.MenhirLib.EngineTypes.stack <- {
24463 MenhirLib.EngineTypes.state = _menhir_s;
24464 MenhirLib.EngineTypes.semv = Obj.repr _v;
24465 MenhirLib.EngineTypes.startp = _startpos;
24466 MenhirLib.EngineTypes.endp = _endpos;
24467 MenhirLib.EngineTypes.next = _menhir_stack;
24468 });
24469 (fun _menhir_env ->
24470 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24471 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
24472 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
24473 let _endpos = _startpos in
24474 let _v : 'tv_option_TLocal_ =
24475 # 29 "standard.mly"
24476 ( None )
24477 # 24451 "parser_cocci_menhir.ml"
24478 in
24479 _menhir_env.MenhirLib.EngineTypes.stack <- {
24480 MenhirLib.EngineTypes.state = _menhir_s;
24481 MenhirLib.EngineTypes.semv = Obj.repr _v;
24482 MenhirLib.EngineTypes.startp = _startpos;
24483 MenhirLib.EngineTypes.endp = _endpos;
24484 MenhirLib.EngineTypes.next = _menhir_stack;
24485 });
24486 (fun _menhir_env ->
24487 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24488 let {
24489 MenhirLib.EngineTypes.state = _menhir_s;
24490 MenhirLib.EngineTypes.semv = x;
24491 MenhirLib.EngineTypes.startp = _startpos_x_;
24492 MenhirLib.EngineTypes.endp = _endpos_x_;
24493 MenhirLib.EngineTypes.next = _menhir_stack;
24494 } = _menhir_stack in
24495 let x : unit = Obj.magic x in
24496 let _startpos = _startpos_x_ in
24497 let _endpos = _endpos_x_ in
24498 let _v : 'tv_option_TLocal_ =
24499 # 31 "standard.mly"
24500 ( Some x )
24501 # 24475 "parser_cocci_menhir.ml"
24502 in
24503 _menhir_env.MenhirLib.EngineTypes.stack <- {
24504 MenhirLib.EngineTypes.state = _menhir_s;
24505 MenhirLib.EngineTypes.semv = Obj.repr _v;
24506 MenhirLib.EngineTypes.startp = _startpos;
24507 MenhirLib.EngineTypes.endp = _endpos;
24508 MenhirLib.EngineTypes.next = _menhir_stack;
24509 });
24510 (fun _menhir_env ->
24511 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24512 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
24513 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
24514 let _endpos = _startpos in
24515 let _v : 'tv_option_TPosAny_ =
24516 # 29 "standard.mly"
24517 ( None )
24518 # 24492 "parser_cocci_menhir.ml"
24519 in
24520 _menhir_env.MenhirLib.EngineTypes.stack <- {
24521 MenhirLib.EngineTypes.state = _menhir_s;
24522 MenhirLib.EngineTypes.semv = Obj.repr _v;
24523 MenhirLib.EngineTypes.startp = _startpos;
24524 MenhirLib.EngineTypes.endp = _endpos;
24525 MenhirLib.EngineTypes.next = _menhir_stack;
24526 });
24527 (fun _menhir_env ->
24528 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24529 let {
24530 MenhirLib.EngineTypes.state = _menhir_s;
24531 MenhirLib.EngineTypes.semv = x;
24532 MenhirLib.EngineTypes.startp = _startpos_x_;
24533 MenhirLib.EngineTypes.endp = _endpos_x_;
24534 MenhirLib.EngineTypes.next = _menhir_stack;
24535 } = _menhir_stack in
24536 let x : unit = Obj.magic x in
24537 let _startpos = _startpos_x_ in
24538 let _endpos = _endpos_x_ in
24539 let _v : 'tv_option_TPosAny_ =
24540 # 31 "standard.mly"
24541 ( Some x )
24542 # 24516 "parser_cocci_menhir.ml"
24543 in
24544 _menhir_env.MenhirLib.EngineTypes.stack <- {
24545 MenhirLib.EngineTypes.state = _menhir_s;
24546 MenhirLib.EngineTypes.semv = Obj.repr _v;
24547 MenhirLib.EngineTypes.startp = _startpos;
24548 MenhirLib.EngineTypes.endp = _endpos;
24549 MenhirLib.EngineTypes.next = _menhir_stack;
24550 });
24551 (fun _menhir_env ->
24552 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24553 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
24554 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
24555 let _endpos = _startpos in
24556 let _v : 'tv_option_eexpr_ =
24557 # 29 "standard.mly"
24558 ( None )
24559 # 24533 "parser_cocci_menhir.ml"
24560 in
24561 _menhir_env.MenhirLib.EngineTypes.stack <- {
24562 MenhirLib.EngineTypes.state = _menhir_s;
24563 MenhirLib.EngineTypes.semv = Obj.repr _v;
24564 MenhirLib.EngineTypes.startp = _startpos;
24565 MenhirLib.EngineTypes.endp = _endpos;
24566 MenhirLib.EngineTypes.next = _menhir_stack;
24567 });
24568 (fun _menhir_env ->
24569 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24570 let {
24571 MenhirLib.EngineTypes.state = _menhir_s;
24572 MenhirLib.EngineTypes.semv = x;
24573 MenhirLib.EngineTypes.startp = _startpos_x_;
24574 MenhirLib.EngineTypes.endp = _endpos_x_;
24575 MenhirLib.EngineTypes.next = _menhir_stack;
24576 } = _menhir_stack in
24577 let x : 'tv_eexpr = Obj.magic x in
24578 let _startpos = _startpos_x_ in
24579 let _endpos = _endpos_x_ in
24580 let _v : 'tv_option_eexpr_ =
24581 # 31 "standard.mly"
24582 ( Some x )
24583 # 24557 "parser_cocci_menhir.ml"
24584 in
24585 _menhir_env.MenhirLib.EngineTypes.stack <- {
24586 MenhirLib.EngineTypes.state = _menhir_s;
24587 MenhirLib.EngineTypes.semv = Obj.repr _v;
24588 MenhirLib.EngineTypes.startp = _startpos;
24589 MenhirLib.EngineTypes.endp = _endpos;
24590 MenhirLib.EngineTypes.next = _menhir_stack;
24591 });
24592 (fun _menhir_env ->
24593 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24594 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
24595 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
24596 let _endpos = _startpos in
24597 let _v : 'tv_option_expr_ =
24598 # 29 "standard.mly"
24599 ( None )
24600 # 24574 "parser_cocci_menhir.ml"
24601 in
24602 _menhir_env.MenhirLib.EngineTypes.stack <- {
24603 MenhirLib.EngineTypes.state = _menhir_s;
24604 MenhirLib.EngineTypes.semv = Obj.repr _v;
24605 MenhirLib.EngineTypes.startp = _startpos;
24606 MenhirLib.EngineTypes.endp = _endpos;
24607 MenhirLib.EngineTypes.next = _menhir_stack;
24608 });
24609 (fun _menhir_env ->
24610 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24611 let {
24612 MenhirLib.EngineTypes.state = _menhir_s;
24613 MenhirLib.EngineTypes.semv = x;
24614 MenhirLib.EngineTypes.startp = _startpos_x_;
24615 MenhirLib.EngineTypes.endp = _endpos_x_;
24616 MenhirLib.EngineTypes.next = _menhir_stack;
24617 } = _menhir_stack in
24618 let x : 'tv_expr = Obj.magic x in
24619 let _startpos = _startpos_x_ in
24620 let _endpos = _endpos_x_ in
24621 let _v : 'tv_option_expr_ =
24622 # 31 "standard.mly"
24623 ( Some x )
24624 # 24598 "parser_cocci_menhir.ml"
24625 in
24626 _menhir_env.MenhirLib.EngineTypes.stack <- {
24627 MenhirLib.EngineTypes.state = _menhir_s;
24628 MenhirLib.EngineTypes.semv = Obj.repr _v;
24629 MenhirLib.EngineTypes.startp = _startpos;
24630 MenhirLib.EngineTypes.endp = _endpos;
24631 MenhirLib.EngineTypes.next = _menhir_stack;
24632 });
24633 (fun _menhir_env ->
24634 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24635 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
24636 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
24637 let _endpos = _startpos in
24638 let _v : 'tv_option_not_ceq_or_sub_ =
24639 # 29 "standard.mly"
24640 ( None )
24641 # 24615 "parser_cocci_menhir.ml"
24642 in
24643 _menhir_env.MenhirLib.EngineTypes.stack <- {
24644 MenhirLib.EngineTypes.state = _menhir_s;
24645 MenhirLib.EngineTypes.semv = Obj.repr _v;
24646 MenhirLib.EngineTypes.startp = _startpos;
24647 MenhirLib.EngineTypes.endp = _endpos;
24648 MenhirLib.EngineTypes.next = _menhir_stack;
24649 });
24650 (fun _menhir_env ->
24651 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24652 let {
24653 MenhirLib.EngineTypes.state = _menhir_s;
24654 MenhirLib.EngineTypes.semv = x;
24655 MenhirLib.EngineTypes.startp = _startpos_x_;
24656 MenhirLib.EngineTypes.endp = _endpos_x_;
24657 MenhirLib.EngineTypes.next = _menhir_stack;
24658 } = _menhir_stack in
24659 let x : 'tv_not_ceq_or_sub = Obj.magic x in
24660 let _startpos = _startpos_x_ in
24661 let _endpos = _endpos_x_ in
24662 let _v : 'tv_option_not_ceq_or_sub_ =
24663 # 31 "standard.mly"
24664 ( Some x )
24665 # 24639 "parser_cocci_menhir.ml"
24666 in
24667 _menhir_env.MenhirLib.EngineTypes.stack <- {
24668 MenhirLib.EngineTypes.state = _menhir_s;
24669 MenhirLib.EngineTypes.semv = Obj.repr _v;
24670 MenhirLib.EngineTypes.startp = _startpos;
24671 MenhirLib.EngineTypes.endp = _endpos;
24672 MenhirLib.EngineTypes.next = _menhir_stack;
24673 });
24674 (fun _menhir_env ->
24675 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24676 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
24677 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
24678 let _endpos = _startpos in
24679 let _v : 'tv_option_re_or_not_eqe_or_sub_ =
24680 # 29 "standard.mly"
24681 ( None )
24682 # 24656 "parser_cocci_menhir.ml"
24683 in
24684 _menhir_env.MenhirLib.EngineTypes.stack <- {
24685 MenhirLib.EngineTypes.state = _menhir_s;
24686 MenhirLib.EngineTypes.semv = Obj.repr _v;
24687 MenhirLib.EngineTypes.startp = _startpos;
24688 MenhirLib.EngineTypes.endp = _endpos;
24689 MenhirLib.EngineTypes.next = _menhir_stack;
24690 });
24691 (fun _menhir_env ->
24692 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24693 let {
24694 MenhirLib.EngineTypes.state = _menhir_s;
24695 MenhirLib.EngineTypes.semv = x;
24696 MenhirLib.EngineTypes.startp = _startpos_x_;
24697 MenhirLib.EngineTypes.endp = _endpos_x_;
24698 MenhirLib.EngineTypes.next = _menhir_stack;
24699 } = _menhir_stack in
24700 let x : 'tv_re_or_not_eqe_or_sub = Obj.magic x in
24701 let _startpos = _startpos_x_ in
24702 let _endpos = _endpos_x_ in
24703 let _v : 'tv_option_re_or_not_eqe_or_sub_ =
24704 # 31 "standard.mly"
24705 ( Some x )
24706 # 24680 "parser_cocci_menhir.ml"
24707 in
24708 _menhir_env.MenhirLib.EngineTypes.stack <- {
24709 MenhirLib.EngineTypes.state = _menhir_s;
24710 MenhirLib.EngineTypes.semv = Obj.repr _v;
24711 MenhirLib.EngineTypes.startp = _startpos;
24712 MenhirLib.EngineTypes.endp = _endpos;
24713 MenhirLib.EngineTypes.next = _menhir_stack;
24714 });
24715 (fun _menhir_env ->
24716 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24717 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
24718 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
24719 let _endpos = _startpos in
24720 let _v : 'tv_option_re_or_not_eqid_ =
24721 # 29 "standard.mly"
24722 ( None )
24723 # 24697 "parser_cocci_menhir.ml"
24724 in
24725 _menhir_env.MenhirLib.EngineTypes.stack <- {
24726 MenhirLib.EngineTypes.state = _menhir_s;
24727 MenhirLib.EngineTypes.semv = Obj.repr _v;
24728 MenhirLib.EngineTypes.startp = _startpos;
24729 MenhirLib.EngineTypes.endp = _endpos;
24730 MenhirLib.EngineTypes.next = _menhir_stack;
24731 });
24732 (fun _menhir_env ->
24733 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24734 let {
24735 MenhirLib.EngineTypes.state = _menhir_s;
24736 MenhirLib.EngineTypes.semv = x;
24737 MenhirLib.EngineTypes.startp = _startpos_x_;
24738 MenhirLib.EngineTypes.endp = _endpos_x_;
24739 MenhirLib.EngineTypes.next = _menhir_stack;
24740 } = _menhir_stack in
24741 let x : 'tv_re_or_not_eqid = Obj.magic x in
24742 let _startpos = _startpos_x_ in
24743 let _endpos = _endpos_x_ in
24744 let _v : 'tv_option_re_or_not_eqid_ =
24745 # 31 "standard.mly"
24746 ( Some x )
24747 # 24721 "parser_cocci_menhir.ml"
24748 in
24749 _menhir_env.MenhirLib.EngineTypes.stack <- {
24750 MenhirLib.EngineTypes.state = _menhir_s;
24751 MenhirLib.EngineTypes.semv = Obj.repr _v;
24752 MenhirLib.EngineTypes.startp = _startpos;
24753 MenhirLib.EngineTypes.endp = _endpos;
24754 MenhirLib.EngineTypes.next = _menhir_stack;
24755 });
24756 (fun _menhir_env ->
24757 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24758 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
24759 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
24760 let _endpos = _startpos in
24761 let _v : 'tv_plus_after_dots =
24762 # 2247 "parser_cocci_menhir.mly"
24763 ([])
24764 # 24738 "parser_cocci_menhir.ml"
24765 in
24766 _menhir_env.MenhirLib.EngineTypes.stack <- {
24767 MenhirLib.EngineTypes.state = _menhir_s;
24768 MenhirLib.EngineTypes.semv = Obj.repr _v;
24769 MenhirLib.EngineTypes.startp = _startpos;
24770 MenhirLib.EngineTypes.endp = _endpos;
24771 MenhirLib.EngineTypes.next = _menhir_stack;
24772 });
24773 (fun _menhir_env ->
24774 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24775 let {
24776 MenhirLib.EngineTypes.semv = _2;
24777 MenhirLib.EngineTypes.startp = _startpos__2_;
24778 MenhirLib.EngineTypes.endp = _endpos__2_;
24779 MenhirLib.EngineTypes.next = {
24780 MenhirLib.EngineTypes.state = _menhir_s;
24781 MenhirLib.EngineTypes.startp = _startpos__1_;
24782 MenhirLib.EngineTypes.endp = _endpos__1_;
24783 MenhirLib.EngineTypes.next = _menhir_stack;
24784 };
24785 } = _menhir_stack in
24786 let _2 : 'tv_plus_after_exp = Obj.magic _2 in
24787 let _startpos = _startpos__1_ in
24788 let _endpos = _endpos__2_ in
24789 let _v : 'tv_plus_after_dots =
24790 # 2248 "parser_cocci_menhir.mly"
24791 (_2)
24792 # 24766 "parser_cocci_menhir.ml"
24793 in
24794 _menhir_env.MenhirLib.EngineTypes.stack <- {
24795 MenhirLib.EngineTypes.state = _menhir_s;
24796 MenhirLib.EngineTypes.semv = Obj.repr _v;
24797 MenhirLib.EngineTypes.startp = _startpos;
24798 MenhirLib.EngineTypes.endp = _endpos;
24799 MenhirLib.EngineTypes.next = _menhir_stack;
24800 });
24801 (fun _menhir_env ->
24802 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24803 let {
24804 MenhirLib.EngineTypes.semv = _2;
24805 MenhirLib.EngineTypes.startp = _startpos__2_;
24806 MenhirLib.EngineTypes.endp = _endpos__2_;
24807 MenhirLib.EngineTypes.next = {
24808 MenhirLib.EngineTypes.state = _menhir_s;
24809 MenhirLib.EngineTypes.semv = _1;
24810 MenhirLib.EngineTypes.startp = _startpos__1_;
24811 MenhirLib.EngineTypes.endp = _endpos__1_;
24812 MenhirLib.EngineTypes.next = _menhir_stack;
24813 };
24814 } = _menhir_stack in
24815 let _2 : 'tv_plus_after_exp = Obj.magic _2 in
24816 let _1 : 'tv_expr = Obj.magic _1 in
24817 let _startpos = _startpos__1_ in
24818 let _endpos = _endpos__2_ in
24819 let _v : 'tv_plus_after_dots =
24820 # 2250 "parser_cocci_menhir.mly"
24821 ( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 )
24822 # 24796 "parser_cocci_menhir.ml"
24823 in
24824 _menhir_env.MenhirLib.EngineTypes.stack <- {
24825 MenhirLib.EngineTypes.state = _menhir_s;
24826 MenhirLib.EngineTypes.semv = Obj.repr _v;
24827 MenhirLib.EngineTypes.startp = _startpos;
24828 MenhirLib.EngineTypes.endp = _endpos;
24829 MenhirLib.EngineTypes.next = _menhir_stack;
24830 });
24831 (fun _menhir_env ->
24832 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24833 let {
24834 MenhirLib.EngineTypes.semv = _2;
24835 MenhirLib.EngineTypes.startp = _startpos__2_;
24836 MenhirLib.EngineTypes.endp = _endpos__2_;
24837 MenhirLib.EngineTypes.next = {
24838 MenhirLib.EngineTypes.state = _menhir_s;
24839 MenhirLib.EngineTypes.semv = _1;
24840 MenhirLib.EngineTypes.startp = _startpos__1_;
24841 MenhirLib.EngineTypes.endp = _endpos__1_;
24842 MenhirLib.EngineTypes.next = _menhir_stack;
24843 };
24844 } = _menhir_stack in
24845 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
24846 let _1 : 'tv_fundecl = Obj.magic _1 in
24847 let _startpos = _startpos__1_ in
24848 let _endpos = _endpos__2_ in
24849 let _v : 'tv_plus_after_dots =
24850 # 2251 "parser_cocci_menhir.mly"
24851 ( Ast0.wrap(Ast0.OTHER(_1))::_2 )
24852 # 24826 "parser_cocci_menhir.ml"
24853 in
24854 _menhir_env.MenhirLib.EngineTypes.stack <- {
24855 MenhirLib.EngineTypes.state = _menhir_s;
24856 MenhirLib.EngineTypes.semv = Obj.repr _v;
24857 MenhirLib.EngineTypes.startp = _startpos;
24858 MenhirLib.EngineTypes.endp = _endpos;
24859 MenhirLib.EngineTypes.next = _menhir_stack;
24860 });
24861 (fun _menhir_env ->
24862 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24863 let {
24864 MenhirLib.EngineTypes.semv = _2;
24865 MenhirLib.EngineTypes.startp = _startpos__2_;
24866 MenhirLib.EngineTypes.endp = _endpos__2_;
24867 MenhirLib.EngineTypes.next = {
24868 MenhirLib.EngineTypes.state = _menhir_s;
24869 MenhirLib.EngineTypes.semv = _1;
24870 MenhirLib.EngineTypes.startp = _startpos__1_;
24871 MenhirLib.EngineTypes.endp = _endpos__1_;
24872 MenhirLib.EngineTypes.next = _menhir_stack;
24873 };
24874 } = _menhir_stack in
24875 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
24876 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
24877 let _startpos = _startpos__1_ in
24878 let _endpos = _endpos__2_ in
24879 let _v : 'tv_plus_after_dots =
24880 # 2253 "parser_cocci_menhir.mly"
24881 ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
24882 # 24856 "parser_cocci_menhir.ml"
24883 in
24884 _menhir_env.MenhirLib.EngineTypes.stack <- {
24885 MenhirLib.EngineTypes.state = _menhir_s;
24886 MenhirLib.EngineTypes.semv = Obj.repr _v;
24887 MenhirLib.EngineTypes.startp = _startpos;
24888 MenhirLib.EngineTypes.endp = _endpos;
24889 MenhirLib.EngineTypes.next = _menhir_stack;
24890 });
24891 (fun _menhir_env ->
24892 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24893 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
24894 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
24895 let _endpos = _startpos in
24896 let _v : 'tv_plus_after_exp =
24897 # 2243 "parser_cocci_menhir.mly"
24898 ([])
24899 # 24873 "parser_cocci_menhir.ml"
24900 in
24901 _menhir_env.MenhirLib.EngineTypes.stack <- {
24902 MenhirLib.EngineTypes.state = _menhir_s;
24903 MenhirLib.EngineTypes.semv = Obj.repr _v;
24904 MenhirLib.EngineTypes.startp = _startpos;
24905 MenhirLib.EngineTypes.endp = _endpos;
24906 MenhirLib.EngineTypes.next = _menhir_stack;
24907 });
24908 (fun _menhir_env ->
24909 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24910 let {
24911 MenhirLib.EngineTypes.semv = _2;
24912 MenhirLib.EngineTypes.startp = _startpos__2_;
24913 MenhirLib.EngineTypes.endp = _endpos__2_;
24914 MenhirLib.EngineTypes.next = {
24915 MenhirLib.EngineTypes.state = _menhir_s;
24916 MenhirLib.EngineTypes.semv = _1;
24917 MenhirLib.EngineTypes.startp = _startpos__1_;
24918 MenhirLib.EngineTypes.endp = _endpos__1_;
24919 MenhirLib.EngineTypes.next = _menhir_stack;
24920 };
24921 } = _menhir_stack in
24922 let _2 : 'tv_plus_after_dots = Obj.magic _2 in
24923 let _1 : 'tv_stm_dots = Obj.magic _1 in
24924 let _startpos = _startpos__1_ in
24925 let _endpos = _endpos__2_ in
24926 let _v : 'tv_plus_after_exp =
24927 # 2244 "parser_cocci_menhir.mly"
24928 ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
24929 # 24903 "parser_cocci_menhir.ml"
24930 in
24931 _menhir_env.MenhirLib.EngineTypes.stack <- {
24932 MenhirLib.EngineTypes.state = _menhir_s;
24933 MenhirLib.EngineTypes.semv = Obj.repr _v;
24934 MenhirLib.EngineTypes.startp = _startpos;
24935 MenhirLib.EngineTypes.endp = _endpos;
24936 MenhirLib.EngineTypes.next = _menhir_stack;
24937 });
24938 (fun _menhir_env ->
24939 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24940 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
24941 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
24942 let _endpos = _startpos in
24943 let _v : 'tv_plus_after_stm =
24944 # 2256 "parser_cocci_menhir.mly"
24945 ([])
24946 # 24920 "parser_cocci_menhir.ml"
24947 in
24948 _menhir_env.MenhirLib.EngineTypes.stack <- {
24949 MenhirLib.EngineTypes.state = _menhir_s;
24950 MenhirLib.EngineTypes.semv = Obj.repr _v;
24951 MenhirLib.EngineTypes.startp = _startpos;
24952 MenhirLib.EngineTypes.endp = _endpos;
24953 MenhirLib.EngineTypes.next = _menhir_stack;
24954 });
24955 (fun _menhir_env ->
24956 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24957 let {
24958 MenhirLib.EngineTypes.semv = _2;
24959 MenhirLib.EngineTypes.startp = _startpos__2_;
24960 MenhirLib.EngineTypes.endp = _endpos__2_;
24961 MenhirLib.EngineTypes.next = {
24962 MenhirLib.EngineTypes.state = _menhir_s;
24963 MenhirLib.EngineTypes.semv = _1;
24964 MenhirLib.EngineTypes.startp = _startpos__1_;
24965 MenhirLib.EngineTypes.endp = _endpos__1_;
24966 MenhirLib.EngineTypes.next = _menhir_stack;
24967 };
24968 } = _menhir_stack in
24969 let _2 : 'tv_plus_after_dots = Obj.magic _2 in
24970 let _1 : 'tv_stm_dots = Obj.magic _1 in
24971 let _startpos = _startpos__1_ in
24972 let _endpos = _endpos__2_ in
24973 let _v : 'tv_plus_after_stm =
24974 # 2257 "parser_cocci_menhir.mly"
24975 ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
24976 # 24950 "parser_cocci_menhir.ml"
24977 in
24978 _menhir_env.MenhirLib.EngineTypes.stack <- {
24979 MenhirLib.EngineTypes.state = _menhir_s;
24980 MenhirLib.EngineTypes.semv = Obj.repr _v;
24981 MenhirLib.EngineTypes.startp = _startpos;
24982 MenhirLib.EngineTypes.endp = _endpos;
24983 MenhirLib.EngineTypes.next = _menhir_stack;
24984 });
24985 (fun _menhir_env ->
24986 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
24987 let {
24988 MenhirLib.EngineTypes.semv = _2;
24989 MenhirLib.EngineTypes.startp = _startpos__2_;
24990 MenhirLib.EngineTypes.endp = _endpos__2_;
24991 MenhirLib.EngineTypes.next = {
24992 MenhirLib.EngineTypes.state = _menhir_s;
24993 MenhirLib.EngineTypes.semv = _1;
24994 MenhirLib.EngineTypes.startp = _startpos__1_;
24995 MenhirLib.EngineTypes.endp = _endpos__1_;
24996 MenhirLib.EngineTypes.next = _menhir_stack;
24997 };
24998 } = _menhir_stack in
24999 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
25000 let _1 : 'tv_fundecl = Obj.magic _1 in
25001 let _startpos = _startpos__1_ in
25002 let _endpos = _endpos__2_ in
25003 let _v : 'tv_plus_after_stm =
25004 # 2258 "parser_cocci_menhir.mly"
25005 ( Ast0.wrap(Ast0.OTHER(_1))::_2 )
25006 # 24980 "parser_cocci_menhir.ml"
25007 in
25008 _menhir_env.MenhirLib.EngineTypes.stack <- {
25009 MenhirLib.EngineTypes.state = _menhir_s;
25010 MenhirLib.EngineTypes.semv = Obj.repr _v;
25011 MenhirLib.EngineTypes.startp = _startpos;
25012 MenhirLib.EngineTypes.endp = _endpos;
25013 MenhirLib.EngineTypes.next = _menhir_stack;
25014 });
25015 (fun _menhir_env ->
25016 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25017 let {
25018 MenhirLib.EngineTypes.semv = _2;
25019 MenhirLib.EngineTypes.startp = _startpos__2_;
25020 MenhirLib.EngineTypes.endp = _endpos__2_;
25021 MenhirLib.EngineTypes.next = {
25022 MenhirLib.EngineTypes.state = _menhir_s;
25023 MenhirLib.EngineTypes.semv = _1;
25024 MenhirLib.EngineTypes.startp = _startpos__1_;
25025 MenhirLib.EngineTypes.endp = _endpos__1_;
25026 MenhirLib.EngineTypes.next = _menhir_stack;
25027 };
25028 } = _menhir_stack in
25029 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
25030 let _1 : 'tv_decl_statement = Obj.magic _1 in
25031 let _startpos = _startpos__1_ in
25032 let _endpos = _endpos__2_ in
25033 let _v : 'tv_plus_after_stm =
25034 # 2260 "parser_cocci_menhir.mly"
25035 ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
25036 # 25010 "parser_cocci_menhir.ml"
25037 in
25038 _menhir_env.MenhirLib.EngineTypes.stack <- {
25039 MenhirLib.EngineTypes.state = _menhir_s;
25040 MenhirLib.EngineTypes.semv = Obj.repr _v;
25041 MenhirLib.EngineTypes.startp = _startpos;
25042 MenhirLib.EngineTypes.endp = _endpos;
25043 MenhirLib.EngineTypes.next = _menhir_stack;
25044 });
25045 (fun _menhir_env ->
25046 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25047 let {
25048 MenhirLib.EngineTypes.semv = b;
25049 MenhirLib.EngineTypes.startp = _startpos_b_;
25050 MenhirLib.EngineTypes.endp = _endpos_b_;
25051 MenhirLib.EngineTypes.next = {
25052 MenhirLib.EngineTypes.state = _menhir_s;
25053 MenhirLib.EngineTypes.semv = f;
25054 MenhirLib.EngineTypes.startp = _startpos_f_;
25055 MenhirLib.EngineTypes.endp = _endpos_f_;
25056 MenhirLib.EngineTypes.next = _menhir_stack;
25057 };
25058 } = _menhir_stack in
25059 let b : 'tv_loption_plus_start_ = Obj.magic b in
25060 let f : 'tv_loption_filespec_ = Obj.magic f in
25061 let _startpos = _startpos_f_ in
25062 let _endpos = _endpos_b_ in
25063 let _v : 'tv_plus_body =
25064 # 846 "parser_cocci_menhir.mly"
25065 ( f@b(*@ew*) )
25066 # 25040 "parser_cocci_menhir.ml"
25067 in
25068 _menhir_env.MenhirLib.EngineTypes.stack <- {
25069 MenhirLib.EngineTypes.state = _menhir_s;
25070 MenhirLib.EngineTypes.semv = Obj.repr _v;
25071 MenhirLib.EngineTypes.startp = _startpos;
25072 MenhirLib.EngineTypes.endp = _endpos;
25073 MenhirLib.EngineTypes.next = _menhir_stack;
25074 });
25075 (fun _menhir_env ->
25076 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25077 let {
25078 MenhirLib.EngineTypes.semv = b;
25079 MenhirLib.EngineTypes.startp = _startpos_b_;
25080 MenhirLib.EngineTypes.endp = _endpos_b_;
25081 MenhirLib.EngineTypes.next = {
25082 MenhirLib.EngineTypes.state = _menhir_s;
25083 MenhirLib.EngineTypes.semv = f;
25084 MenhirLib.EngineTypes.startp = _startpos_f_;
25085 MenhirLib.EngineTypes.endp = _endpos_f_;
25086 MenhirLib.EngineTypes.next = _menhir_stack;
25087 };
25088 } = _menhir_stack in
25089 let b : 'tv_top_eexpr = Obj.magic b in
25090 let f : 'tv_loption_filespec_ = Obj.magic f in
25091 let _startpos = _startpos_f_ in
25092 let _endpos = _endpos_b_ in
25093 let _v : 'tv_plus_exp_body =
25094 # 860 "parser_cocci_menhir.mly"
25095 ( f@[b](*@ew*) )
25096 # 25070 "parser_cocci_menhir.ml"
25097 in
25098 _menhir_env.MenhirLib.EngineTypes.stack <- {
25099 MenhirLib.EngineTypes.state = _menhir_s;
25100 MenhirLib.EngineTypes.semv = Obj.repr _v;
25101 MenhirLib.EngineTypes.startp = _startpos;
25102 MenhirLib.EngineTypes.endp = _endpos;
25103 MenhirLib.EngineTypes.next = _menhir_stack;
25104 });
25105 (fun _menhir_env ->
25106 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25107 let {
25108 MenhirLib.EngineTypes.startp = _startpos__2_;
25109 MenhirLib.EngineTypes.endp = _endpos__2_;
25110 MenhirLib.EngineTypes.next = {
25111 MenhirLib.EngineTypes.state = _menhir_s;
25112 MenhirLib.EngineTypes.semv = _1;
25113 MenhirLib.EngineTypes.startp = _startpos__1_;
25114 MenhirLib.EngineTypes.endp = _endpos__1_;
25115 MenhirLib.EngineTypes.next = _menhir_stack;
25116 };
25117 } = _menhir_stack in
25118 let _1 : 'tv_plus_exp_body = Obj.magic _1 in
25119 let _startpos = _startpos__1_ in
25120 let _endpos = _endpos__2_ in
25121 let _v : (
25122 # 191 "parser_cocci_menhir.mly"
25123 (Ast0_cocci.rule)
25124 # 25098 "parser_cocci_menhir.ml"
25125 ) =
25126 # 227 "parser_cocci_menhir.mly"
25127 ( _1 )
25128 # 25102 "parser_cocci_menhir.ml"
25129 in
25130 _menhir_env.MenhirLib.EngineTypes.stack <- {
25131 MenhirLib.EngineTypes.state = _menhir_s;
25132 MenhirLib.EngineTypes.semv = Obj.repr _v;
25133 MenhirLib.EngineTypes.startp = _startpos;
25134 MenhirLib.EngineTypes.endp = _endpos;
25135 MenhirLib.EngineTypes.next = _menhir_stack;
25136 });
25137 (fun _menhir_env ->
25138 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25139 let {
25140 MenhirLib.EngineTypes.startp = _startpos__2_;
25141 MenhirLib.EngineTypes.endp = _endpos__2_;
25142 MenhirLib.EngineTypes.next = {
25143 MenhirLib.EngineTypes.state = _menhir_s;
25144 MenhirLib.EngineTypes.semv = p;
25145 MenhirLib.EngineTypes.startp = _startpos_p_;
25146 MenhirLib.EngineTypes.endp = _endpos_p_;
25147 MenhirLib.EngineTypes.next = _menhir_stack;
25148 };
25149 } = _menhir_stack in
25150 let p : 'tv_plus_exp_body = Obj.magic p in
25151 let _startpos = _startpos_p_ in
25152 let _endpos = _endpos__2_ in
25153 let _v : (
25154 # 191 "parser_cocci_menhir.mly"
25155 (Ast0_cocci.rule)
25156 # 25130 "parser_cocci_menhir.ml"
25157 ) =
25158 # 227 "parser_cocci_menhir.mly"
25159 ( p )
25160 # 25134 "parser_cocci_menhir.ml"
25161 in
25162 _menhir_env.MenhirLib.EngineTypes.stack <- {
25163 MenhirLib.EngineTypes.state = _menhir_s;
25164 MenhirLib.EngineTypes.semv = Obj.repr _v;
25165 MenhirLib.EngineTypes.startp = _startpos;
25166 MenhirLib.EngineTypes.endp = _endpos;
25167 MenhirLib.EngineTypes.next = _menhir_stack;
25168 });
25169 (fun _menhir_env ->
25170 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25171 let {
25172 MenhirLib.EngineTypes.startp = _startpos__2_;
25173 MenhirLib.EngineTypes.endp = _endpos__2_;
25174 MenhirLib.EngineTypes.next = {
25175 MenhirLib.EngineTypes.state = _menhir_s;
25176 MenhirLib.EngineTypes.semv = p;
25177 MenhirLib.EngineTypes.startp = _startpos_p_;
25178 MenhirLib.EngineTypes.endp = _endpos_p_;
25179 MenhirLib.EngineTypes.next = _menhir_stack;
25180 };
25181 } = _menhir_stack in
25182 let p : 'tv_plus_exp_body = Obj.magic p in
25183 let _startpos = _startpos_p_ in
25184 let _endpos = _endpos__2_ in
25185 let _v : (
25186 # 191 "parser_cocci_menhir.mly"
25187 (Ast0_cocci.rule)
25188 # 25162 "parser_cocci_menhir.ml"
25189 ) =
25190 # 228 "parser_cocci_menhir.mly"
25191 ( p )
25192 # 25166 "parser_cocci_menhir.ml"
25193 in
25194 _menhir_env.MenhirLib.EngineTypes.stack <- {
25195 MenhirLib.EngineTypes.state = _menhir_s;
25196 MenhirLib.EngineTypes.semv = Obj.repr _v;
25197 MenhirLib.EngineTypes.startp = _startpos;
25198 MenhirLib.EngineTypes.endp = _endpos;
25199 MenhirLib.EngineTypes.next = _menhir_stack;
25200 });
25201 (fun _menhir_env ->
25202 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25203 let {
25204 MenhirLib.EngineTypes.startp = _startpos__2_;
25205 MenhirLib.EngineTypes.endp = _endpos__2_;
25206 MenhirLib.EngineTypes.next = {
25207 MenhirLib.EngineTypes.state = _menhir_s;
25208 MenhirLib.EngineTypes.semv = _1;
25209 MenhirLib.EngineTypes.startp = _startpos__1_;
25210 MenhirLib.EngineTypes.endp = _endpos__1_;
25211 MenhirLib.EngineTypes.next = _menhir_stack;
25212 };
25213 } = _menhir_stack in
25214 let _1 : 'tv_plus_body = Obj.magic _1 in
25215 let _startpos = _startpos__1_ in
25216 let _endpos = _endpos__2_ in
25217 let _v : (
25218 # 188 "parser_cocci_menhir.mly"
25219 (Ast0_cocci.rule)
25220 # 25194 "parser_cocci_menhir.ml"
25221 ) =
25222 # 223 "parser_cocci_menhir.mly"
25223 ( _1 )
25224 # 25198 "parser_cocci_menhir.ml"
25225 in
25226 _menhir_env.MenhirLib.EngineTypes.stack <- {
25227 MenhirLib.EngineTypes.state = _menhir_s;
25228 MenhirLib.EngineTypes.semv = Obj.repr _v;
25229 MenhirLib.EngineTypes.startp = _startpos;
25230 MenhirLib.EngineTypes.endp = _endpos;
25231 MenhirLib.EngineTypes.next = _menhir_stack;
25232 });
25233 (fun _menhir_env ->
25234 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25235 let {
25236 MenhirLib.EngineTypes.startp = _startpos__2_;
25237 MenhirLib.EngineTypes.endp = _endpos__2_;
25238 MenhirLib.EngineTypes.next = {
25239 MenhirLib.EngineTypes.state = _menhir_s;
25240 MenhirLib.EngineTypes.semv = p;
25241 MenhirLib.EngineTypes.startp = _startpos_p_;
25242 MenhirLib.EngineTypes.endp = _endpos_p_;
25243 MenhirLib.EngineTypes.next = _menhir_stack;
25244 };
25245 } = _menhir_stack in
25246 let p : 'tv_plus_body = Obj.magic p in
25247 let _startpos = _startpos_p_ in
25248 let _endpos = _endpos__2_ in
25249 let _v : (
25250 # 188 "parser_cocci_menhir.mly"
25251 (Ast0_cocci.rule)
25252 # 25226 "parser_cocci_menhir.ml"
25253 ) =
25254 # 223 "parser_cocci_menhir.mly"
25255 ( p )
25256 # 25230 "parser_cocci_menhir.ml"
25257 in
25258 _menhir_env.MenhirLib.EngineTypes.stack <- {
25259 MenhirLib.EngineTypes.state = _menhir_s;
25260 MenhirLib.EngineTypes.semv = Obj.repr _v;
25261 MenhirLib.EngineTypes.startp = _startpos;
25262 MenhirLib.EngineTypes.endp = _endpos;
25263 MenhirLib.EngineTypes.next = _menhir_stack;
25264 });
25265 (fun _menhir_env ->
25266 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25267 let {
25268 MenhirLib.EngineTypes.startp = _startpos__2_;
25269 MenhirLib.EngineTypes.endp = _endpos__2_;
25270 MenhirLib.EngineTypes.next = {
25271 MenhirLib.EngineTypes.state = _menhir_s;
25272 MenhirLib.EngineTypes.semv = p;
25273 MenhirLib.EngineTypes.startp = _startpos_p_;
25274 MenhirLib.EngineTypes.endp = _endpos_p_;
25275 MenhirLib.EngineTypes.next = _menhir_stack;
25276 };
25277 } = _menhir_stack in
25278 let p : 'tv_plus_body = Obj.magic p in
25279 let _startpos = _startpos_p_ in
25280 let _endpos = _endpos__2_ in
25281 let _v : (
25282 # 188 "parser_cocci_menhir.mly"
25283 (Ast0_cocci.rule)
25284 # 25258 "parser_cocci_menhir.ml"
25285 ) =
25286 # 224 "parser_cocci_menhir.mly"
25287 ( p )
25288 # 25262 "parser_cocci_menhir.ml"
25289 in
25290 _menhir_env.MenhirLib.EngineTypes.stack <- {
25291 MenhirLib.EngineTypes.state = _menhir_s;
25292 MenhirLib.EngineTypes.semv = Obj.repr _v;
25293 MenhirLib.EngineTypes.startp = _startpos;
25294 MenhirLib.EngineTypes.endp = _endpos;
25295 MenhirLib.EngineTypes.next = _menhir_stack;
25296 });
25297 (fun _menhir_env ->
25298 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25299 let {
25300 MenhirLib.EngineTypes.state = _menhir_s;
25301 MenhirLib.EngineTypes.semv = _1;
25302 MenhirLib.EngineTypes.startp = _startpos__1_;
25303 MenhirLib.EngineTypes.endp = _endpos__1_;
25304 MenhirLib.EngineTypes.next = _menhir_stack;
25305 } = _menhir_stack in
25306 let _1 : 'tv_ctype = Obj.magic _1 in
25307 let _startpos = _startpos__1_ in
25308 let _endpos = _endpos__1_ in
25309 let _v : 'tv_plus_start =
25310 # 2232 "parser_cocci_menhir.mly"
25311 ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] )
25312 # 25286 "parser_cocci_menhir.ml"
25313 in
25314 _menhir_env.MenhirLib.EngineTypes.stack <- {
25315 MenhirLib.EngineTypes.state = _menhir_s;
25316 MenhirLib.EngineTypes.semv = Obj.repr _v;
25317 MenhirLib.EngineTypes.startp = _startpos;
25318 MenhirLib.EngineTypes.endp = _endpos;
25319 MenhirLib.EngineTypes.next = _menhir_stack;
25320 });
25321 (fun _menhir_env ->
25322 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25323 let {
25324 MenhirLib.EngineTypes.state = _menhir_s;
25325 MenhirLib.EngineTypes.semv = _1;
25326 MenhirLib.EngineTypes.startp = _startpos__1_;
25327 MenhirLib.EngineTypes.endp = _endpos__1_;
25328 MenhirLib.EngineTypes.next = _menhir_stack;
25329 } = _menhir_stack in
25330 let _1 : 'tv_top_init = Obj.magic _1 in
25331 let _startpos = _startpos__1_ in
25332 let _endpos = _endpos__1_ in
25333 let _v : 'tv_plus_start =
25334 # 2233 "parser_cocci_menhir.mly"
25335 ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.TopInit(_1))))] )
25336 # 25310 "parser_cocci_menhir.ml"
25337 in
25338 _menhir_env.MenhirLib.EngineTypes.stack <- {
25339 MenhirLib.EngineTypes.state = _menhir_s;
25340 MenhirLib.EngineTypes.semv = Obj.repr _v;
25341 MenhirLib.EngineTypes.startp = _startpos;
25342 MenhirLib.EngineTypes.endp = _endpos;
25343 MenhirLib.EngineTypes.next = _menhir_stack;
25344 });
25345 (fun _menhir_env ->
25346 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25347 let {
25348 MenhirLib.EngineTypes.semv = _2;
25349 MenhirLib.EngineTypes.startp = _startpos__2_;
25350 MenhirLib.EngineTypes.endp = _endpos__2_;
25351 MenhirLib.EngineTypes.next = {
25352 MenhirLib.EngineTypes.state = _menhir_s;
25353 MenhirLib.EngineTypes.semv = _1;
25354 MenhirLib.EngineTypes.startp = _startpos__1_;
25355 MenhirLib.EngineTypes.endp = _endpos__1_;
25356 MenhirLib.EngineTypes.next = _menhir_stack;
25357 };
25358 } = _menhir_stack in
25359 let _2 : 'tv_plus_after_dots = Obj.magic _2 in
25360 let _1 : 'tv_stm_dots = Obj.magic _1 in
25361 let _startpos = _startpos__1_ in
25362 let _endpos = _endpos__2_ in
25363 let _v : 'tv_plus_start =
25364 # 2235 "parser_cocci_menhir.mly"
25365 ( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
25366 # 25340 "parser_cocci_menhir.ml"
25367 in
25368 _menhir_env.MenhirLib.EngineTypes.stack <- {
25369 MenhirLib.EngineTypes.state = _menhir_s;
25370 MenhirLib.EngineTypes.semv = Obj.repr _v;
25371 MenhirLib.EngineTypes.startp = _startpos;
25372 MenhirLib.EngineTypes.endp = _endpos;
25373 MenhirLib.EngineTypes.next = _menhir_stack;
25374 });
25375 (fun _menhir_env ->
25376 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25377 let {
25378 MenhirLib.EngineTypes.semv = _2;
25379 MenhirLib.EngineTypes.startp = _startpos__2_;
25380 MenhirLib.EngineTypes.endp = _endpos__2_;
25381 MenhirLib.EngineTypes.next = {
25382 MenhirLib.EngineTypes.state = _menhir_s;
25383 MenhirLib.EngineTypes.semv = _1;
25384 MenhirLib.EngineTypes.startp = _startpos__1_;
25385 MenhirLib.EngineTypes.endp = _endpos__1_;
25386 MenhirLib.EngineTypes.next = _menhir_stack;
25387 };
25388 } = _menhir_stack in
25389 let _2 : 'tv_plus_after_exp = Obj.magic _2 in
25390 let _1 : 'tv_expr = Obj.magic _1 in
25391 let _startpos = _startpos__1_ in
25392 let _endpos = _endpos__2_ in
25393 let _v : 'tv_plus_start =
25394 # 2237 "parser_cocci_menhir.mly"
25395 ( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 )
25396 # 25370 "parser_cocci_menhir.ml"
25397 in
25398 _menhir_env.MenhirLib.EngineTypes.stack <- {
25399 MenhirLib.EngineTypes.state = _menhir_s;
25400 MenhirLib.EngineTypes.semv = Obj.repr _v;
25401 MenhirLib.EngineTypes.startp = _startpos;
25402 MenhirLib.EngineTypes.endp = _endpos;
25403 MenhirLib.EngineTypes.next = _menhir_stack;
25404 });
25405 (fun _menhir_env ->
25406 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25407 let {
25408 MenhirLib.EngineTypes.semv = _2;
25409 MenhirLib.EngineTypes.startp = _startpos__2_;
25410 MenhirLib.EngineTypes.endp = _endpos__2_;
25411 MenhirLib.EngineTypes.next = {
25412 MenhirLib.EngineTypes.state = _menhir_s;
25413 MenhirLib.EngineTypes.semv = _1;
25414 MenhirLib.EngineTypes.startp = _startpos__1_;
25415 MenhirLib.EngineTypes.endp = _endpos__1_;
25416 MenhirLib.EngineTypes.next = _menhir_stack;
25417 };
25418 } = _menhir_stack in
25419 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
25420 let _1 : 'tv_fundecl = Obj.magic _1 in
25421 let _startpos = _startpos__1_ in
25422 let _endpos = _endpos__2_ in
25423 let _v : 'tv_plus_start =
25424 # 2238 "parser_cocci_menhir.mly"
25425 ( Ast0.wrap(Ast0.OTHER(_1))::_2 )
25426 # 25400 "parser_cocci_menhir.ml"
25427 in
25428 _menhir_env.MenhirLib.EngineTypes.stack <- {
25429 MenhirLib.EngineTypes.state = _menhir_s;
25430 MenhirLib.EngineTypes.semv = Obj.repr _v;
25431 MenhirLib.EngineTypes.startp = _startpos;
25432 MenhirLib.EngineTypes.endp = _endpos;
25433 MenhirLib.EngineTypes.next = _menhir_stack;
25434 });
25435 (fun _menhir_env ->
25436 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25437 let {
25438 MenhirLib.EngineTypes.semv = _2;
25439 MenhirLib.EngineTypes.startp = _startpos__2_;
25440 MenhirLib.EngineTypes.endp = _endpos__2_;
25441 MenhirLib.EngineTypes.next = {
25442 MenhirLib.EngineTypes.state = _menhir_s;
25443 MenhirLib.EngineTypes.semv = _1;
25444 MenhirLib.EngineTypes.startp = _startpos__1_;
25445 MenhirLib.EngineTypes.endp = _endpos__1_;
25446 MenhirLib.EngineTypes.next = _menhir_stack;
25447 };
25448 } = _menhir_stack in
25449 let _2 : 'tv_plus_after_stm = Obj.magic _2 in
25450 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
25451 let _startpos = _startpos__1_ in
25452 let _endpos = _endpos__2_ in
25453 let _v : 'tv_plus_start =
25454 # 2240 "parser_cocci_menhir.mly"
25455 ( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
25456 # 25430 "parser_cocci_menhir.ml"
25457 in
25458 _menhir_env.MenhirLib.EngineTypes.stack <- {
25459 MenhirLib.EngineTypes.state = _menhir_s;
25460 MenhirLib.EngineTypes.semv = Obj.repr _v;
25461 MenhirLib.EngineTypes.startp = _startpos;
25462 MenhirLib.EngineTypes.endp = _endpos;
25463 MenhirLib.EngineTypes.next = _menhir_stack;
25464 });
25465 (fun _menhir_env ->
25466 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25467 let {
25468 MenhirLib.EngineTypes.state = _menhir_s;
25469 MenhirLib.EngineTypes.semv = _1;
25470 MenhirLib.EngineTypes.startp = _startpos__1_;
25471 MenhirLib.EngineTypes.endp = _endpos__1_;
25472 MenhirLib.EngineTypes.next = _menhir_stack;
25473 } = _menhir_stack in
25474 let _1 : 'tv_primary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
25475 let _startpos = _startpos__1_ in
25476 let _endpos = _endpos__1_ in
25477 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
25478 # 1660 "parser_cocci_menhir.mly"
25479 ( _1 )
25480 # 25454 "parser_cocci_menhir.ml"
25481 in
25482 _menhir_env.MenhirLib.EngineTypes.stack <- {
25483 MenhirLib.EngineTypes.state = _menhir_s;
25484 MenhirLib.EngineTypes.semv = Obj.repr _v;
25485 MenhirLib.EngineTypes.startp = _startpos;
25486 MenhirLib.EngineTypes.endp = _endpos;
25487 MenhirLib.EngineTypes.next = _menhir_stack;
25488 });
25489 (fun _menhir_env ->
25490 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25491 let {
25492 MenhirLib.EngineTypes.semv = _4;
25493 MenhirLib.EngineTypes.startp = _startpos__4_;
25494 MenhirLib.EngineTypes.endp = _endpos__4_;
25495 MenhirLib.EngineTypes.next = {
25496 MenhirLib.EngineTypes.semv = _3;
25497 MenhirLib.EngineTypes.startp = _startpos__3_;
25498 MenhirLib.EngineTypes.endp = _endpos__3_;
25499 MenhirLib.EngineTypes.next = {
25500 MenhirLib.EngineTypes.semv = _2;
25501 MenhirLib.EngineTypes.startp = _startpos__2_;
25502 MenhirLib.EngineTypes.endp = _endpos__2_;
25503 MenhirLib.EngineTypes.next = {
25504 MenhirLib.EngineTypes.state = _menhir_s;
25505 MenhirLib.EngineTypes.semv = _1;
25506 MenhirLib.EngineTypes.startp = _startpos__1_;
25507 MenhirLib.EngineTypes.endp = _endpos__1_;
25508 MenhirLib.EngineTypes.next = _menhir_stack;
25509 };
25510 };
25511 };
25512 } = _menhir_stack in
25513 let _4 : (
25514 # 148 "parser_cocci_menhir.mly"
25515 (Data.clt)
25516 # 25490 "parser_cocci_menhir.ml"
25517 ) = Obj.magic _4 in
25518 let _3 : 'tv_eexpr = Obj.magic _3 in
25519 let _2 : (
25520 # 148 "parser_cocci_menhir.mly"
25521 (Data.clt)
25522 # 25496 "parser_cocci_menhir.ml"
25523 ) = Obj.magic _2 in
25524 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
25525 let _startpos = _startpos__1_ in
25526 let _endpos = _endpos__4_ in
25527 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
25528 # 1662 "parser_cocci_menhir.mly"
25529 ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
25530 P.clt2mcode "]" _4)) )
25531 # 25505 "parser_cocci_menhir.ml"
25532 in
25533 _menhir_env.MenhirLib.EngineTypes.stack <- {
25534 MenhirLib.EngineTypes.state = _menhir_s;
25535 MenhirLib.EngineTypes.semv = Obj.repr _v;
25536 MenhirLib.EngineTypes.startp = _startpos;
25537 MenhirLib.EngineTypes.endp = _endpos;
25538 MenhirLib.EngineTypes.next = _menhir_stack;
25539 });
25540 (fun _menhir_env ->
25541 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25542 let {
25543 MenhirLib.EngineTypes.semv = _3;
25544 MenhirLib.EngineTypes.startp = _startpos__3_;
25545 MenhirLib.EngineTypes.endp = _endpos__3_;
25546 MenhirLib.EngineTypes.next = {
25547 MenhirLib.EngineTypes.semv = _2;
25548 MenhirLib.EngineTypes.startp = _startpos__2_;
25549 MenhirLib.EngineTypes.endp = _endpos__2_;
25550 MenhirLib.EngineTypes.next = {
25551 MenhirLib.EngineTypes.state = _menhir_s;
25552 MenhirLib.EngineTypes.semv = _1;
25553 MenhirLib.EngineTypes.startp = _startpos__1_;
25554 MenhirLib.EngineTypes.endp = _endpos__1_;
25555 MenhirLib.EngineTypes.next = _menhir_stack;
25556 };
25557 };
25558 } = _menhir_stack in
25559 let _3 : 'tv_disj_ident = Obj.magic _3 in
25560 let _2 : (
25561 # 153 "parser_cocci_menhir.mly"
25562 (Data.clt)
25563 # 25537 "parser_cocci_menhir.ml"
25564 ) = Obj.magic _2 in
25565 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
25566 let _startpos = _startpos__1_ in
25567 let _endpos = _endpos__3_ in
25568 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
25569 # 1665 "parser_cocci_menhir.mly"
25570 ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
25571 # 25545 "parser_cocci_menhir.ml"
25572 in
25573 _menhir_env.MenhirLib.EngineTypes.stack <- {
25574 MenhirLib.EngineTypes.state = _menhir_s;
25575 MenhirLib.EngineTypes.semv = Obj.repr _v;
25576 MenhirLib.EngineTypes.startp = _startpos;
25577 MenhirLib.EngineTypes.endp = _endpos;
25578 MenhirLib.EngineTypes.next = _menhir_stack;
25579 });
25580 (fun _menhir_env ->
25581 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25582 let {
25583 MenhirLib.EngineTypes.semv = _3;
25584 MenhirLib.EngineTypes.startp = _startpos__3_;
25585 MenhirLib.EngineTypes.endp = _endpos__3_;
25586 MenhirLib.EngineTypes.next = {
25587 MenhirLib.EngineTypes.semv = _2;
25588 MenhirLib.EngineTypes.startp = _startpos__2_;
25589 MenhirLib.EngineTypes.endp = _endpos__2_;
25590 MenhirLib.EngineTypes.next = {
25591 MenhirLib.EngineTypes.state = _menhir_s;
25592 MenhirLib.EngineTypes.semv = _1;
25593 MenhirLib.EngineTypes.startp = _startpos__1_;
25594 MenhirLib.EngineTypes.endp = _endpos__1_;
25595 MenhirLib.EngineTypes.next = _menhir_stack;
25596 };
25597 };
25598 } = _menhir_stack in
25599 let _3 : 'tv_disj_ident = Obj.magic _3 in
25600 let _2 : (
25601 # 150 "parser_cocci_menhir.mly"
25602 (Data.clt)
25603 # 25577 "parser_cocci_menhir.ml"
25604 ) = Obj.magic _2 in
25605 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
25606 let _startpos = _startpos__1_ in
25607 let _endpos = _endpos__3_ in
25608 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
25609 # 1667 "parser_cocci_menhir.mly"
25610 ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
25611 _3)) )
25612 # 25586 "parser_cocci_menhir.ml"
25613 in
25614 _menhir_env.MenhirLib.EngineTypes.stack <- {
25615 MenhirLib.EngineTypes.state = _menhir_s;
25616 MenhirLib.EngineTypes.semv = Obj.repr _v;
25617 MenhirLib.EngineTypes.startp = _startpos;
25618 MenhirLib.EngineTypes.endp = _endpos;
25619 MenhirLib.EngineTypes.next = _menhir_stack;
25620 });
25621 (fun _menhir_env ->
25622 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25623 let {
25624 MenhirLib.EngineTypes.semv = _2;
25625 MenhirLib.EngineTypes.startp = _startpos__2_;
25626 MenhirLib.EngineTypes.endp = _endpos__2_;
25627 MenhirLib.EngineTypes.next = {
25628 MenhirLib.EngineTypes.state = _menhir_s;
25629 MenhirLib.EngineTypes.semv = _1;
25630 MenhirLib.EngineTypes.startp = _startpos__1_;
25631 MenhirLib.EngineTypes.endp = _endpos__1_;
25632 MenhirLib.EngineTypes.next = _menhir_stack;
25633 };
25634 } = _menhir_stack in
25635 let _2 : (
25636 # 131 "parser_cocci_menhir.mly"
25637 (Data.clt)
25638 # 25612 "parser_cocci_menhir.ml"
25639 ) = Obj.magic _2 in
25640 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
25641 let _startpos = _startpos__1_ in
25642 let _endpos = _endpos__2_ in
25643 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
25644 # 1670 "parser_cocci_menhir.mly"
25645 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
25646 # 25620 "parser_cocci_menhir.ml"
25647 in
25648 _menhir_env.MenhirLib.EngineTypes.stack <- {
25649 MenhirLib.EngineTypes.state = _menhir_s;
25650 MenhirLib.EngineTypes.semv = Obj.repr _v;
25651 MenhirLib.EngineTypes.startp = _startpos;
25652 MenhirLib.EngineTypes.endp = _endpos;
25653 MenhirLib.EngineTypes.next = _menhir_stack;
25654 });
25655 (fun _menhir_env ->
25656 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25657 let {
25658 MenhirLib.EngineTypes.semv = _2;
25659 MenhirLib.EngineTypes.startp = _startpos__2_;
25660 MenhirLib.EngineTypes.endp = _endpos__2_;
25661 MenhirLib.EngineTypes.next = {
25662 MenhirLib.EngineTypes.state = _menhir_s;
25663 MenhirLib.EngineTypes.semv = _1;
25664 MenhirLib.EngineTypes.startp = _startpos__1_;
25665 MenhirLib.EngineTypes.endp = _endpos__1_;
25666 MenhirLib.EngineTypes.next = _menhir_stack;
25667 };
25668 } = _menhir_stack in
25669 let _2 : (
25670 # 131 "parser_cocci_menhir.mly"
25671 (Data.clt)
25672 # 25646 "parser_cocci_menhir.ml"
25673 ) = Obj.magic _2 in
25674 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
25675 let _startpos = _startpos__1_ in
25676 let _endpos = _endpos__2_ in
25677 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
25678 # 1672 "parser_cocci_menhir.mly"
25679 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
25680 # 25654 "parser_cocci_menhir.ml"
25681 in
25682 _menhir_env.MenhirLib.EngineTypes.stack <- {
25683 MenhirLib.EngineTypes.state = _menhir_s;
25684 MenhirLib.EngineTypes.semv = Obj.repr _v;
25685 MenhirLib.EngineTypes.startp = _startpos;
25686 MenhirLib.EngineTypes.endp = _endpos;
25687 MenhirLib.EngineTypes.next = _menhir_stack;
25688 });
25689 (fun _menhir_env ->
25690 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25691 let {
25692 MenhirLib.EngineTypes.semv = _4;
25693 MenhirLib.EngineTypes.startp = _startpos__4_;
25694 MenhirLib.EngineTypes.endp = _endpos__4_;
25695 MenhirLib.EngineTypes.next = {
25696 MenhirLib.EngineTypes.semv = _3;
25697 MenhirLib.EngineTypes.startp = _startpos__3_;
25698 MenhirLib.EngineTypes.endp = _endpos__3_;
25699 MenhirLib.EngineTypes.next = {
25700 MenhirLib.EngineTypes.semv = _2;
25701 MenhirLib.EngineTypes.startp = _startpos__2_;
25702 MenhirLib.EngineTypes.endp = _endpos__2_;
25703 MenhirLib.EngineTypes.next = {
25704 MenhirLib.EngineTypes.state = _menhir_s;
25705 MenhirLib.EngineTypes.semv = _1;
25706 MenhirLib.EngineTypes.startp = _startpos__1_;
25707 MenhirLib.EngineTypes.endp = _endpos__1_;
25708 MenhirLib.EngineTypes.next = _menhir_stack;
25709 };
25710 };
25711 };
25712 } = _menhir_stack in
25713 let _4 : (
25714 # 123 "parser_cocci_menhir.mly"
25715 (Data.clt)
25716 # 25690 "parser_cocci_menhir.ml"
25717 ) = Obj.magic _4 in
25718 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
25719 let _2 : (
25720 # 122 "parser_cocci_menhir.mly"
25721 (Data.clt)
25722 # 25696 "parser_cocci_menhir.ml"
25723 ) = Obj.magic _2 in
25724 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
25725 let _startpos = _startpos__1_ in
25726 let _endpos = _endpos__4_ in
25727 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
25728 # 1674 "parser_cocci_menhir.mly"
25729 ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
25730 _3,
25731 P.clt2mcode ")" _4)) )
25732 # 25706 "parser_cocci_menhir.ml"
25733 in
25734 _menhir_env.MenhirLib.EngineTypes.stack <- {
25735 MenhirLib.EngineTypes.state = _menhir_s;
25736 MenhirLib.EngineTypes.semv = Obj.repr _v;
25737 MenhirLib.EngineTypes.startp = _startpos;
25738 MenhirLib.EngineTypes.endp = _endpos;
25739 MenhirLib.EngineTypes.next = _menhir_stack;
25740 });
25741 (fun _menhir_env ->
25742 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25743 let {
25744 MenhirLib.EngineTypes.semv = _6;
25745 MenhirLib.EngineTypes.startp = _startpos__6_;
25746 MenhirLib.EngineTypes.endp = _endpos__6_;
25747 MenhirLib.EngineTypes.next = {
25748 MenhirLib.EngineTypes.semv = _5;
25749 MenhirLib.EngineTypes.startp = _startpos__5_;
25750 MenhirLib.EngineTypes.endp = _endpos__5_;
25751 MenhirLib.EngineTypes.next = {
25752 MenhirLib.EngineTypes.semv = _4;
25753 MenhirLib.EngineTypes.startp = _startpos__4_;
25754 MenhirLib.EngineTypes.endp = _endpos__4_;
25755 MenhirLib.EngineTypes.next = {
25756 MenhirLib.EngineTypes.semv = _3;
25757 MenhirLib.EngineTypes.startp = _startpos__3_;
25758 MenhirLib.EngineTypes.endp = _endpos__3_;
25759 MenhirLib.EngineTypes.next = {
25760 MenhirLib.EngineTypes.semv = _2;
25761 MenhirLib.EngineTypes.startp = _startpos__2_;
25762 MenhirLib.EngineTypes.endp = _endpos__2_;
25763 MenhirLib.EngineTypes.next = {
25764 MenhirLib.EngineTypes.state = _menhir_s;
25765 MenhirLib.EngineTypes.semv = _1;
25766 MenhirLib.EngineTypes.startp = _startpos__1_;
25767 MenhirLib.EngineTypes.endp = _endpos__1_;
25768 MenhirLib.EngineTypes.next = _menhir_stack;
25769 };
25770 };
25771 };
25772 };
25773 };
25774 } = _menhir_stack in
25775 let _6 : (
25776 # 147 "parser_cocci_menhir.mly"
25777 (Data.clt)
25778 # 25752 "parser_cocci_menhir.ml"
25779 ) = Obj.magic _6 in
25780 let _5 : 'tv_initialize_list = Obj.magic _5 in
25781 let _4 : (
25782 # 147 "parser_cocci_menhir.mly"
25783 (Data.clt)
25784 # 25758 "parser_cocci_menhir.ml"
25785 ) = Obj.magic _4 in
25786 let _3 : (
25787 # 123 "parser_cocci_menhir.mly"
25788 (Data.clt)
25789 # 25763 "parser_cocci_menhir.ml"
25790 ) = Obj.magic _3 in
25791 let _2 : 'tv_ctype = Obj.magic _2 in
25792 let _1 : (
25793 # 122 "parser_cocci_menhir.mly"
25794 (Data.clt)
25795 # 25769 "parser_cocci_menhir.ml"
25796 ) = Obj.magic _1 in
25797 let _startpos = _startpos__1_ in
25798 let _endpos = _endpos__6_ in
25799 let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
25800 # 1680 "parser_cocci_menhir.mly"
25801 ( let init =
25802 if P.struct_initializer _5
25803 then
25804 let il = P.drop_dot_commas _5 in
25805 Ast0.wrap
25806 (Ast0.InitList(P.clt2mcode "{" _4,il,P.clt2mcode "}" _6,false))
25807 else
25808 Ast0.wrap
25809 (Ast0.InitList(P.clt2mcode "{" _4,_5,P.clt2mcode "}" _6,true)) in
25810 Ast0.wrap
25811 (Ast0.Constructor(P.clt2mcode "(" _1, _2, P.clt2mcode ")" _3, init)) )
25812 # 25786 "parser_cocci_menhir.ml"
25813 in
25814 _menhir_env.MenhirLib.EngineTypes.stack <- {
25815 MenhirLib.EngineTypes.state = _menhir_s;
25816 MenhirLib.EngineTypes.semv = Obj.repr _v;
25817 MenhirLib.EngineTypes.startp = _startpos;
25818 MenhirLib.EngineTypes.endp = _endpos;
25819 MenhirLib.EngineTypes.next = _menhir_stack;
25820 });
25821 (fun _menhir_env ->
25822 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25823 let {
25824 MenhirLib.EngineTypes.state = _menhir_s;
25825 MenhirLib.EngineTypes.semv = _1;
25826 MenhirLib.EngineTypes.startp = _startpos__1_;
25827 MenhirLib.EngineTypes.endp = _endpos__1_;
25828 MenhirLib.EngineTypes.next = _menhir_stack;
25829 } = _menhir_stack in
25830 let _1 : 'tv_primary_expr_eexpr_invalid_ = Obj.magic _1 in
25831 let _startpos = _startpos__1_ in
25832 let _endpos = _endpos__1_ in
25833 let _v : 'tv_postfix_expr_eexpr_invalid_ =
25834 # 1660 "parser_cocci_menhir.mly"
25835 ( _1 )
25836 # 25810 "parser_cocci_menhir.ml"
25837 in
25838 _menhir_env.MenhirLib.EngineTypes.stack <- {
25839 MenhirLib.EngineTypes.state = _menhir_s;
25840 MenhirLib.EngineTypes.semv = Obj.repr _v;
25841 MenhirLib.EngineTypes.startp = _startpos;
25842 MenhirLib.EngineTypes.endp = _endpos;
25843 MenhirLib.EngineTypes.next = _menhir_stack;
25844 });
25845 (fun _menhir_env ->
25846 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25847 let {
25848 MenhirLib.EngineTypes.semv = _4;
25849 MenhirLib.EngineTypes.startp = _startpos__4_;
25850 MenhirLib.EngineTypes.endp = _endpos__4_;
25851 MenhirLib.EngineTypes.next = {
25852 MenhirLib.EngineTypes.semv = _3;
25853 MenhirLib.EngineTypes.startp = _startpos__3_;
25854 MenhirLib.EngineTypes.endp = _endpos__3_;
25855 MenhirLib.EngineTypes.next = {
25856 MenhirLib.EngineTypes.semv = _2;
25857 MenhirLib.EngineTypes.startp = _startpos__2_;
25858 MenhirLib.EngineTypes.endp = _endpos__2_;
25859 MenhirLib.EngineTypes.next = {
25860 MenhirLib.EngineTypes.state = _menhir_s;
25861 MenhirLib.EngineTypes.semv = _1;
25862 MenhirLib.EngineTypes.startp = _startpos__1_;
25863 MenhirLib.EngineTypes.endp = _endpos__1_;
25864 MenhirLib.EngineTypes.next = _menhir_stack;
25865 };
25866 };
25867 };
25868 } = _menhir_stack in
25869 let _4 : (
25870 # 148 "parser_cocci_menhir.mly"
25871 (Data.clt)
25872 # 25846 "parser_cocci_menhir.ml"
25873 ) = Obj.magic _4 in
25874 let _3 : 'tv_eexpr = Obj.magic _3 in
25875 let _2 : (
25876 # 148 "parser_cocci_menhir.mly"
25877 (Data.clt)
25878 # 25852 "parser_cocci_menhir.ml"
25879 ) = Obj.magic _2 in
25880 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
25881 let _startpos = _startpos__1_ in
25882 let _endpos = _endpos__4_ in
25883 let _v : 'tv_postfix_expr_eexpr_invalid_ =
25884 # 1662 "parser_cocci_menhir.mly"
25885 ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
25886 P.clt2mcode "]" _4)) )
25887 # 25861 "parser_cocci_menhir.ml"
25888 in
25889 _menhir_env.MenhirLib.EngineTypes.stack <- {
25890 MenhirLib.EngineTypes.state = _menhir_s;
25891 MenhirLib.EngineTypes.semv = Obj.repr _v;
25892 MenhirLib.EngineTypes.startp = _startpos;
25893 MenhirLib.EngineTypes.endp = _endpos;
25894 MenhirLib.EngineTypes.next = _menhir_stack;
25895 });
25896 (fun _menhir_env ->
25897 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25898 let {
25899 MenhirLib.EngineTypes.semv = _3;
25900 MenhirLib.EngineTypes.startp = _startpos__3_;
25901 MenhirLib.EngineTypes.endp = _endpos__3_;
25902 MenhirLib.EngineTypes.next = {
25903 MenhirLib.EngineTypes.semv = _2;
25904 MenhirLib.EngineTypes.startp = _startpos__2_;
25905 MenhirLib.EngineTypes.endp = _endpos__2_;
25906 MenhirLib.EngineTypes.next = {
25907 MenhirLib.EngineTypes.state = _menhir_s;
25908 MenhirLib.EngineTypes.semv = _1;
25909 MenhirLib.EngineTypes.startp = _startpos__1_;
25910 MenhirLib.EngineTypes.endp = _endpos__1_;
25911 MenhirLib.EngineTypes.next = _menhir_stack;
25912 };
25913 };
25914 } = _menhir_stack in
25915 let _3 : 'tv_disj_ident = Obj.magic _3 in
25916 let _2 : (
25917 # 153 "parser_cocci_menhir.mly"
25918 (Data.clt)
25919 # 25893 "parser_cocci_menhir.ml"
25920 ) = Obj.magic _2 in
25921 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
25922 let _startpos = _startpos__1_ in
25923 let _endpos = _endpos__3_ in
25924 let _v : 'tv_postfix_expr_eexpr_invalid_ =
25925 # 1665 "parser_cocci_menhir.mly"
25926 ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
25927 # 25901 "parser_cocci_menhir.ml"
25928 in
25929 _menhir_env.MenhirLib.EngineTypes.stack <- {
25930 MenhirLib.EngineTypes.state = _menhir_s;
25931 MenhirLib.EngineTypes.semv = Obj.repr _v;
25932 MenhirLib.EngineTypes.startp = _startpos;
25933 MenhirLib.EngineTypes.endp = _endpos;
25934 MenhirLib.EngineTypes.next = _menhir_stack;
25935 });
25936 (fun _menhir_env ->
25937 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25938 let {
25939 MenhirLib.EngineTypes.semv = _3;
25940 MenhirLib.EngineTypes.startp = _startpos__3_;
25941 MenhirLib.EngineTypes.endp = _endpos__3_;
25942 MenhirLib.EngineTypes.next = {
25943 MenhirLib.EngineTypes.semv = _2;
25944 MenhirLib.EngineTypes.startp = _startpos__2_;
25945 MenhirLib.EngineTypes.endp = _endpos__2_;
25946 MenhirLib.EngineTypes.next = {
25947 MenhirLib.EngineTypes.state = _menhir_s;
25948 MenhirLib.EngineTypes.semv = _1;
25949 MenhirLib.EngineTypes.startp = _startpos__1_;
25950 MenhirLib.EngineTypes.endp = _endpos__1_;
25951 MenhirLib.EngineTypes.next = _menhir_stack;
25952 };
25953 };
25954 } = _menhir_stack in
25955 let _3 : 'tv_disj_ident = Obj.magic _3 in
25956 let _2 : (
25957 # 150 "parser_cocci_menhir.mly"
25958 (Data.clt)
25959 # 25933 "parser_cocci_menhir.ml"
25960 ) = Obj.magic _2 in
25961 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
25962 let _startpos = _startpos__1_ in
25963 let _endpos = _endpos__3_ in
25964 let _v : 'tv_postfix_expr_eexpr_invalid_ =
25965 # 1667 "parser_cocci_menhir.mly"
25966 ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
25967 _3)) )
25968 # 25942 "parser_cocci_menhir.ml"
25969 in
25970 _menhir_env.MenhirLib.EngineTypes.stack <- {
25971 MenhirLib.EngineTypes.state = _menhir_s;
25972 MenhirLib.EngineTypes.semv = Obj.repr _v;
25973 MenhirLib.EngineTypes.startp = _startpos;
25974 MenhirLib.EngineTypes.endp = _endpos;
25975 MenhirLib.EngineTypes.next = _menhir_stack;
25976 });
25977 (fun _menhir_env ->
25978 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
25979 let {
25980 MenhirLib.EngineTypes.semv = _2;
25981 MenhirLib.EngineTypes.startp = _startpos__2_;
25982 MenhirLib.EngineTypes.endp = _endpos__2_;
25983 MenhirLib.EngineTypes.next = {
25984 MenhirLib.EngineTypes.state = _menhir_s;
25985 MenhirLib.EngineTypes.semv = _1;
25986 MenhirLib.EngineTypes.startp = _startpos__1_;
25987 MenhirLib.EngineTypes.endp = _endpos__1_;
25988 MenhirLib.EngineTypes.next = _menhir_stack;
25989 };
25990 } = _menhir_stack in
25991 let _2 : (
25992 # 131 "parser_cocci_menhir.mly"
25993 (Data.clt)
25994 # 25968 "parser_cocci_menhir.ml"
25995 ) = Obj.magic _2 in
25996 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
25997 let _startpos = _startpos__1_ in
25998 let _endpos = _endpos__2_ in
25999 let _v : 'tv_postfix_expr_eexpr_invalid_ =
26000 # 1670 "parser_cocci_menhir.mly"
26001 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
26002 # 25976 "parser_cocci_menhir.ml"
26003 in
26004 _menhir_env.MenhirLib.EngineTypes.stack <- {
26005 MenhirLib.EngineTypes.state = _menhir_s;
26006 MenhirLib.EngineTypes.semv = Obj.repr _v;
26007 MenhirLib.EngineTypes.startp = _startpos;
26008 MenhirLib.EngineTypes.endp = _endpos;
26009 MenhirLib.EngineTypes.next = _menhir_stack;
26010 });
26011 (fun _menhir_env ->
26012 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26013 let {
26014 MenhirLib.EngineTypes.semv = _2;
26015 MenhirLib.EngineTypes.startp = _startpos__2_;
26016 MenhirLib.EngineTypes.endp = _endpos__2_;
26017 MenhirLib.EngineTypes.next = {
26018 MenhirLib.EngineTypes.state = _menhir_s;
26019 MenhirLib.EngineTypes.semv = _1;
26020 MenhirLib.EngineTypes.startp = _startpos__1_;
26021 MenhirLib.EngineTypes.endp = _endpos__1_;
26022 MenhirLib.EngineTypes.next = _menhir_stack;
26023 };
26024 } = _menhir_stack in
26025 let _2 : (
26026 # 131 "parser_cocci_menhir.mly"
26027 (Data.clt)
26028 # 26002 "parser_cocci_menhir.ml"
26029 ) = Obj.magic _2 in
26030 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
26031 let _startpos = _startpos__1_ in
26032 let _endpos = _endpos__2_ in
26033 let _v : 'tv_postfix_expr_eexpr_invalid_ =
26034 # 1672 "parser_cocci_menhir.mly"
26035 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
26036 # 26010 "parser_cocci_menhir.ml"
26037 in
26038 _menhir_env.MenhirLib.EngineTypes.stack <- {
26039 MenhirLib.EngineTypes.state = _menhir_s;
26040 MenhirLib.EngineTypes.semv = Obj.repr _v;
26041 MenhirLib.EngineTypes.startp = _startpos;
26042 MenhirLib.EngineTypes.endp = _endpos;
26043 MenhirLib.EngineTypes.next = _menhir_stack;
26044 });
26045 (fun _menhir_env ->
26046 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26047 let {
26048 MenhirLib.EngineTypes.semv = _4;
26049 MenhirLib.EngineTypes.startp = _startpos__4_;
26050 MenhirLib.EngineTypes.endp = _endpos__4_;
26051 MenhirLib.EngineTypes.next = {
26052 MenhirLib.EngineTypes.semv = _3;
26053 MenhirLib.EngineTypes.startp = _startpos__3_;
26054 MenhirLib.EngineTypes.endp = _endpos__3_;
26055 MenhirLib.EngineTypes.next = {
26056 MenhirLib.EngineTypes.semv = _2;
26057 MenhirLib.EngineTypes.startp = _startpos__2_;
26058 MenhirLib.EngineTypes.endp = _endpos__2_;
26059 MenhirLib.EngineTypes.next = {
26060 MenhirLib.EngineTypes.state = _menhir_s;
26061 MenhirLib.EngineTypes.semv = _1;
26062 MenhirLib.EngineTypes.startp = _startpos__1_;
26063 MenhirLib.EngineTypes.endp = _endpos__1_;
26064 MenhirLib.EngineTypes.next = _menhir_stack;
26065 };
26066 };
26067 };
26068 } = _menhir_stack in
26069 let _4 : (
26070 # 123 "parser_cocci_menhir.mly"
26071 (Data.clt)
26072 # 26046 "parser_cocci_menhir.ml"
26073 ) = Obj.magic _4 in
26074 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
26075 let _2 : (
26076 # 122 "parser_cocci_menhir.mly"
26077 (Data.clt)
26078 # 26052 "parser_cocci_menhir.ml"
26079 ) = Obj.magic _2 in
26080 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
26081 let _startpos = _startpos__1_ in
26082 let _endpos = _endpos__4_ in
26083 let _v : 'tv_postfix_expr_eexpr_invalid_ =
26084 # 1674 "parser_cocci_menhir.mly"
26085 ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
26086 _3,
26087 P.clt2mcode ")" _4)) )
26088 # 26062 "parser_cocci_menhir.ml"
26089 in
26090 _menhir_env.MenhirLib.EngineTypes.stack <- {
26091 MenhirLib.EngineTypes.state = _menhir_s;
26092 MenhirLib.EngineTypes.semv = Obj.repr _v;
26093 MenhirLib.EngineTypes.startp = _startpos;
26094 MenhirLib.EngineTypes.endp = _endpos;
26095 MenhirLib.EngineTypes.next = _menhir_stack;
26096 });
26097 (fun _menhir_env ->
26098 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26099 let {
26100 MenhirLib.EngineTypes.semv = _6;
26101 MenhirLib.EngineTypes.startp = _startpos__6_;
26102 MenhirLib.EngineTypes.endp = _endpos__6_;
26103 MenhirLib.EngineTypes.next = {
26104 MenhirLib.EngineTypes.semv = _5;
26105 MenhirLib.EngineTypes.startp = _startpos__5_;
26106 MenhirLib.EngineTypes.endp = _endpos__5_;
26107 MenhirLib.EngineTypes.next = {
26108 MenhirLib.EngineTypes.semv = _4;
26109 MenhirLib.EngineTypes.startp = _startpos__4_;
26110 MenhirLib.EngineTypes.endp = _endpos__4_;
26111 MenhirLib.EngineTypes.next = {
26112 MenhirLib.EngineTypes.semv = _3;
26113 MenhirLib.EngineTypes.startp = _startpos__3_;
26114 MenhirLib.EngineTypes.endp = _endpos__3_;
26115 MenhirLib.EngineTypes.next = {
26116 MenhirLib.EngineTypes.semv = _2;
26117 MenhirLib.EngineTypes.startp = _startpos__2_;
26118 MenhirLib.EngineTypes.endp = _endpos__2_;
26119 MenhirLib.EngineTypes.next = {
26120 MenhirLib.EngineTypes.state = _menhir_s;
26121 MenhirLib.EngineTypes.semv = _1;
26122 MenhirLib.EngineTypes.startp = _startpos__1_;
26123 MenhirLib.EngineTypes.endp = _endpos__1_;
26124 MenhirLib.EngineTypes.next = _menhir_stack;
26125 };
26126 };
26127 };
26128 };
26129 };
26130 } = _menhir_stack in
26131 let _6 : (
26132 # 147 "parser_cocci_menhir.mly"
26133 (Data.clt)
26134 # 26108 "parser_cocci_menhir.ml"
26135 ) = Obj.magic _6 in
26136 let _5 : 'tv_initialize_list = Obj.magic _5 in
26137 let _4 : (
26138 # 147 "parser_cocci_menhir.mly"
26139 (Data.clt)
26140 # 26114 "parser_cocci_menhir.ml"
26141 ) = Obj.magic _4 in
26142 let _3 : (
26143 # 123 "parser_cocci_menhir.mly"
26144 (Data.clt)
26145 # 26119 "parser_cocci_menhir.ml"
26146 ) = Obj.magic _3 in
26147 let _2 : 'tv_ctype = Obj.magic _2 in
26148 let _1 : (
26149 # 122 "parser_cocci_menhir.mly"
26150 (Data.clt)
26151 # 26125 "parser_cocci_menhir.ml"
26152 ) = Obj.magic _1 in
26153 let _startpos = _startpos__1_ in
26154 let _endpos = _endpos__6_ in
26155 let _v : 'tv_postfix_expr_eexpr_invalid_ =
26156 # 1680 "parser_cocci_menhir.mly"
26157 ( let init =
26158 if P.struct_initializer _5
26159 then
26160 let il = P.drop_dot_commas _5 in
26161 Ast0.wrap
26162 (Ast0.InitList(P.clt2mcode "{" _4,il,P.clt2mcode "}" _6,false))
26163 else
26164 Ast0.wrap
26165 (Ast0.InitList(P.clt2mcode "{" _4,_5,P.clt2mcode "}" _6,true)) in
26166 Ast0.wrap
26167 (Ast0.Constructor(P.clt2mcode "(" _1, _2, P.clt2mcode ")" _3, init)) )
26168 # 26142 "parser_cocci_menhir.ml"
26169 in
26170 _menhir_env.MenhirLib.EngineTypes.stack <- {
26171 MenhirLib.EngineTypes.state = _menhir_s;
26172 MenhirLib.EngineTypes.semv = Obj.repr _v;
26173 MenhirLib.EngineTypes.startp = _startpos;
26174 MenhirLib.EngineTypes.endp = _endpos;
26175 MenhirLib.EngineTypes.next = _menhir_stack;
26176 });
26177 (fun _menhir_env ->
26178 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26179 let {
26180 MenhirLib.EngineTypes.state = _menhir_s;
26181 MenhirLib.EngineTypes.semv = _1;
26182 MenhirLib.EngineTypes.startp = _startpos__1_;
26183 MenhirLib.EngineTypes.endp = _endpos__1_;
26184 MenhirLib.EngineTypes.next = _menhir_stack;
26185 } = _menhir_stack in
26186 let _1 : 'tv_primary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
26187 let _startpos = _startpos__1_ in
26188 let _endpos = _endpos__1_ in
26189 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
26190 # 1660 "parser_cocci_menhir.mly"
26191 ( _1 )
26192 # 26166 "parser_cocci_menhir.ml"
26193 in
26194 _menhir_env.MenhirLib.EngineTypes.stack <- {
26195 MenhirLib.EngineTypes.state = _menhir_s;
26196 MenhirLib.EngineTypes.semv = Obj.repr _v;
26197 MenhirLib.EngineTypes.startp = _startpos;
26198 MenhirLib.EngineTypes.endp = _endpos;
26199 MenhirLib.EngineTypes.next = _menhir_stack;
26200 });
26201 (fun _menhir_env ->
26202 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26203 let {
26204 MenhirLib.EngineTypes.semv = _4;
26205 MenhirLib.EngineTypes.startp = _startpos__4_;
26206 MenhirLib.EngineTypes.endp = _endpos__4_;
26207 MenhirLib.EngineTypes.next = {
26208 MenhirLib.EngineTypes.semv = _3;
26209 MenhirLib.EngineTypes.startp = _startpos__3_;
26210 MenhirLib.EngineTypes.endp = _endpos__3_;
26211 MenhirLib.EngineTypes.next = {
26212 MenhirLib.EngineTypes.semv = _2;
26213 MenhirLib.EngineTypes.startp = _startpos__2_;
26214 MenhirLib.EngineTypes.endp = _endpos__2_;
26215 MenhirLib.EngineTypes.next = {
26216 MenhirLib.EngineTypes.state = _menhir_s;
26217 MenhirLib.EngineTypes.semv = _1;
26218 MenhirLib.EngineTypes.startp = _startpos__1_;
26219 MenhirLib.EngineTypes.endp = _endpos__1_;
26220 MenhirLib.EngineTypes.next = _menhir_stack;
26221 };
26222 };
26223 };
26224 } = _menhir_stack in
26225 let _4 : (
26226 # 148 "parser_cocci_menhir.mly"
26227 (Data.clt)
26228 # 26202 "parser_cocci_menhir.ml"
26229 ) = Obj.magic _4 in
26230 let _3 : 'tv_eexpr = Obj.magic _3 in
26231 let _2 : (
26232 # 148 "parser_cocci_menhir.mly"
26233 (Data.clt)
26234 # 26208 "parser_cocci_menhir.ml"
26235 ) = Obj.magic _2 in
26236 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
26237 let _startpos = _startpos__1_ in
26238 let _endpos = _endpos__4_ in
26239 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
26240 # 1662 "parser_cocci_menhir.mly"
26241 ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
26242 P.clt2mcode "]" _4)) )
26243 # 26217 "parser_cocci_menhir.ml"
26244 in
26245 _menhir_env.MenhirLib.EngineTypes.stack <- {
26246 MenhirLib.EngineTypes.state = _menhir_s;
26247 MenhirLib.EngineTypes.semv = Obj.repr _v;
26248 MenhirLib.EngineTypes.startp = _startpos;
26249 MenhirLib.EngineTypes.endp = _endpos;
26250 MenhirLib.EngineTypes.next = _menhir_stack;
26251 });
26252 (fun _menhir_env ->
26253 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26254 let {
26255 MenhirLib.EngineTypes.semv = _3;
26256 MenhirLib.EngineTypes.startp = _startpos__3_;
26257 MenhirLib.EngineTypes.endp = _endpos__3_;
26258 MenhirLib.EngineTypes.next = {
26259 MenhirLib.EngineTypes.semv = _2;
26260 MenhirLib.EngineTypes.startp = _startpos__2_;
26261 MenhirLib.EngineTypes.endp = _endpos__2_;
26262 MenhirLib.EngineTypes.next = {
26263 MenhirLib.EngineTypes.state = _menhir_s;
26264 MenhirLib.EngineTypes.semv = _1;
26265 MenhirLib.EngineTypes.startp = _startpos__1_;
26266 MenhirLib.EngineTypes.endp = _endpos__1_;
26267 MenhirLib.EngineTypes.next = _menhir_stack;
26268 };
26269 };
26270 } = _menhir_stack in
26271 let _3 : 'tv_disj_ident = Obj.magic _3 in
26272 let _2 : (
26273 # 153 "parser_cocci_menhir.mly"
26274 (Data.clt)
26275 # 26249 "parser_cocci_menhir.ml"
26276 ) = Obj.magic _2 in
26277 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
26278 let _startpos = _startpos__1_ in
26279 let _endpos = _endpos__3_ in
26280 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
26281 # 1665 "parser_cocci_menhir.mly"
26282 ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
26283 # 26257 "parser_cocci_menhir.ml"
26284 in
26285 _menhir_env.MenhirLib.EngineTypes.stack <- {
26286 MenhirLib.EngineTypes.state = _menhir_s;
26287 MenhirLib.EngineTypes.semv = Obj.repr _v;
26288 MenhirLib.EngineTypes.startp = _startpos;
26289 MenhirLib.EngineTypes.endp = _endpos;
26290 MenhirLib.EngineTypes.next = _menhir_stack;
26291 });
26292 (fun _menhir_env ->
26293 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26294 let {
26295 MenhirLib.EngineTypes.semv = _3;
26296 MenhirLib.EngineTypes.startp = _startpos__3_;
26297 MenhirLib.EngineTypes.endp = _endpos__3_;
26298 MenhirLib.EngineTypes.next = {
26299 MenhirLib.EngineTypes.semv = _2;
26300 MenhirLib.EngineTypes.startp = _startpos__2_;
26301 MenhirLib.EngineTypes.endp = _endpos__2_;
26302 MenhirLib.EngineTypes.next = {
26303 MenhirLib.EngineTypes.state = _menhir_s;
26304 MenhirLib.EngineTypes.semv = _1;
26305 MenhirLib.EngineTypes.startp = _startpos__1_;
26306 MenhirLib.EngineTypes.endp = _endpos__1_;
26307 MenhirLib.EngineTypes.next = _menhir_stack;
26308 };
26309 };
26310 } = _menhir_stack in
26311 let _3 : 'tv_disj_ident = Obj.magic _3 in
26312 let _2 : (
26313 # 150 "parser_cocci_menhir.mly"
26314 (Data.clt)
26315 # 26289 "parser_cocci_menhir.ml"
26316 ) = Obj.magic _2 in
26317 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
26318 let _startpos = _startpos__1_ in
26319 let _endpos = _endpos__3_ in
26320 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
26321 # 1667 "parser_cocci_menhir.mly"
26322 ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
26323 _3)) )
26324 # 26298 "parser_cocci_menhir.ml"
26325 in
26326 _menhir_env.MenhirLib.EngineTypes.stack <- {
26327 MenhirLib.EngineTypes.state = _menhir_s;
26328 MenhirLib.EngineTypes.semv = Obj.repr _v;
26329 MenhirLib.EngineTypes.startp = _startpos;
26330 MenhirLib.EngineTypes.endp = _endpos;
26331 MenhirLib.EngineTypes.next = _menhir_stack;
26332 });
26333 (fun _menhir_env ->
26334 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26335 let {
26336 MenhirLib.EngineTypes.semv = _2;
26337 MenhirLib.EngineTypes.startp = _startpos__2_;
26338 MenhirLib.EngineTypes.endp = _endpos__2_;
26339 MenhirLib.EngineTypes.next = {
26340 MenhirLib.EngineTypes.state = _menhir_s;
26341 MenhirLib.EngineTypes.semv = _1;
26342 MenhirLib.EngineTypes.startp = _startpos__1_;
26343 MenhirLib.EngineTypes.endp = _endpos__1_;
26344 MenhirLib.EngineTypes.next = _menhir_stack;
26345 };
26346 } = _menhir_stack in
26347 let _2 : (
26348 # 131 "parser_cocci_menhir.mly"
26349 (Data.clt)
26350 # 26324 "parser_cocci_menhir.ml"
26351 ) = Obj.magic _2 in
26352 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
26353 let _startpos = _startpos__1_ in
26354 let _endpos = _endpos__2_ in
26355 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
26356 # 1670 "parser_cocci_menhir.mly"
26357 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
26358 # 26332 "parser_cocci_menhir.ml"
26359 in
26360 _menhir_env.MenhirLib.EngineTypes.stack <- {
26361 MenhirLib.EngineTypes.state = _menhir_s;
26362 MenhirLib.EngineTypes.semv = Obj.repr _v;
26363 MenhirLib.EngineTypes.startp = _startpos;
26364 MenhirLib.EngineTypes.endp = _endpos;
26365 MenhirLib.EngineTypes.next = _menhir_stack;
26366 });
26367 (fun _menhir_env ->
26368 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26369 let {
26370 MenhirLib.EngineTypes.semv = _2;
26371 MenhirLib.EngineTypes.startp = _startpos__2_;
26372 MenhirLib.EngineTypes.endp = _endpos__2_;
26373 MenhirLib.EngineTypes.next = {
26374 MenhirLib.EngineTypes.state = _menhir_s;
26375 MenhirLib.EngineTypes.semv = _1;
26376 MenhirLib.EngineTypes.startp = _startpos__1_;
26377 MenhirLib.EngineTypes.endp = _endpos__1_;
26378 MenhirLib.EngineTypes.next = _menhir_stack;
26379 };
26380 } = _menhir_stack in
26381 let _2 : (
26382 # 131 "parser_cocci_menhir.mly"
26383 (Data.clt)
26384 # 26358 "parser_cocci_menhir.ml"
26385 ) = Obj.magic _2 in
26386 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
26387 let _startpos = _startpos__1_ in
26388 let _endpos = _endpos__2_ in
26389 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
26390 # 1672 "parser_cocci_menhir.mly"
26391 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
26392 # 26366 "parser_cocci_menhir.ml"
26393 in
26394 _menhir_env.MenhirLib.EngineTypes.stack <- {
26395 MenhirLib.EngineTypes.state = _menhir_s;
26396 MenhirLib.EngineTypes.semv = Obj.repr _v;
26397 MenhirLib.EngineTypes.startp = _startpos;
26398 MenhirLib.EngineTypes.endp = _endpos;
26399 MenhirLib.EngineTypes.next = _menhir_stack;
26400 });
26401 (fun _menhir_env ->
26402 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26403 let {
26404 MenhirLib.EngineTypes.semv = _4;
26405 MenhirLib.EngineTypes.startp = _startpos__4_;
26406 MenhirLib.EngineTypes.endp = _endpos__4_;
26407 MenhirLib.EngineTypes.next = {
26408 MenhirLib.EngineTypes.semv = _3;
26409 MenhirLib.EngineTypes.startp = _startpos__3_;
26410 MenhirLib.EngineTypes.endp = _endpos__3_;
26411 MenhirLib.EngineTypes.next = {
26412 MenhirLib.EngineTypes.semv = _2;
26413 MenhirLib.EngineTypes.startp = _startpos__2_;
26414 MenhirLib.EngineTypes.endp = _endpos__2_;
26415 MenhirLib.EngineTypes.next = {
26416 MenhirLib.EngineTypes.state = _menhir_s;
26417 MenhirLib.EngineTypes.semv = _1;
26418 MenhirLib.EngineTypes.startp = _startpos__1_;
26419 MenhirLib.EngineTypes.endp = _endpos__1_;
26420 MenhirLib.EngineTypes.next = _menhir_stack;
26421 };
26422 };
26423 };
26424 } = _menhir_stack in
26425 let _4 : (
26426 # 123 "parser_cocci_menhir.mly"
26427 (Data.clt)
26428 # 26402 "parser_cocci_menhir.ml"
26429 ) = Obj.magic _4 in
26430 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
26431 let _2 : (
26432 # 122 "parser_cocci_menhir.mly"
26433 (Data.clt)
26434 # 26408 "parser_cocci_menhir.ml"
26435 ) = Obj.magic _2 in
26436 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
26437 let _startpos = _startpos__1_ in
26438 let _endpos = _endpos__4_ in
26439 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
26440 # 1674 "parser_cocci_menhir.mly"
26441 ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
26442 _3,
26443 P.clt2mcode ")" _4)) )
26444 # 26418 "parser_cocci_menhir.ml"
26445 in
26446 _menhir_env.MenhirLib.EngineTypes.stack <- {
26447 MenhirLib.EngineTypes.state = _menhir_s;
26448 MenhirLib.EngineTypes.semv = Obj.repr _v;
26449 MenhirLib.EngineTypes.startp = _startpos;
26450 MenhirLib.EngineTypes.endp = _endpos;
26451 MenhirLib.EngineTypes.next = _menhir_stack;
26452 });
26453 (fun _menhir_env ->
26454 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26455 let {
26456 MenhirLib.EngineTypes.semv = _6;
26457 MenhirLib.EngineTypes.startp = _startpos__6_;
26458 MenhirLib.EngineTypes.endp = _endpos__6_;
26459 MenhirLib.EngineTypes.next = {
26460 MenhirLib.EngineTypes.semv = _5;
26461 MenhirLib.EngineTypes.startp = _startpos__5_;
26462 MenhirLib.EngineTypes.endp = _endpos__5_;
26463 MenhirLib.EngineTypes.next = {
26464 MenhirLib.EngineTypes.semv = _4;
26465 MenhirLib.EngineTypes.startp = _startpos__4_;
26466 MenhirLib.EngineTypes.endp = _endpos__4_;
26467 MenhirLib.EngineTypes.next = {
26468 MenhirLib.EngineTypes.semv = _3;
26469 MenhirLib.EngineTypes.startp = _startpos__3_;
26470 MenhirLib.EngineTypes.endp = _endpos__3_;
26471 MenhirLib.EngineTypes.next = {
26472 MenhirLib.EngineTypes.semv = _2;
26473 MenhirLib.EngineTypes.startp = _startpos__2_;
26474 MenhirLib.EngineTypes.endp = _endpos__2_;
26475 MenhirLib.EngineTypes.next = {
26476 MenhirLib.EngineTypes.state = _menhir_s;
26477 MenhirLib.EngineTypes.semv = _1;
26478 MenhirLib.EngineTypes.startp = _startpos__1_;
26479 MenhirLib.EngineTypes.endp = _endpos__1_;
26480 MenhirLib.EngineTypes.next = _menhir_stack;
26481 };
26482 };
26483 };
26484 };
26485 };
26486 } = _menhir_stack in
26487 let _6 : (
26488 # 147 "parser_cocci_menhir.mly"
26489 (Data.clt)
26490 # 26464 "parser_cocci_menhir.ml"
26491 ) = Obj.magic _6 in
26492 let _5 : 'tv_initialize_list = Obj.magic _5 in
26493 let _4 : (
26494 # 147 "parser_cocci_menhir.mly"
26495 (Data.clt)
26496 # 26470 "parser_cocci_menhir.ml"
26497 ) = Obj.magic _4 in
26498 let _3 : (
26499 # 123 "parser_cocci_menhir.mly"
26500 (Data.clt)
26501 # 26475 "parser_cocci_menhir.ml"
26502 ) = Obj.magic _3 in
26503 let _2 : 'tv_ctype = Obj.magic _2 in
26504 let _1 : (
26505 # 122 "parser_cocci_menhir.mly"
26506 (Data.clt)
26507 # 26481 "parser_cocci_menhir.ml"
26508 ) = Obj.magic _1 in
26509 let _startpos = _startpos__1_ in
26510 let _endpos = _endpos__6_ in
26511 let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
26512 # 1680 "parser_cocci_menhir.mly"
26513 ( let init =
26514 if P.struct_initializer _5
26515 then
26516 let il = P.drop_dot_commas _5 in
26517 Ast0.wrap
26518 (Ast0.InitList(P.clt2mcode "{" _4,il,P.clt2mcode "}" _6,false))
26519 else
26520 Ast0.wrap
26521 (Ast0.InitList(P.clt2mcode "{" _4,_5,P.clt2mcode "}" _6,true)) in
26522 Ast0.wrap
26523 (Ast0.Constructor(P.clt2mcode "(" _1, _2, P.clt2mcode ")" _3, init)) )
26524 # 26498 "parser_cocci_menhir.ml"
26525 in
26526 _menhir_env.MenhirLib.EngineTypes.stack <- {
26527 MenhirLib.EngineTypes.state = _menhir_s;
26528 MenhirLib.EngineTypes.semv = Obj.repr _v;
26529 MenhirLib.EngineTypes.startp = _startpos;
26530 MenhirLib.EngineTypes.endp = _endpos;
26531 MenhirLib.EngineTypes.next = _menhir_stack;
26532 });
26533 (fun _menhir_env ->
26534 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26535 let {
26536 MenhirLib.EngineTypes.state = _menhir_s;
26537 MenhirLib.EngineTypes.semv = _1;
26538 MenhirLib.EngineTypes.startp = _startpos__1_;
26539 MenhirLib.EngineTypes.endp = _endpos__1_;
26540 MenhirLib.EngineTypes.next = _menhir_stack;
26541 } = _menhir_stack in
26542 let _1 : 'tv_primary_expr_expr_invalid_ = Obj.magic _1 in
26543 let _startpos = _startpos__1_ in
26544 let _endpos = _endpos__1_ in
26545 let _v : 'tv_postfix_expr_expr_invalid_ =
26546 # 1660 "parser_cocci_menhir.mly"
26547 ( _1 )
26548 # 26522 "parser_cocci_menhir.ml"
26549 in
26550 _menhir_env.MenhirLib.EngineTypes.stack <- {
26551 MenhirLib.EngineTypes.state = _menhir_s;
26552 MenhirLib.EngineTypes.semv = Obj.repr _v;
26553 MenhirLib.EngineTypes.startp = _startpos;
26554 MenhirLib.EngineTypes.endp = _endpos;
26555 MenhirLib.EngineTypes.next = _menhir_stack;
26556 });
26557 (fun _menhir_env ->
26558 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26559 let {
26560 MenhirLib.EngineTypes.semv = _4;
26561 MenhirLib.EngineTypes.startp = _startpos__4_;
26562 MenhirLib.EngineTypes.endp = _endpos__4_;
26563 MenhirLib.EngineTypes.next = {
26564 MenhirLib.EngineTypes.semv = _3;
26565 MenhirLib.EngineTypes.startp = _startpos__3_;
26566 MenhirLib.EngineTypes.endp = _endpos__3_;
26567 MenhirLib.EngineTypes.next = {
26568 MenhirLib.EngineTypes.semv = _2;
26569 MenhirLib.EngineTypes.startp = _startpos__2_;
26570 MenhirLib.EngineTypes.endp = _endpos__2_;
26571 MenhirLib.EngineTypes.next = {
26572 MenhirLib.EngineTypes.state = _menhir_s;
26573 MenhirLib.EngineTypes.semv = _1;
26574 MenhirLib.EngineTypes.startp = _startpos__1_;
26575 MenhirLib.EngineTypes.endp = _endpos__1_;
26576 MenhirLib.EngineTypes.next = _menhir_stack;
26577 };
26578 };
26579 };
26580 } = _menhir_stack in
26581 let _4 : (
26582 # 148 "parser_cocci_menhir.mly"
26583 (Data.clt)
26584 # 26558 "parser_cocci_menhir.ml"
26585 ) = Obj.magic _4 in
26586 let _3 : 'tv_eexpr = Obj.magic _3 in
26587 let _2 : (
26588 # 148 "parser_cocci_menhir.mly"
26589 (Data.clt)
26590 # 26564 "parser_cocci_menhir.ml"
26591 ) = Obj.magic _2 in
26592 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
26593 let _startpos = _startpos__1_ in
26594 let _endpos = _endpos__4_ in
26595 let _v : 'tv_postfix_expr_expr_invalid_ =
26596 # 1662 "parser_cocci_menhir.mly"
26597 ( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
26598 P.clt2mcode "]" _4)) )
26599 # 26573 "parser_cocci_menhir.ml"
26600 in
26601 _menhir_env.MenhirLib.EngineTypes.stack <- {
26602 MenhirLib.EngineTypes.state = _menhir_s;
26603 MenhirLib.EngineTypes.semv = Obj.repr _v;
26604 MenhirLib.EngineTypes.startp = _startpos;
26605 MenhirLib.EngineTypes.endp = _endpos;
26606 MenhirLib.EngineTypes.next = _menhir_stack;
26607 });
26608 (fun _menhir_env ->
26609 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26610 let {
26611 MenhirLib.EngineTypes.semv = _3;
26612 MenhirLib.EngineTypes.startp = _startpos__3_;
26613 MenhirLib.EngineTypes.endp = _endpos__3_;
26614 MenhirLib.EngineTypes.next = {
26615 MenhirLib.EngineTypes.semv = _2;
26616 MenhirLib.EngineTypes.startp = _startpos__2_;
26617 MenhirLib.EngineTypes.endp = _endpos__2_;
26618 MenhirLib.EngineTypes.next = {
26619 MenhirLib.EngineTypes.state = _menhir_s;
26620 MenhirLib.EngineTypes.semv = _1;
26621 MenhirLib.EngineTypes.startp = _startpos__1_;
26622 MenhirLib.EngineTypes.endp = _endpos__1_;
26623 MenhirLib.EngineTypes.next = _menhir_stack;
26624 };
26625 };
26626 } = _menhir_stack in
26627 let _3 : 'tv_disj_ident = Obj.magic _3 in
26628 let _2 : (
26629 # 153 "parser_cocci_menhir.mly"
26630 (Data.clt)
26631 # 26605 "parser_cocci_menhir.ml"
26632 ) = Obj.magic _2 in
26633 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
26634 let _startpos = _startpos__1_ in
26635 let _endpos = _endpos__3_ in
26636 let _v : 'tv_postfix_expr_expr_invalid_ =
26637 # 1665 "parser_cocci_menhir.mly"
26638 ( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
26639 # 26613 "parser_cocci_menhir.ml"
26640 in
26641 _menhir_env.MenhirLib.EngineTypes.stack <- {
26642 MenhirLib.EngineTypes.state = _menhir_s;
26643 MenhirLib.EngineTypes.semv = Obj.repr _v;
26644 MenhirLib.EngineTypes.startp = _startpos;
26645 MenhirLib.EngineTypes.endp = _endpos;
26646 MenhirLib.EngineTypes.next = _menhir_stack;
26647 });
26648 (fun _menhir_env ->
26649 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26650 let {
26651 MenhirLib.EngineTypes.semv = _3;
26652 MenhirLib.EngineTypes.startp = _startpos__3_;
26653 MenhirLib.EngineTypes.endp = _endpos__3_;
26654 MenhirLib.EngineTypes.next = {
26655 MenhirLib.EngineTypes.semv = _2;
26656 MenhirLib.EngineTypes.startp = _startpos__2_;
26657 MenhirLib.EngineTypes.endp = _endpos__2_;
26658 MenhirLib.EngineTypes.next = {
26659 MenhirLib.EngineTypes.state = _menhir_s;
26660 MenhirLib.EngineTypes.semv = _1;
26661 MenhirLib.EngineTypes.startp = _startpos__1_;
26662 MenhirLib.EngineTypes.endp = _endpos__1_;
26663 MenhirLib.EngineTypes.next = _menhir_stack;
26664 };
26665 };
26666 } = _menhir_stack in
26667 let _3 : 'tv_disj_ident = Obj.magic _3 in
26668 let _2 : (
26669 # 150 "parser_cocci_menhir.mly"
26670 (Data.clt)
26671 # 26645 "parser_cocci_menhir.ml"
26672 ) = Obj.magic _2 in
26673 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
26674 let _startpos = _startpos__1_ in
26675 let _endpos = _endpos__3_ in
26676 let _v : 'tv_postfix_expr_expr_invalid_ =
26677 # 1667 "parser_cocci_menhir.mly"
26678 ( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
26679 _3)) )
26680 # 26654 "parser_cocci_menhir.ml"
26681 in
26682 _menhir_env.MenhirLib.EngineTypes.stack <- {
26683 MenhirLib.EngineTypes.state = _menhir_s;
26684 MenhirLib.EngineTypes.semv = Obj.repr _v;
26685 MenhirLib.EngineTypes.startp = _startpos;
26686 MenhirLib.EngineTypes.endp = _endpos;
26687 MenhirLib.EngineTypes.next = _menhir_stack;
26688 });
26689 (fun _menhir_env ->
26690 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26691 let {
26692 MenhirLib.EngineTypes.semv = _2;
26693 MenhirLib.EngineTypes.startp = _startpos__2_;
26694 MenhirLib.EngineTypes.endp = _endpos__2_;
26695 MenhirLib.EngineTypes.next = {
26696 MenhirLib.EngineTypes.state = _menhir_s;
26697 MenhirLib.EngineTypes.semv = _1;
26698 MenhirLib.EngineTypes.startp = _startpos__1_;
26699 MenhirLib.EngineTypes.endp = _endpos__1_;
26700 MenhirLib.EngineTypes.next = _menhir_stack;
26701 };
26702 } = _menhir_stack in
26703 let _2 : (
26704 # 131 "parser_cocci_menhir.mly"
26705 (Data.clt)
26706 # 26680 "parser_cocci_menhir.ml"
26707 ) = Obj.magic _2 in
26708 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
26709 let _startpos = _startpos__1_ in
26710 let _endpos = _endpos__2_ in
26711 let _v : 'tv_postfix_expr_expr_invalid_ =
26712 # 1670 "parser_cocci_menhir.mly"
26713 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
26714 # 26688 "parser_cocci_menhir.ml"
26715 in
26716 _menhir_env.MenhirLib.EngineTypes.stack <- {
26717 MenhirLib.EngineTypes.state = _menhir_s;
26718 MenhirLib.EngineTypes.semv = Obj.repr _v;
26719 MenhirLib.EngineTypes.startp = _startpos;
26720 MenhirLib.EngineTypes.endp = _endpos;
26721 MenhirLib.EngineTypes.next = _menhir_stack;
26722 });
26723 (fun _menhir_env ->
26724 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26725 let {
26726 MenhirLib.EngineTypes.semv = _2;
26727 MenhirLib.EngineTypes.startp = _startpos__2_;
26728 MenhirLib.EngineTypes.endp = _endpos__2_;
26729 MenhirLib.EngineTypes.next = {
26730 MenhirLib.EngineTypes.state = _menhir_s;
26731 MenhirLib.EngineTypes.semv = _1;
26732 MenhirLib.EngineTypes.startp = _startpos__1_;
26733 MenhirLib.EngineTypes.endp = _endpos__1_;
26734 MenhirLib.EngineTypes.next = _menhir_stack;
26735 };
26736 } = _menhir_stack in
26737 let _2 : (
26738 # 131 "parser_cocci_menhir.mly"
26739 (Data.clt)
26740 # 26714 "parser_cocci_menhir.ml"
26741 ) = Obj.magic _2 in
26742 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
26743 let _startpos = _startpos__1_ in
26744 let _endpos = _endpos__2_ in
26745 let _v : 'tv_postfix_expr_expr_invalid_ =
26746 # 1672 "parser_cocci_menhir.mly"
26747 ( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
26748 # 26722 "parser_cocci_menhir.ml"
26749 in
26750 _menhir_env.MenhirLib.EngineTypes.stack <- {
26751 MenhirLib.EngineTypes.state = _menhir_s;
26752 MenhirLib.EngineTypes.semv = Obj.repr _v;
26753 MenhirLib.EngineTypes.startp = _startpos;
26754 MenhirLib.EngineTypes.endp = _endpos;
26755 MenhirLib.EngineTypes.next = _menhir_stack;
26756 });
26757 (fun _menhir_env ->
26758 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26759 let {
26760 MenhirLib.EngineTypes.semv = _4;
26761 MenhirLib.EngineTypes.startp = _startpos__4_;
26762 MenhirLib.EngineTypes.endp = _endpos__4_;
26763 MenhirLib.EngineTypes.next = {
26764 MenhirLib.EngineTypes.semv = _3;
26765 MenhirLib.EngineTypes.startp = _startpos__3_;
26766 MenhirLib.EngineTypes.endp = _endpos__3_;
26767 MenhirLib.EngineTypes.next = {
26768 MenhirLib.EngineTypes.semv = _2;
26769 MenhirLib.EngineTypes.startp = _startpos__2_;
26770 MenhirLib.EngineTypes.endp = _endpos__2_;
26771 MenhirLib.EngineTypes.next = {
26772 MenhirLib.EngineTypes.state = _menhir_s;
26773 MenhirLib.EngineTypes.semv = _1;
26774 MenhirLib.EngineTypes.startp = _startpos__1_;
26775 MenhirLib.EngineTypes.endp = _endpos__1_;
26776 MenhirLib.EngineTypes.next = _menhir_stack;
26777 };
26778 };
26779 };
26780 } = _menhir_stack in
26781 let _4 : (
26782 # 123 "parser_cocci_menhir.mly"
26783 (Data.clt)
26784 # 26758 "parser_cocci_menhir.ml"
26785 ) = Obj.magic _4 in
26786 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
26787 let _2 : (
26788 # 122 "parser_cocci_menhir.mly"
26789 (Data.clt)
26790 # 26764 "parser_cocci_menhir.ml"
26791 ) = Obj.magic _2 in
26792 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
26793 let _startpos = _startpos__1_ in
26794 let _endpos = _endpos__4_ in
26795 let _v : 'tv_postfix_expr_expr_invalid_ =
26796 # 1674 "parser_cocci_menhir.mly"
26797 ( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
26798 _3,
26799 P.clt2mcode ")" _4)) )
26800 # 26774 "parser_cocci_menhir.ml"
26801 in
26802 _menhir_env.MenhirLib.EngineTypes.stack <- {
26803 MenhirLib.EngineTypes.state = _menhir_s;
26804 MenhirLib.EngineTypes.semv = Obj.repr _v;
26805 MenhirLib.EngineTypes.startp = _startpos;
26806 MenhirLib.EngineTypes.endp = _endpos;
26807 MenhirLib.EngineTypes.next = _menhir_stack;
26808 });
26809 (fun _menhir_env ->
26810 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26811 let {
26812 MenhirLib.EngineTypes.semv = _6;
26813 MenhirLib.EngineTypes.startp = _startpos__6_;
26814 MenhirLib.EngineTypes.endp = _endpos__6_;
26815 MenhirLib.EngineTypes.next = {
26816 MenhirLib.EngineTypes.semv = _5;
26817 MenhirLib.EngineTypes.startp = _startpos__5_;
26818 MenhirLib.EngineTypes.endp = _endpos__5_;
26819 MenhirLib.EngineTypes.next = {
26820 MenhirLib.EngineTypes.semv = _4;
26821 MenhirLib.EngineTypes.startp = _startpos__4_;
26822 MenhirLib.EngineTypes.endp = _endpos__4_;
26823 MenhirLib.EngineTypes.next = {
26824 MenhirLib.EngineTypes.semv = _3;
26825 MenhirLib.EngineTypes.startp = _startpos__3_;
26826 MenhirLib.EngineTypes.endp = _endpos__3_;
26827 MenhirLib.EngineTypes.next = {
26828 MenhirLib.EngineTypes.semv = _2;
26829 MenhirLib.EngineTypes.startp = _startpos__2_;
26830 MenhirLib.EngineTypes.endp = _endpos__2_;
26831 MenhirLib.EngineTypes.next = {
26832 MenhirLib.EngineTypes.state = _menhir_s;
26833 MenhirLib.EngineTypes.semv = _1;
26834 MenhirLib.EngineTypes.startp = _startpos__1_;
26835 MenhirLib.EngineTypes.endp = _endpos__1_;
26836 MenhirLib.EngineTypes.next = _menhir_stack;
26837 };
26838 };
26839 };
26840 };
26841 };
26842 } = _menhir_stack in
26843 let _6 : (
26844 # 147 "parser_cocci_menhir.mly"
26845 (Data.clt)
26846 # 26820 "parser_cocci_menhir.ml"
26847 ) = Obj.magic _6 in
26848 let _5 : 'tv_initialize_list = Obj.magic _5 in
26849 let _4 : (
26850 # 147 "parser_cocci_menhir.mly"
26851 (Data.clt)
26852 # 26826 "parser_cocci_menhir.ml"
26853 ) = Obj.magic _4 in
26854 let _3 : (
26855 # 123 "parser_cocci_menhir.mly"
26856 (Data.clt)
26857 # 26831 "parser_cocci_menhir.ml"
26858 ) = Obj.magic _3 in
26859 let _2 : 'tv_ctype = Obj.magic _2 in
26860 let _1 : (
26861 # 122 "parser_cocci_menhir.mly"
26862 (Data.clt)
26863 # 26837 "parser_cocci_menhir.ml"
26864 ) = Obj.magic _1 in
26865 let _startpos = _startpos__1_ in
26866 let _endpos = _endpos__6_ in
26867 let _v : 'tv_postfix_expr_expr_invalid_ =
26868 # 1680 "parser_cocci_menhir.mly"
26869 ( let init =
26870 if P.struct_initializer _5
26871 then
26872 let il = P.drop_dot_commas _5 in
26873 Ast0.wrap
26874 (Ast0.InitList(P.clt2mcode "{" _4,il,P.clt2mcode "}" _6,false))
26875 else
26876 Ast0.wrap
26877 (Ast0.InitList(P.clt2mcode "{" _4,_5,P.clt2mcode "}" _6,true)) in
26878 Ast0.wrap
26879 (Ast0.Constructor(P.clt2mcode "(" _1, _2, P.clt2mcode ")" _3, init)) )
26880 # 26854 "parser_cocci_menhir.ml"
26881 in
26882 _menhir_env.MenhirLib.EngineTypes.stack <- {
26883 MenhirLib.EngineTypes.state = _menhir_s;
26884 MenhirLib.EngineTypes.semv = Obj.repr _v;
26885 MenhirLib.EngineTypes.startp = _startpos;
26886 MenhirLib.EngineTypes.endp = _endpos;
26887 MenhirLib.EngineTypes.next = _menhir_stack;
26888 });
26889 (fun _menhir_env ->
26890 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26891 let {
26892 MenhirLib.EngineTypes.state = _menhir_s;
26893 MenhirLib.EngineTypes.semv = _1;
26894 MenhirLib.EngineTypes.startp = _startpos__1_;
26895 MenhirLib.EngineTypes.endp = _endpos__1_;
26896 MenhirLib.EngineTypes.next = _menhir_stack;
26897 } = _menhir_stack in
26898 let _1 : 'tv_basic_expr_eexpr_dot_expressions_ = Obj.magic _1 in
26899 let _startpos = _startpos__1_ in
26900 let _endpos = _endpos__1_ in
26901 let _v : 'tv_pre_basic_expr_eexpr_dot_expressions_ =
26902 # 1509 "parser_cocci_menhir.mly"
26903 ( _1 )
26904 # 26878 "parser_cocci_menhir.ml"
26905 in
26906 _menhir_env.MenhirLib.EngineTypes.stack <- {
26907 MenhirLib.EngineTypes.state = _menhir_s;
26908 MenhirLib.EngineTypes.semv = Obj.repr _v;
26909 MenhirLib.EngineTypes.startp = _startpos;
26910 MenhirLib.EngineTypes.endp = _endpos;
26911 MenhirLib.EngineTypes.next = _menhir_stack;
26912 });
26913 (fun _menhir_env ->
26914 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26915 let {
26916 MenhirLib.EngineTypes.semv = _3;
26917 MenhirLib.EngineTypes.startp = _startpos__3_;
26918 MenhirLib.EngineTypes.endp = _endpos__3_;
26919 MenhirLib.EngineTypes.next = {
26920 MenhirLib.EngineTypes.semv = _2;
26921 MenhirLib.EngineTypes.startp = _startpos__2_;
26922 MenhirLib.EngineTypes.endp = _endpos__2_;
26923 MenhirLib.EngineTypes.next = {
26924 MenhirLib.EngineTypes.state = _menhir_s;
26925 MenhirLib.EngineTypes.semv = _1;
26926 MenhirLib.EngineTypes.startp = _startpos__1_;
26927 MenhirLib.EngineTypes.endp = _endpos__1_;
26928 MenhirLib.EngineTypes.next = _menhir_stack;
26929 };
26930 };
26931 } = _menhir_stack in
26932 let _3 : 'tv_basic_expr_eexpr_dot_expressions_ = Obj.magic _3 in
26933 let _2 : (
26934 # 153 "parser_cocci_menhir.mly"
26935 (Data.clt)
26936 # 26910 "parser_cocci_menhir.ml"
26937 ) = Obj.magic _2 in
26938 let _1 : 'tv_pre_basic_expr_eexpr_dot_expressions_ = Obj.magic _1 in
26939 let _startpos = _startpos__1_ in
26940 let _endpos = _endpos__3_ in
26941 let _v : 'tv_pre_basic_expr_eexpr_dot_expressions_ =
26942 # 1512 "parser_cocci_menhir.mly"
26943 ( Ast0.wrap(Ast0.Sequence(_1,P.clt2mcode "," _2,_3)) )
26944 # 26918 "parser_cocci_menhir.ml"
26945 in
26946 _menhir_env.MenhirLib.EngineTypes.stack <- {
26947 MenhirLib.EngineTypes.state = _menhir_s;
26948 MenhirLib.EngineTypes.semv = Obj.repr _v;
26949 MenhirLib.EngineTypes.startp = _startpos;
26950 MenhirLib.EngineTypes.endp = _endpos;
26951 MenhirLib.EngineTypes.next = _menhir_stack;
26952 });
26953 (fun _menhir_env ->
26954 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26955 let {
26956 MenhirLib.EngineTypes.state = _menhir_s;
26957 MenhirLib.EngineTypes.semv = _1;
26958 MenhirLib.EngineTypes.startp = _startpos__1_;
26959 MenhirLib.EngineTypes.endp = _endpos__1_;
26960 MenhirLib.EngineTypes.next = _menhir_stack;
26961 } = _menhir_stack in
26962 let _1 : 'tv_basic_expr_eexpr_nest_expressions_ = Obj.magic _1 in
26963 let _startpos = _startpos__1_ in
26964 let _endpos = _endpos__1_ in
26965 let _v : 'tv_pre_basic_expr_eexpr_nest_expressions_ =
26966 # 1509 "parser_cocci_menhir.mly"
26967 ( _1 )
26968 # 26942 "parser_cocci_menhir.ml"
26969 in
26970 _menhir_env.MenhirLib.EngineTypes.stack <- {
26971 MenhirLib.EngineTypes.state = _menhir_s;
26972 MenhirLib.EngineTypes.semv = Obj.repr _v;
26973 MenhirLib.EngineTypes.startp = _startpos;
26974 MenhirLib.EngineTypes.endp = _endpos;
26975 MenhirLib.EngineTypes.next = _menhir_stack;
26976 });
26977 (fun _menhir_env ->
26978 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
26979 let {
26980 MenhirLib.EngineTypes.semv = _3;
26981 MenhirLib.EngineTypes.startp = _startpos__3_;
26982 MenhirLib.EngineTypes.endp = _endpos__3_;
26983 MenhirLib.EngineTypes.next = {
26984 MenhirLib.EngineTypes.semv = _2;
26985 MenhirLib.EngineTypes.startp = _startpos__2_;
26986 MenhirLib.EngineTypes.endp = _endpos__2_;
26987 MenhirLib.EngineTypes.next = {
26988 MenhirLib.EngineTypes.state = _menhir_s;
26989 MenhirLib.EngineTypes.semv = _1;
26990 MenhirLib.EngineTypes.startp = _startpos__1_;
26991 MenhirLib.EngineTypes.endp = _endpos__1_;
26992 MenhirLib.EngineTypes.next = _menhir_stack;
26993 };
26994 };
26995 } = _menhir_stack in
26996 let _3 : 'tv_basic_expr_eexpr_nest_expressions_ = Obj.magic _3 in
26997 let _2 : (
26998 # 153 "parser_cocci_menhir.mly"
26999 (Data.clt)
27000 # 26974 "parser_cocci_menhir.ml"
27001 ) = Obj.magic _2 in
27002 let _1 : 'tv_pre_basic_expr_eexpr_nest_expressions_ = Obj.magic _1 in
27003 let _startpos = _startpos__1_ in
27004 let _endpos = _endpos__3_ in
27005 let _v : 'tv_pre_basic_expr_eexpr_nest_expressions_ =
27006 # 1512 "parser_cocci_menhir.mly"
27007 ( Ast0.wrap(Ast0.Sequence(_1,P.clt2mcode "," _2,_3)) )
27008 # 26982 "parser_cocci_menhir.ml"
27009 in
27010 _menhir_env.MenhirLib.EngineTypes.stack <- {
27011 MenhirLib.EngineTypes.state = _menhir_s;
27012 MenhirLib.EngineTypes.semv = Obj.repr _v;
27013 MenhirLib.EngineTypes.startp = _startpos;
27014 MenhirLib.EngineTypes.endp = _endpos;
27015 MenhirLib.EngineTypes.next = _menhir_stack;
27016 });
27017 (fun _menhir_env ->
27018 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27019 let {
27020 MenhirLib.EngineTypes.state = _menhir_s;
27021 MenhirLib.EngineTypes.semv = _1;
27022 MenhirLib.EngineTypes.startp = _startpos__1_;
27023 MenhirLib.EngineTypes.endp = _endpos__1_;
27024 MenhirLib.EngineTypes.next = _menhir_stack;
27025 } = _menhir_stack in
27026 let _1 : 'tv_func_ident = Obj.magic _1 in
27027 let _startpos = _startpos__1_ in
27028 let _endpos = _endpos__1_ in
27029 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27030 # 1693 "parser_cocci_menhir.mly"
27031 ( Ast0.wrap(Ast0.Ident(_1)) )
27032 # 27006 "parser_cocci_menhir.ml"
27033 in
27034 _menhir_env.MenhirLib.EngineTypes.stack <- {
27035 MenhirLib.EngineTypes.state = _menhir_s;
27036 MenhirLib.EngineTypes.semv = Obj.repr _v;
27037 MenhirLib.EngineTypes.startp = _startpos;
27038 MenhirLib.EngineTypes.endp = _endpos;
27039 MenhirLib.EngineTypes.next = _menhir_stack;
27040 });
27041 (fun _menhir_env ->
27042 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27043 let {
27044 MenhirLib.EngineTypes.semv = _2;
27045 MenhirLib.EngineTypes.startp = _startpos__2_;
27046 MenhirLib.EngineTypes.endp = _endpos__2_;
27047 MenhirLib.EngineTypes.next = {
27048 MenhirLib.EngineTypes.state = _menhir_s;
27049 MenhirLib.EngineTypes.semv = _1;
27050 MenhirLib.EngineTypes.startp = _startpos__1_;
27051 MenhirLib.EngineTypes.endp = _endpos__1_;
27052 MenhirLib.EngineTypes.next = _menhir_stack;
27053 };
27054 } = _menhir_stack in
27055 let _2 : 'tv_ident = Obj.magic _2 in
27056 let _1 : (
27057 # 136 "parser_cocci_menhir.mly"
27058 (Data.clt)
27059 # 27033 "parser_cocci_menhir.ml"
27060 ) = Obj.magic _1 in
27061 let _startpos = _startpos__1_ in
27062 let _endpos = _endpos__2_ in
27063 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27064 # 1695 "parser_cocci_menhir.mly"
27065 ( let op = P.clt2mcode Ast.GetRefLabel _1 in
27066 Ast0.wrap(Ast0.Unary(Ast0.wrap(Ast0.Ident(_2)), op)) )
27067 # 27041 "parser_cocci_menhir.ml"
27068 in
27069 _menhir_env.MenhirLib.EngineTypes.stack <- {
27070 MenhirLib.EngineTypes.state = _menhir_s;
27071 MenhirLib.EngineTypes.semv = Obj.repr _v;
27072 MenhirLib.EngineTypes.startp = _startpos;
27073 MenhirLib.EngineTypes.endp = _endpos;
27074 MenhirLib.EngineTypes.next = _menhir_stack;
27075 });
27076 (fun _menhir_env ->
27077 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27078 let {
27079 MenhirLib.EngineTypes.state = _menhir_s;
27080 MenhirLib.EngineTypes.semv = _1;
27081 MenhirLib.EngineTypes.startp = _startpos__1_;
27082 MenhirLib.EngineTypes.endp = _endpos__1_;
27083 MenhirLib.EngineTypes.next = _menhir_stack;
27084 } = _menhir_stack in
27085 let _1 : (
27086 # 133 "parser_cocci_menhir.mly"
27087 (string * Data.clt)
27088 # 27062 "parser_cocci_menhir.ml"
27089 ) = Obj.magic _1 in
27090 let _startpos = _startpos__1_ in
27091 let _endpos = _endpos__1_ in
27092 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27093 # 1698 "parser_cocci_menhir.mly"
27094 ( let (x,clt) = _1 in
27095 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
27096 # 27070 "parser_cocci_menhir.ml"
27097 in
27098 _menhir_env.MenhirLib.EngineTypes.stack <- {
27099 MenhirLib.EngineTypes.state = _menhir_s;
27100 MenhirLib.EngineTypes.semv = Obj.repr _v;
27101 MenhirLib.EngineTypes.startp = _startpos;
27102 MenhirLib.EngineTypes.endp = _endpos;
27103 MenhirLib.EngineTypes.next = _menhir_stack;
27104 });
27105 (fun _menhir_env ->
27106 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27107 let {
27108 MenhirLib.EngineTypes.state = _menhir_s;
27109 MenhirLib.EngineTypes.semv = _1;
27110 MenhirLib.EngineTypes.startp = _startpos__1_;
27111 MenhirLib.EngineTypes.endp = _endpos__1_;
27112 MenhirLib.EngineTypes.next = _menhir_stack;
27113 } = _menhir_stack in
27114 let _1 : (
27115 # 133 "parser_cocci_menhir.mly"
27116 (string * Data.clt)
27117 # 27091 "parser_cocci_menhir.ml"
27118 ) = Obj.magic _1 in
27119 let _startpos = _startpos__1_ in
27120 let _endpos = _endpos__1_ in
27121 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27122 # 1701 "parser_cocci_menhir.mly"
27123 ( let (x,clt) = _1 in
27124 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
27125 # 27099 "parser_cocci_menhir.ml"
27126 in
27127 _menhir_env.MenhirLib.EngineTypes.stack <- {
27128 MenhirLib.EngineTypes.state = _menhir_s;
27129 MenhirLib.EngineTypes.semv = Obj.repr _v;
27130 MenhirLib.EngineTypes.startp = _startpos;
27131 MenhirLib.EngineTypes.endp = _endpos;
27132 MenhirLib.EngineTypes.next = _menhir_stack;
27133 });
27134 (fun _menhir_env ->
27135 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27136 let {
27137 MenhirLib.EngineTypes.state = _menhir_s;
27138 MenhirLib.EngineTypes.semv = _1;
27139 MenhirLib.EngineTypes.startp = _startpos__1_;
27140 MenhirLib.EngineTypes.endp = _endpos__1_;
27141 MenhirLib.EngineTypes.next = _menhir_stack;
27142 } = _menhir_stack in
27143 let _1 : (
27144 # 133 "parser_cocci_menhir.mly"
27145 (string * Data.clt)
27146 # 27120 "parser_cocci_menhir.ml"
27147 ) = Obj.magic _1 in
27148 let _startpos = _startpos__1_ in
27149 let _endpos = _endpos__1_ in
27150 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27151 # 1704 "parser_cocci_menhir.mly"
27152 ( let (x,clt) = _1 in
27153 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
27154 # 27128 "parser_cocci_menhir.ml"
27155 in
27156 _menhir_env.MenhirLib.EngineTypes.stack <- {
27157 MenhirLib.EngineTypes.state = _menhir_s;
27158 MenhirLib.EngineTypes.semv = Obj.repr _v;
27159 MenhirLib.EngineTypes.startp = _startpos;
27160 MenhirLib.EngineTypes.endp = _endpos;
27161 MenhirLib.EngineTypes.next = _menhir_stack;
27162 });
27163 (fun _menhir_env ->
27164 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27165 let {
27166 MenhirLib.EngineTypes.state = _menhir_s;
27167 MenhirLib.EngineTypes.semv = _1;
27168 MenhirLib.EngineTypes.startp = _startpos__1_;
27169 MenhirLib.EngineTypes.endp = _endpos__1_;
27170 MenhirLib.EngineTypes.next = _menhir_stack;
27171 } = _menhir_stack in
27172 let _1 : (
27173 # 133 "parser_cocci_menhir.mly"
27174 (string * Data.clt)
27175 # 27149 "parser_cocci_menhir.ml"
27176 ) = Obj.magic _1 in
27177 let _startpos = _startpos__1_ in
27178 let _endpos = _endpos__1_ in
27179 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27180 # 1707 "parser_cocci_menhir.mly"
27181 ( let (x,clt) = _1 in
27182 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
27183 # 27157 "parser_cocci_menhir.ml"
27184 in
27185 _menhir_env.MenhirLib.EngineTypes.stack <- {
27186 MenhirLib.EngineTypes.state = _menhir_s;
27187 MenhirLib.EngineTypes.semv = Obj.repr _v;
27188 MenhirLib.EngineTypes.startp = _startpos;
27189 MenhirLib.EngineTypes.endp = _endpos;
27190 MenhirLib.EngineTypes.next = _menhir_stack;
27191 });
27192 (fun _menhir_env ->
27193 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27194 let {
27195 MenhirLib.EngineTypes.state = _menhir_s;
27196 MenhirLib.EngineTypes.semv = _1;
27197 MenhirLib.EngineTypes.startp = _startpos__1_;
27198 MenhirLib.EngineTypes.endp = _endpos__1_;
27199 MenhirLib.EngineTypes.next = _menhir_stack;
27200 } = _menhir_stack in
27201 let _1 : (
27202 # 112 "parser_cocci_menhir.mly"
27203 (Parse_aux.typed_expinfo)
27204 # 27178 "parser_cocci_menhir.ml"
27205 ) = Obj.magic _1 in
27206 let _startpos = _startpos__1_ in
27207 let _endpos = _endpos__1_ in
27208 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27209 # 1710 "parser_cocci_menhir.mly"
27210 ( let (nm,constraints,pure,ty,clt) = _1 in
27211 Ast0.wrap
27212 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
27213 # 27187 "parser_cocci_menhir.ml"
27214 in
27215 _menhir_env.MenhirLib.EngineTypes.stack <- {
27216 MenhirLib.EngineTypes.state = _menhir_s;
27217 MenhirLib.EngineTypes.semv = Obj.repr _v;
27218 MenhirLib.EngineTypes.startp = _startpos;
27219 MenhirLib.EngineTypes.endp = _endpos;
27220 MenhirLib.EngineTypes.next = _menhir_stack;
27221 });
27222 (fun _menhir_env ->
27223 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27224 let {
27225 MenhirLib.EngineTypes.state = _menhir_s;
27226 MenhirLib.EngineTypes.semv = _1;
27227 MenhirLib.EngineTypes.startp = _startpos__1_;
27228 MenhirLib.EngineTypes.endp = _endpos__1_;
27229 MenhirLib.EngineTypes.next = _menhir_stack;
27230 } = _menhir_stack in
27231 let _1 : (
27232 # 107 "parser_cocci_menhir.mly"
27233 (Parse_aux.expinfo)
27234 # 27208 "parser_cocci_menhir.ml"
27235 ) = Obj.magic _1 in
27236 let _startpos = _startpos__1_ in
27237 let _endpos = _endpos__1_ in
27238 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27239 # 1714 "parser_cocci_menhir.mly"
27240 ( let (nm,constraints,pure,clt) = _1 in
27241 Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
27242 # 27216 "parser_cocci_menhir.ml"
27243 in
27244 _menhir_env.MenhirLib.EngineTypes.stack <- {
27245 MenhirLib.EngineTypes.state = _menhir_s;
27246 MenhirLib.EngineTypes.semv = Obj.repr _v;
27247 MenhirLib.EngineTypes.startp = _startpos;
27248 MenhirLib.EngineTypes.endp = _endpos;
27249 MenhirLib.EngineTypes.next = _menhir_stack;
27250 });
27251 (fun _menhir_env ->
27252 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27253 let {
27254 MenhirLib.EngineTypes.state = _menhir_s;
27255 MenhirLib.EngineTypes.semv = _1;
27256 MenhirLib.EngineTypes.startp = _startpos__1_;
27257 MenhirLib.EngineTypes.endp = _endpos__1_;
27258 MenhirLib.EngineTypes.next = _menhir_stack;
27259 } = _menhir_stack in
27260 let _1 : (
27261 # 112 "parser_cocci_menhir.mly"
27262 (Parse_aux.typed_expinfo)
27263 # 27237 "parser_cocci_menhir.ml"
27264 ) = Obj.magic _1 in
27265 let _startpos = _startpos__1_ in
27266 let _endpos = _endpos__1_ in
27267 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27268 # 1717 "parser_cocci_menhir.mly"
27269 ( let (nm,constraints,pure,ty,clt) = _1 in
27270 Ast0.wrap
27271 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
27272 # 27246 "parser_cocci_menhir.ml"
27273 in
27274 _menhir_env.MenhirLib.EngineTypes.stack <- {
27275 MenhirLib.EngineTypes.state = _menhir_s;
27276 MenhirLib.EngineTypes.semv = Obj.repr _v;
27277 MenhirLib.EngineTypes.startp = _startpos;
27278 MenhirLib.EngineTypes.endp = _endpos;
27279 MenhirLib.EngineTypes.next = _menhir_stack;
27280 });
27281 (fun _menhir_env ->
27282 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27283 let {
27284 MenhirLib.EngineTypes.state = _menhir_s;
27285 MenhirLib.EngineTypes.semv = _1;
27286 MenhirLib.EngineTypes.startp = _startpos__1_;
27287 MenhirLib.EngineTypes.endp = _endpos__1_;
27288 MenhirLib.EngineTypes.next = _menhir_stack;
27289 } = _menhir_stack in
27290 let _1 : (
27291 # 112 "parser_cocci_menhir.mly"
27292 (Parse_aux.typed_expinfo)
27293 # 27267 "parser_cocci_menhir.ml"
27294 ) = Obj.magic _1 in
27295 let _startpos = _startpos__1_ in
27296 let _endpos = _endpos__1_ in
27297 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27298 # 1721 "parser_cocci_menhir.mly"
27299 ( let (nm,constraints,pure,ty,clt) = _1 in
27300 Ast0.wrap
27301 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
27302 # 27276 "parser_cocci_menhir.ml"
27303 in
27304 _menhir_env.MenhirLib.EngineTypes.stack <- {
27305 MenhirLib.EngineTypes.state = _menhir_s;
27306 MenhirLib.EngineTypes.semv = Obj.repr _v;
27307 MenhirLib.EngineTypes.startp = _startpos;
27308 MenhirLib.EngineTypes.endp = _endpos;
27309 MenhirLib.EngineTypes.next = _menhir_stack;
27310 });
27311 (fun _menhir_env ->
27312 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27313 let {
27314 MenhirLib.EngineTypes.state = _menhir_s;
27315 MenhirLib.EngineTypes.semv = _1;
27316 MenhirLib.EngineTypes.startp = _startpos__1_;
27317 MenhirLib.EngineTypes.endp = _endpos__1_;
27318 MenhirLib.EngineTypes.next = _menhir_stack;
27319 } = _menhir_stack in
27320 let _1 : (
27321 # 112 "parser_cocci_menhir.mly"
27322 (Parse_aux.typed_expinfo)
27323 # 27297 "parser_cocci_menhir.ml"
27324 ) = Obj.magic _1 in
27325 let _startpos = _startpos__1_ in
27326 let _endpos = _endpos__1_ in
27327 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27328 # 1725 "parser_cocci_menhir.mly"
27329 ( let (nm,constraints,pure,ty,clt) = _1 in
27330 Ast0.wrap
27331 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
27332 # 27306 "parser_cocci_menhir.ml"
27333 in
27334 _menhir_env.MenhirLib.EngineTypes.stack <- {
27335 MenhirLib.EngineTypes.state = _menhir_s;
27336 MenhirLib.EngineTypes.semv = Obj.repr _v;
27337 MenhirLib.EngineTypes.startp = _startpos;
27338 MenhirLib.EngineTypes.endp = _endpos;
27339 MenhirLib.EngineTypes.next = _menhir_stack;
27340 });
27341 (fun _menhir_env ->
27342 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27343 let {
27344 MenhirLib.EngineTypes.semv = _3;
27345 MenhirLib.EngineTypes.startp = _startpos__3_;
27346 MenhirLib.EngineTypes.endp = _endpos__3_;
27347 MenhirLib.EngineTypes.next = {
27348 MenhirLib.EngineTypes.semv = _2;
27349 MenhirLib.EngineTypes.startp = _startpos__2_;
27350 MenhirLib.EngineTypes.endp = _endpos__2_;
27351 MenhirLib.EngineTypes.next = {
27352 MenhirLib.EngineTypes.state = _menhir_s;
27353 MenhirLib.EngineTypes.semv = _1;
27354 MenhirLib.EngineTypes.startp = _startpos__1_;
27355 MenhirLib.EngineTypes.endp = _endpos__1_;
27356 MenhirLib.EngineTypes.next = _menhir_stack;
27357 };
27358 };
27359 } = _menhir_stack in
27360 let _3 : (
27361 # 123 "parser_cocci_menhir.mly"
27362 (Data.clt)
27363 # 27337 "parser_cocci_menhir.ml"
27364 ) = Obj.magic _3 in
27365 let _2 : 'tv_eexpr = Obj.magic _2 in
27366 let _1 : (
27367 # 122 "parser_cocci_menhir.mly"
27368 (Data.clt)
27369 # 27343 "parser_cocci_menhir.ml"
27370 ) = Obj.magic _1 in
27371 let _startpos = _startpos__1_ in
27372 let _endpos = _endpos__3_ in
27373 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27374 # 1729 "parser_cocci_menhir.mly"
27375 ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
27376 P.clt2mcode ")" _3)) )
27377 # 27351 "parser_cocci_menhir.ml"
27378 in
27379 _menhir_env.MenhirLib.EngineTypes.stack <- {
27380 MenhirLib.EngineTypes.state = _menhir_s;
27381 MenhirLib.EngineTypes.semv = Obj.repr _v;
27382 MenhirLib.EngineTypes.startp = _startpos;
27383 MenhirLib.EngineTypes.endp = _endpos;
27384 MenhirLib.EngineTypes.next = _menhir_stack;
27385 });
27386 (fun _menhir_env ->
27387 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27388 let {
27389 MenhirLib.EngineTypes.semv = _3;
27390 MenhirLib.EngineTypes.startp = _startpos__3_;
27391 MenhirLib.EngineTypes.endp = _endpos__3_;
27392 MenhirLib.EngineTypes.next = {
27393 MenhirLib.EngineTypes.semv = _2;
27394 MenhirLib.EngineTypes.startp = _startpos__2_;
27395 MenhirLib.EngineTypes.endp = _endpos__2_;
27396 MenhirLib.EngineTypes.next = {
27397 MenhirLib.EngineTypes.state = _menhir_s;
27398 MenhirLib.EngineTypes.semv = _1;
27399 MenhirLib.EngineTypes.startp = _startpos__1_;
27400 MenhirLib.EngineTypes.endp = _endpos__1_;
27401 MenhirLib.EngineTypes.next = _menhir_stack;
27402 };
27403 };
27404 } = _menhir_stack in
27405 let _3 : (
27406 # 123 "parser_cocci_menhir.mly"
27407 (Data.clt)
27408 # 27382 "parser_cocci_menhir.ml"
27409 ) = Obj.magic _3 in
27410 let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
27411 let _1 : (
27412 # 122 "parser_cocci_menhir.mly"
27413 (Data.clt)
27414 # 27388 "parser_cocci_menhir.ml"
27415 ) = Obj.magic _1 in
27416 let _startpos = _startpos__1_ in
27417 let _endpos = _endpos__3_ in
27418 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27419 # 1732 "parser_cocci_menhir.mly"
27420 ( let (mids,code) = _2 in
27421 Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
27422 code, mids,
27423 P.clt2mcode ")" _3)) )
27424 # 27398 "parser_cocci_menhir.ml"
27425 in
27426 _menhir_env.MenhirLib.EngineTypes.stack <- {
27427 MenhirLib.EngineTypes.state = _menhir_s;
27428 MenhirLib.EngineTypes.semv = Obj.repr _v;
27429 MenhirLib.EngineTypes.startp = _startpos;
27430 MenhirLib.EngineTypes.endp = _endpos;
27431 MenhirLib.EngineTypes.next = _menhir_stack;
27432 });
27433 (fun _menhir_env ->
27434 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27435 let {
27436 MenhirLib.EngineTypes.state = _menhir_s;
27437 MenhirLib.EngineTypes.semv = _1;
27438 MenhirLib.EngineTypes.startp = _startpos__1_;
27439 MenhirLib.EngineTypes.endp = _endpos__1_;
27440 MenhirLib.EngineTypes.next = _menhir_stack;
27441 } = _menhir_stack in
27442 let _1 : 'tv_dot_expressions = Obj.magic _1 in
27443 let _startpos = _startpos__1_ in
27444 let _endpos = _endpos__1_ in
27445 let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
27446 # 1736 "parser_cocci_menhir.mly"
27447 ( _1 )
27448 # 27422 "parser_cocci_menhir.ml"
27449 in
27450 _menhir_env.MenhirLib.EngineTypes.stack <- {
27451 MenhirLib.EngineTypes.state = _menhir_s;
27452 MenhirLib.EngineTypes.semv = Obj.repr _v;
27453 MenhirLib.EngineTypes.startp = _startpos;
27454 MenhirLib.EngineTypes.endp = _endpos;
27455 MenhirLib.EngineTypes.next = _menhir_stack;
27456 });
27457 (fun _menhir_env ->
27458 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27459 let {
27460 MenhirLib.EngineTypes.state = _menhir_s;
27461 MenhirLib.EngineTypes.semv = _1;
27462 MenhirLib.EngineTypes.startp = _startpos__1_;
27463 MenhirLib.EngineTypes.endp = _endpos__1_;
27464 MenhirLib.EngineTypes.next = _menhir_stack;
27465 } = _menhir_stack in
27466 let _1 : 'tv_func_ident = Obj.magic _1 in
27467 let _startpos = _startpos__1_ in
27468 let _endpos = _endpos__1_ in
27469 let _v : 'tv_primary_expr_eexpr_invalid_ =
27470 # 1693 "parser_cocci_menhir.mly"
27471 ( Ast0.wrap(Ast0.Ident(_1)) )
27472 # 27446 "parser_cocci_menhir.ml"
27473 in
27474 _menhir_env.MenhirLib.EngineTypes.stack <- {
27475 MenhirLib.EngineTypes.state = _menhir_s;
27476 MenhirLib.EngineTypes.semv = Obj.repr _v;
27477 MenhirLib.EngineTypes.startp = _startpos;
27478 MenhirLib.EngineTypes.endp = _endpos;
27479 MenhirLib.EngineTypes.next = _menhir_stack;
27480 });
27481 (fun _menhir_env ->
27482 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27483 let {
27484 MenhirLib.EngineTypes.semv = _2;
27485 MenhirLib.EngineTypes.startp = _startpos__2_;
27486 MenhirLib.EngineTypes.endp = _endpos__2_;
27487 MenhirLib.EngineTypes.next = {
27488 MenhirLib.EngineTypes.state = _menhir_s;
27489 MenhirLib.EngineTypes.semv = _1;
27490 MenhirLib.EngineTypes.startp = _startpos__1_;
27491 MenhirLib.EngineTypes.endp = _endpos__1_;
27492 MenhirLib.EngineTypes.next = _menhir_stack;
27493 };
27494 } = _menhir_stack in
27495 let _2 : 'tv_ident = Obj.magic _2 in
27496 let _1 : (
27497 # 136 "parser_cocci_menhir.mly"
27498 (Data.clt)
27499 # 27473 "parser_cocci_menhir.ml"
27500 ) = Obj.magic _1 in
27501 let _startpos = _startpos__1_ in
27502 let _endpos = _endpos__2_ in
27503 let _v : 'tv_primary_expr_eexpr_invalid_ =
27504 # 1695 "parser_cocci_menhir.mly"
27505 ( let op = P.clt2mcode Ast.GetRefLabel _1 in
27506 Ast0.wrap(Ast0.Unary(Ast0.wrap(Ast0.Ident(_2)), op)) )
27507 # 27481 "parser_cocci_menhir.ml"
27508 in
27509 _menhir_env.MenhirLib.EngineTypes.stack <- {
27510 MenhirLib.EngineTypes.state = _menhir_s;
27511 MenhirLib.EngineTypes.semv = Obj.repr _v;
27512 MenhirLib.EngineTypes.startp = _startpos;
27513 MenhirLib.EngineTypes.endp = _endpos;
27514 MenhirLib.EngineTypes.next = _menhir_stack;
27515 });
27516 (fun _menhir_env ->
27517 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27518 let {
27519 MenhirLib.EngineTypes.state = _menhir_s;
27520 MenhirLib.EngineTypes.semv = _1;
27521 MenhirLib.EngineTypes.startp = _startpos__1_;
27522 MenhirLib.EngineTypes.endp = _endpos__1_;
27523 MenhirLib.EngineTypes.next = _menhir_stack;
27524 } = _menhir_stack in
27525 let _1 : (
27526 # 133 "parser_cocci_menhir.mly"
27527 (string * Data.clt)
27528 # 27502 "parser_cocci_menhir.ml"
27529 ) = Obj.magic _1 in
27530 let _startpos = _startpos__1_ in
27531 let _endpos = _endpos__1_ in
27532 let _v : 'tv_primary_expr_eexpr_invalid_ =
27533 # 1698 "parser_cocci_menhir.mly"
27534 ( let (x,clt) = _1 in
27535 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
27536 # 27510 "parser_cocci_menhir.ml"
27537 in
27538 _menhir_env.MenhirLib.EngineTypes.stack <- {
27539 MenhirLib.EngineTypes.state = _menhir_s;
27540 MenhirLib.EngineTypes.semv = Obj.repr _v;
27541 MenhirLib.EngineTypes.startp = _startpos;
27542 MenhirLib.EngineTypes.endp = _endpos;
27543 MenhirLib.EngineTypes.next = _menhir_stack;
27544 });
27545 (fun _menhir_env ->
27546 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27547 let {
27548 MenhirLib.EngineTypes.state = _menhir_s;
27549 MenhirLib.EngineTypes.semv = _1;
27550 MenhirLib.EngineTypes.startp = _startpos__1_;
27551 MenhirLib.EngineTypes.endp = _endpos__1_;
27552 MenhirLib.EngineTypes.next = _menhir_stack;
27553 } = _menhir_stack in
27554 let _1 : (
27555 # 133 "parser_cocci_menhir.mly"
27556 (string * Data.clt)
27557 # 27531 "parser_cocci_menhir.ml"
27558 ) = Obj.magic _1 in
27559 let _startpos = _startpos__1_ in
27560 let _endpos = _endpos__1_ in
27561 let _v : 'tv_primary_expr_eexpr_invalid_ =
27562 # 1701 "parser_cocci_menhir.mly"
27563 ( let (x,clt) = _1 in
27564 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
27565 # 27539 "parser_cocci_menhir.ml"
27566 in
27567 _menhir_env.MenhirLib.EngineTypes.stack <- {
27568 MenhirLib.EngineTypes.state = _menhir_s;
27569 MenhirLib.EngineTypes.semv = Obj.repr _v;
27570 MenhirLib.EngineTypes.startp = _startpos;
27571 MenhirLib.EngineTypes.endp = _endpos;
27572 MenhirLib.EngineTypes.next = _menhir_stack;
27573 });
27574 (fun _menhir_env ->
27575 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27576 let {
27577 MenhirLib.EngineTypes.state = _menhir_s;
27578 MenhirLib.EngineTypes.semv = _1;
27579 MenhirLib.EngineTypes.startp = _startpos__1_;
27580 MenhirLib.EngineTypes.endp = _endpos__1_;
27581 MenhirLib.EngineTypes.next = _menhir_stack;
27582 } = _menhir_stack in
27583 let _1 : (
27584 # 133 "parser_cocci_menhir.mly"
27585 (string * Data.clt)
27586 # 27560 "parser_cocci_menhir.ml"
27587 ) = Obj.magic _1 in
27588 let _startpos = _startpos__1_ in
27589 let _endpos = _endpos__1_ in
27590 let _v : 'tv_primary_expr_eexpr_invalid_ =
27591 # 1704 "parser_cocci_menhir.mly"
27592 ( let (x,clt) = _1 in
27593 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
27594 # 27568 "parser_cocci_menhir.ml"
27595 in
27596 _menhir_env.MenhirLib.EngineTypes.stack <- {
27597 MenhirLib.EngineTypes.state = _menhir_s;
27598 MenhirLib.EngineTypes.semv = Obj.repr _v;
27599 MenhirLib.EngineTypes.startp = _startpos;
27600 MenhirLib.EngineTypes.endp = _endpos;
27601 MenhirLib.EngineTypes.next = _menhir_stack;
27602 });
27603 (fun _menhir_env ->
27604 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27605 let {
27606 MenhirLib.EngineTypes.state = _menhir_s;
27607 MenhirLib.EngineTypes.semv = _1;
27608 MenhirLib.EngineTypes.startp = _startpos__1_;
27609 MenhirLib.EngineTypes.endp = _endpos__1_;
27610 MenhirLib.EngineTypes.next = _menhir_stack;
27611 } = _menhir_stack in
27612 let _1 : (
27613 # 133 "parser_cocci_menhir.mly"
27614 (string * Data.clt)
27615 # 27589 "parser_cocci_menhir.ml"
27616 ) = Obj.magic _1 in
27617 let _startpos = _startpos__1_ in
27618 let _endpos = _endpos__1_ in
27619 let _v : 'tv_primary_expr_eexpr_invalid_ =
27620 # 1707 "parser_cocci_menhir.mly"
27621 ( let (x,clt) = _1 in
27622 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
27623 # 27597 "parser_cocci_menhir.ml"
27624 in
27625 _menhir_env.MenhirLib.EngineTypes.stack <- {
27626 MenhirLib.EngineTypes.state = _menhir_s;
27627 MenhirLib.EngineTypes.semv = Obj.repr _v;
27628 MenhirLib.EngineTypes.startp = _startpos;
27629 MenhirLib.EngineTypes.endp = _endpos;
27630 MenhirLib.EngineTypes.next = _menhir_stack;
27631 });
27632 (fun _menhir_env ->
27633 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27634 let {
27635 MenhirLib.EngineTypes.state = _menhir_s;
27636 MenhirLib.EngineTypes.semv = _1;
27637 MenhirLib.EngineTypes.startp = _startpos__1_;
27638 MenhirLib.EngineTypes.endp = _endpos__1_;
27639 MenhirLib.EngineTypes.next = _menhir_stack;
27640 } = _menhir_stack in
27641 let _1 : (
27642 # 112 "parser_cocci_menhir.mly"
27643 (Parse_aux.typed_expinfo)
27644 # 27618 "parser_cocci_menhir.ml"
27645 ) = Obj.magic _1 in
27646 let _startpos = _startpos__1_ in
27647 let _endpos = _endpos__1_ in
27648 let _v : 'tv_primary_expr_eexpr_invalid_ =
27649 # 1710 "parser_cocci_menhir.mly"
27650 ( let (nm,constraints,pure,ty,clt) = _1 in
27651 Ast0.wrap
27652 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
27653 # 27627 "parser_cocci_menhir.ml"
27654 in
27655 _menhir_env.MenhirLib.EngineTypes.stack <- {
27656 MenhirLib.EngineTypes.state = _menhir_s;
27657 MenhirLib.EngineTypes.semv = Obj.repr _v;
27658 MenhirLib.EngineTypes.startp = _startpos;
27659 MenhirLib.EngineTypes.endp = _endpos;
27660 MenhirLib.EngineTypes.next = _menhir_stack;
27661 });
27662 (fun _menhir_env ->
27663 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27664 let {
27665 MenhirLib.EngineTypes.state = _menhir_s;
27666 MenhirLib.EngineTypes.semv = _1;
27667 MenhirLib.EngineTypes.startp = _startpos__1_;
27668 MenhirLib.EngineTypes.endp = _endpos__1_;
27669 MenhirLib.EngineTypes.next = _menhir_stack;
27670 } = _menhir_stack in
27671 let _1 : (
27672 # 107 "parser_cocci_menhir.mly"
27673 (Parse_aux.expinfo)
27674 # 27648 "parser_cocci_menhir.ml"
27675 ) = Obj.magic _1 in
27676 let _startpos = _startpos__1_ in
27677 let _endpos = _endpos__1_ in
27678 let _v : 'tv_primary_expr_eexpr_invalid_ =
27679 # 1714 "parser_cocci_menhir.mly"
27680 ( let (nm,constraints,pure,clt) = _1 in
27681 Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
27682 # 27656 "parser_cocci_menhir.ml"
27683 in
27684 _menhir_env.MenhirLib.EngineTypes.stack <- {
27685 MenhirLib.EngineTypes.state = _menhir_s;
27686 MenhirLib.EngineTypes.semv = Obj.repr _v;
27687 MenhirLib.EngineTypes.startp = _startpos;
27688 MenhirLib.EngineTypes.endp = _endpos;
27689 MenhirLib.EngineTypes.next = _menhir_stack;
27690 });
27691 (fun _menhir_env ->
27692 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27693 let {
27694 MenhirLib.EngineTypes.state = _menhir_s;
27695 MenhirLib.EngineTypes.semv = _1;
27696 MenhirLib.EngineTypes.startp = _startpos__1_;
27697 MenhirLib.EngineTypes.endp = _endpos__1_;
27698 MenhirLib.EngineTypes.next = _menhir_stack;
27699 } = _menhir_stack in
27700 let _1 : (
27701 # 112 "parser_cocci_menhir.mly"
27702 (Parse_aux.typed_expinfo)
27703 # 27677 "parser_cocci_menhir.ml"
27704 ) = Obj.magic _1 in
27705 let _startpos = _startpos__1_ in
27706 let _endpos = _endpos__1_ in
27707 let _v : 'tv_primary_expr_eexpr_invalid_ =
27708 # 1717 "parser_cocci_menhir.mly"
27709 ( let (nm,constraints,pure,ty,clt) = _1 in
27710 Ast0.wrap
27711 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
27712 # 27686 "parser_cocci_menhir.ml"
27713 in
27714 _menhir_env.MenhirLib.EngineTypes.stack <- {
27715 MenhirLib.EngineTypes.state = _menhir_s;
27716 MenhirLib.EngineTypes.semv = Obj.repr _v;
27717 MenhirLib.EngineTypes.startp = _startpos;
27718 MenhirLib.EngineTypes.endp = _endpos;
27719 MenhirLib.EngineTypes.next = _menhir_stack;
27720 });
27721 (fun _menhir_env ->
27722 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27723 let {
27724 MenhirLib.EngineTypes.state = _menhir_s;
27725 MenhirLib.EngineTypes.semv = _1;
27726 MenhirLib.EngineTypes.startp = _startpos__1_;
27727 MenhirLib.EngineTypes.endp = _endpos__1_;
27728 MenhirLib.EngineTypes.next = _menhir_stack;
27729 } = _menhir_stack in
27730 let _1 : (
27731 # 112 "parser_cocci_menhir.mly"
27732 (Parse_aux.typed_expinfo)
27733 # 27707 "parser_cocci_menhir.ml"
27734 ) = Obj.magic _1 in
27735 let _startpos = _startpos__1_ in
27736 let _endpos = _endpos__1_ in
27737 let _v : 'tv_primary_expr_eexpr_invalid_ =
27738 # 1721 "parser_cocci_menhir.mly"
27739 ( let (nm,constraints,pure,ty,clt) = _1 in
27740 Ast0.wrap
27741 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
27742 # 27716 "parser_cocci_menhir.ml"
27743 in
27744 _menhir_env.MenhirLib.EngineTypes.stack <- {
27745 MenhirLib.EngineTypes.state = _menhir_s;
27746 MenhirLib.EngineTypes.semv = Obj.repr _v;
27747 MenhirLib.EngineTypes.startp = _startpos;
27748 MenhirLib.EngineTypes.endp = _endpos;
27749 MenhirLib.EngineTypes.next = _menhir_stack;
27750 });
27751 (fun _menhir_env ->
27752 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27753 let {
27754 MenhirLib.EngineTypes.state = _menhir_s;
27755 MenhirLib.EngineTypes.semv = _1;
27756 MenhirLib.EngineTypes.startp = _startpos__1_;
27757 MenhirLib.EngineTypes.endp = _endpos__1_;
27758 MenhirLib.EngineTypes.next = _menhir_stack;
27759 } = _menhir_stack in
27760 let _1 : (
27761 # 112 "parser_cocci_menhir.mly"
27762 (Parse_aux.typed_expinfo)
27763 # 27737 "parser_cocci_menhir.ml"
27764 ) = Obj.magic _1 in
27765 let _startpos = _startpos__1_ in
27766 let _endpos = _endpos__1_ in
27767 let _v : 'tv_primary_expr_eexpr_invalid_ =
27768 # 1725 "parser_cocci_menhir.mly"
27769 ( let (nm,constraints,pure,ty,clt) = _1 in
27770 Ast0.wrap
27771 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
27772 # 27746 "parser_cocci_menhir.ml"
27773 in
27774 _menhir_env.MenhirLib.EngineTypes.stack <- {
27775 MenhirLib.EngineTypes.state = _menhir_s;
27776 MenhirLib.EngineTypes.semv = Obj.repr _v;
27777 MenhirLib.EngineTypes.startp = _startpos;
27778 MenhirLib.EngineTypes.endp = _endpos;
27779 MenhirLib.EngineTypes.next = _menhir_stack;
27780 });
27781 (fun _menhir_env ->
27782 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27783 let {
27784 MenhirLib.EngineTypes.semv = _3;
27785 MenhirLib.EngineTypes.startp = _startpos__3_;
27786 MenhirLib.EngineTypes.endp = _endpos__3_;
27787 MenhirLib.EngineTypes.next = {
27788 MenhirLib.EngineTypes.semv = _2;
27789 MenhirLib.EngineTypes.startp = _startpos__2_;
27790 MenhirLib.EngineTypes.endp = _endpos__2_;
27791 MenhirLib.EngineTypes.next = {
27792 MenhirLib.EngineTypes.state = _menhir_s;
27793 MenhirLib.EngineTypes.semv = _1;
27794 MenhirLib.EngineTypes.startp = _startpos__1_;
27795 MenhirLib.EngineTypes.endp = _endpos__1_;
27796 MenhirLib.EngineTypes.next = _menhir_stack;
27797 };
27798 };
27799 } = _menhir_stack in
27800 let _3 : (
27801 # 123 "parser_cocci_menhir.mly"
27802 (Data.clt)
27803 # 27777 "parser_cocci_menhir.ml"
27804 ) = Obj.magic _3 in
27805 let _2 : 'tv_eexpr = Obj.magic _2 in
27806 let _1 : (
27807 # 122 "parser_cocci_menhir.mly"
27808 (Data.clt)
27809 # 27783 "parser_cocci_menhir.ml"
27810 ) = Obj.magic _1 in
27811 let _startpos = _startpos__1_ in
27812 let _endpos = _endpos__3_ in
27813 let _v : 'tv_primary_expr_eexpr_invalid_ =
27814 # 1729 "parser_cocci_menhir.mly"
27815 ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
27816 P.clt2mcode ")" _3)) )
27817 # 27791 "parser_cocci_menhir.ml"
27818 in
27819 _menhir_env.MenhirLib.EngineTypes.stack <- {
27820 MenhirLib.EngineTypes.state = _menhir_s;
27821 MenhirLib.EngineTypes.semv = Obj.repr _v;
27822 MenhirLib.EngineTypes.startp = _startpos;
27823 MenhirLib.EngineTypes.endp = _endpos;
27824 MenhirLib.EngineTypes.next = _menhir_stack;
27825 });
27826 (fun _menhir_env ->
27827 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27828 let {
27829 MenhirLib.EngineTypes.semv = _3;
27830 MenhirLib.EngineTypes.startp = _startpos__3_;
27831 MenhirLib.EngineTypes.endp = _endpos__3_;
27832 MenhirLib.EngineTypes.next = {
27833 MenhirLib.EngineTypes.semv = _2;
27834 MenhirLib.EngineTypes.startp = _startpos__2_;
27835 MenhirLib.EngineTypes.endp = _endpos__2_;
27836 MenhirLib.EngineTypes.next = {
27837 MenhirLib.EngineTypes.state = _menhir_s;
27838 MenhirLib.EngineTypes.semv = _1;
27839 MenhirLib.EngineTypes.startp = _startpos__1_;
27840 MenhirLib.EngineTypes.endp = _endpos__1_;
27841 MenhirLib.EngineTypes.next = _menhir_stack;
27842 };
27843 };
27844 } = _menhir_stack in
27845 let _3 : (
27846 # 123 "parser_cocci_menhir.mly"
27847 (Data.clt)
27848 # 27822 "parser_cocci_menhir.ml"
27849 ) = Obj.magic _3 in
27850 let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
27851 let _1 : (
27852 # 122 "parser_cocci_menhir.mly"
27853 (Data.clt)
27854 # 27828 "parser_cocci_menhir.ml"
27855 ) = Obj.magic _1 in
27856 let _startpos = _startpos__1_ in
27857 let _endpos = _endpos__3_ in
27858 let _v : 'tv_primary_expr_eexpr_invalid_ =
27859 # 1732 "parser_cocci_menhir.mly"
27860 ( let (mids,code) = _2 in
27861 Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
27862 code, mids,
27863 P.clt2mcode ")" _3)) )
27864 # 27838 "parser_cocci_menhir.ml"
27865 in
27866 _menhir_env.MenhirLib.EngineTypes.stack <- {
27867 MenhirLib.EngineTypes.state = _menhir_s;
27868 MenhirLib.EngineTypes.semv = Obj.repr _v;
27869 MenhirLib.EngineTypes.startp = _startpos;
27870 MenhirLib.EngineTypes.endp = _endpos;
27871 MenhirLib.EngineTypes.next = _menhir_stack;
27872 });
27873 (fun _menhir_env ->
27874 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27875 let {
27876 MenhirLib.EngineTypes.state = _menhir_s;
27877 MenhirLib.EngineTypes.semv = _1;
27878 MenhirLib.EngineTypes.startp = _startpos__1_;
27879 MenhirLib.EngineTypes.endp = _endpos__1_;
27880 MenhirLib.EngineTypes.next = _menhir_stack;
27881 } = _menhir_stack in
27882 let _1 : 'tv_invalid = Obj.magic _1 in
27883 let _startpos = _startpos__1_ in
27884 let _endpos = _endpos__1_ in
27885 let _v : 'tv_primary_expr_eexpr_invalid_ =
27886 # 1736 "parser_cocci_menhir.mly"
27887 ( _1 )
27888 # 27862 "parser_cocci_menhir.ml"
27889 in
27890 _menhir_env.MenhirLib.EngineTypes.stack <- {
27891 MenhirLib.EngineTypes.state = _menhir_s;
27892 MenhirLib.EngineTypes.semv = Obj.repr _v;
27893 MenhirLib.EngineTypes.startp = _startpos;
27894 MenhirLib.EngineTypes.endp = _endpos;
27895 MenhirLib.EngineTypes.next = _menhir_stack;
27896 });
27897 (fun _menhir_env ->
27898 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27899 let {
27900 MenhirLib.EngineTypes.state = _menhir_s;
27901 MenhirLib.EngineTypes.semv = _1;
27902 MenhirLib.EngineTypes.startp = _startpos__1_;
27903 MenhirLib.EngineTypes.endp = _endpos__1_;
27904 MenhirLib.EngineTypes.next = _menhir_stack;
27905 } = _menhir_stack in
27906 let _1 : 'tv_func_ident = Obj.magic _1 in
27907 let _startpos = _startpos__1_ in
27908 let _endpos = _endpos__1_ in
27909 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
27910 # 1693 "parser_cocci_menhir.mly"
27911 ( Ast0.wrap(Ast0.Ident(_1)) )
27912 # 27886 "parser_cocci_menhir.ml"
27913 in
27914 _menhir_env.MenhirLib.EngineTypes.stack <- {
27915 MenhirLib.EngineTypes.state = _menhir_s;
27916 MenhirLib.EngineTypes.semv = Obj.repr _v;
27917 MenhirLib.EngineTypes.startp = _startpos;
27918 MenhirLib.EngineTypes.endp = _endpos;
27919 MenhirLib.EngineTypes.next = _menhir_stack;
27920 });
27921 (fun _menhir_env ->
27922 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27923 let {
27924 MenhirLib.EngineTypes.semv = _2;
27925 MenhirLib.EngineTypes.startp = _startpos__2_;
27926 MenhirLib.EngineTypes.endp = _endpos__2_;
27927 MenhirLib.EngineTypes.next = {
27928 MenhirLib.EngineTypes.state = _menhir_s;
27929 MenhirLib.EngineTypes.semv = _1;
27930 MenhirLib.EngineTypes.startp = _startpos__1_;
27931 MenhirLib.EngineTypes.endp = _endpos__1_;
27932 MenhirLib.EngineTypes.next = _menhir_stack;
27933 };
27934 } = _menhir_stack in
27935 let _2 : 'tv_ident = Obj.magic _2 in
27936 let _1 : (
27937 # 136 "parser_cocci_menhir.mly"
27938 (Data.clt)
27939 # 27913 "parser_cocci_menhir.ml"
27940 ) = Obj.magic _1 in
27941 let _startpos = _startpos__1_ in
27942 let _endpos = _endpos__2_ in
27943 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
27944 # 1695 "parser_cocci_menhir.mly"
27945 ( let op = P.clt2mcode Ast.GetRefLabel _1 in
27946 Ast0.wrap(Ast0.Unary(Ast0.wrap(Ast0.Ident(_2)), op)) )
27947 # 27921 "parser_cocci_menhir.ml"
27948 in
27949 _menhir_env.MenhirLib.EngineTypes.stack <- {
27950 MenhirLib.EngineTypes.state = _menhir_s;
27951 MenhirLib.EngineTypes.semv = Obj.repr _v;
27952 MenhirLib.EngineTypes.startp = _startpos;
27953 MenhirLib.EngineTypes.endp = _endpos;
27954 MenhirLib.EngineTypes.next = _menhir_stack;
27955 });
27956 (fun _menhir_env ->
27957 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27958 let {
27959 MenhirLib.EngineTypes.state = _menhir_s;
27960 MenhirLib.EngineTypes.semv = _1;
27961 MenhirLib.EngineTypes.startp = _startpos__1_;
27962 MenhirLib.EngineTypes.endp = _endpos__1_;
27963 MenhirLib.EngineTypes.next = _menhir_stack;
27964 } = _menhir_stack in
27965 let _1 : (
27966 # 133 "parser_cocci_menhir.mly"
27967 (string * Data.clt)
27968 # 27942 "parser_cocci_menhir.ml"
27969 ) = Obj.magic _1 in
27970 let _startpos = _startpos__1_ in
27971 let _endpos = _endpos__1_ in
27972 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
27973 # 1698 "parser_cocci_menhir.mly"
27974 ( let (x,clt) = _1 in
27975 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
27976 # 27950 "parser_cocci_menhir.ml"
27977 in
27978 _menhir_env.MenhirLib.EngineTypes.stack <- {
27979 MenhirLib.EngineTypes.state = _menhir_s;
27980 MenhirLib.EngineTypes.semv = Obj.repr _v;
27981 MenhirLib.EngineTypes.startp = _startpos;
27982 MenhirLib.EngineTypes.endp = _endpos;
27983 MenhirLib.EngineTypes.next = _menhir_stack;
27984 });
27985 (fun _menhir_env ->
27986 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
27987 let {
27988 MenhirLib.EngineTypes.state = _menhir_s;
27989 MenhirLib.EngineTypes.semv = _1;
27990 MenhirLib.EngineTypes.startp = _startpos__1_;
27991 MenhirLib.EngineTypes.endp = _endpos__1_;
27992 MenhirLib.EngineTypes.next = _menhir_stack;
27993 } = _menhir_stack in
27994 let _1 : (
27995 # 133 "parser_cocci_menhir.mly"
27996 (string * Data.clt)
27997 # 27971 "parser_cocci_menhir.ml"
27998 ) = Obj.magic _1 in
27999 let _startpos = _startpos__1_ in
28000 let _endpos = _endpos__1_ in
28001 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
28002 # 1701 "parser_cocci_menhir.mly"
28003 ( let (x,clt) = _1 in
28004 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
28005 # 27979 "parser_cocci_menhir.ml"
28006 in
28007 _menhir_env.MenhirLib.EngineTypes.stack <- {
28008 MenhirLib.EngineTypes.state = _menhir_s;
28009 MenhirLib.EngineTypes.semv = Obj.repr _v;
28010 MenhirLib.EngineTypes.startp = _startpos;
28011 MenhirLib.EngineTypes.endp = _endpos;
28012 MenhirLib.EngineTypes.next = _menhir_stack;
28013 });
28014 (fun _menhir_env ->
28015 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28016 let {
28017 MenhirLib.EngineTypes.state = _menhir_s;
28018 MenhirLib.EngineTypes.semv = _1;
28019 MenhirLib.EngineTypes.startp = _startpos__1_;
28020 MenhirLib.EngineTypes.endp = _endpos__1_;
28021 MenhirLib.EngineTypes.next = _menhir_stack;
28022 } = _menhir_stack in
28023 let _1 : (
28024 # 133 "parser_cocci_menhir.mly"
28025 (string * Data.clt)
28026 # 28000 "parser_cocci_menhir.ml"
28027 ) = Obj.magic _1 in
28028 let _startpos = _startpos__1_ in
28029 let _endpos = _endpos__1_ in
28030 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
28031 # 1704 "parser_cocci_menhir.mly"
28032 ( let (x,clt) = _1 in
28033 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
28034 # 28008 "parser_cocci_menhir.ml"
28035 in
28036 _menhir_env.MenhirLib.EngineTypes.stack <- {
28037 MenhirLib.EngineTypes.state = _menhir_s;
28038 MenhirLib.EngineTypes.semv = Obj.repr _v;
28039 MenhirLib.EngineTypes.startp = _startpos;
28040 MenhirLib.EngineTypes.endp = _endpos;
28041 MenhirLib.EngineTypes.next = _menhir_stack;
28042 });
28043 (fun _menhir_env ->
28044 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28045 let {
28046 MenhirLib.EngineTypes.state = _menhir_s;
28047 MenhirLib.EngineTypes.semv = _1;
28048 MenhirLib.EngineTypes.startp = _startpos__1_;
28049 MenhirLib.EngineTypes.endp = _endpos__1_;
28050 MenhirLib.EngineTypes.next = _menhir_stack;
28051 } = _menhir_stack in
28052 let _1 : (
28053 # 133 "parser_cocci_menhir.mly"
28054 (string * Data.clt)
28055 # 28029 "parser_cocci_menhir.ml"
28056 ) = Obj.magic _1 in
28057 let _startpos = _startpos__1_ in
28058 let _endpos = _endpos__1_ in
28059 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
28060 # 1707 "parser_cocci_menhir.mly"
28061 ( let (x,clt) = _1 in
28062 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
28063 # 28037 "parser_cocci_menhir.ml"
28064 in
28065 _menhir_env.MenhirLib.EngineTypes.stack <- {
28066 MenhirLib.EngineTypes.state = _menhir_s;
28067 MenhirLib.EngineTypes.semv = Obj.repr _v;
28068 MenhirLib.EngineTypes.startp = _startpos;
28069 MenhirLib.EngineTypes.endp = _endpos;
28070 MenhirLib.EngineTypes.next = _menhir_stack;
28071 });
28072 (fun _menhir_env ->
28073 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28074 let {
28075 MenhirLib.EngineTypes.state = _menhir_s;
28076 MenhirLib.EngineTypes.semv = _1;
28077 MenhirLib.EngineTypes.startp = _startpos__1_;
28078 MenhirLib.EngineTypes.endp = _endpos__1_;
28079 MenhirLib.EngineTypes.next = _menhir_stack;
28080 } = _menhir_stack in
28081 let _1 : (
28082 # 112 "parser_cocci_menhir.mly"
28083 (Parse_aux.typed_expinfo)
28084 # 28058 "parser_cocci_menhir.ml"
28085 ) = Obj.magic _1 in
28086 let _startpos = _startpos__1_ in
28087 let _endpos = _endpos__1_ in
28088 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
28089 # 1710 "parser_cocci_menhir.mly"
28090 ( let (nm,constraints,pure,ty,clt) = _1 in
28091 Ast0.wrap
28092 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
28093 # 28067 "parser_cocci_menhir.ml"
28094 in
28095 _menhir_env.MenhirLib.EngineTypes.stack <- {
28096 MenhirLib.EngineTypes.state = _menhir_s;
28097 MenhirLib.EngineTypes.semv = Obj.repr _v;
28098 MenhirLib.EngineTypes.startp = _startpos;
28099 MenhirLib.EngineTypes.endp = _endpos;
28100 MenhirLib.EngineTypes.next = _menhir_stack;
28101 });
28102 (fun _menhir_env ->
28103 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28104 let {
28105 MenhirLib.EngineTypes.state = _menhir_s;
28106 MenhirLib.EngineTypes.semv = _1;
28107 MenhirLib.EngineTypes.startp = _startpos__1_;
28108 MenhirLib.EngineTypes.endp = _endpos__1_;
28109 MenhirLib.EngineTypes.next = _menhir_stack;
28110 } = _menhir_stack in
28111 let _1 : (
28112 # 107 "parser_cocci_menhir.mly"
28113 (Parse_aux.expinfo)
28114 # 28088 "parser_cocci_menhir.ml"
28115 ) = Obj.magic _1 in
28116 let _startpos = _startpos__1_ in
28117 let _endpos = _endpos__1_ in
28118 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
28119 # 1714 "parser_cocci_menhir.mly"
28120 ( let (nm,constraints,pure,clt) = _1 in
28121 Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
28122 # 28096 "parser_cocci_menhir.ml"
28123 in
28124 _menhir_env.MenhirLib.EngineTypes.stack <- {
28125 MenhirLib.EngineTypes.state = _menhir_s;
28126 MenhirLib.EngineTypes.semv = Obj.repr _v;
28127 MenhirLib.EngineTypes.startp = _startpos;
28128 MenhirLib.EngineTypes.endp = _endpos;
28129 MenhirLib.EngineTypes.next = _menhir_stack;
28130 });
28131 (fun _menhir_env ->
28132 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28133 let {
28134 MenhirLib.EngineTypes.state = _menhir_s;
28135 MenhirLib.EngineTypes.semv = _1;
28136 MenhirLib.EngineTypes.startp = _startpos__1_;
28137 MenhirLib.EngineTypes.endp = _endpos__1_;
28138 MenhirLib.EngineTypes.next = _menhir_stack;
28139 } = _menhir_stack in
28140 let _1 : (
28141 # 112 "parser_cocci_menhir.mly"
28142 (Parse_aux.typed_expinfo)
28143 # 28117 "parser_cocci_menhir.ml"
28144 ) = Obj.magic _1 in
28145 let _startpos = _startpos__1_ in
28146 let _endpos = _endpos__1_ in
28147 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
28148 # 1717 "parser_cocci_menhir.mly"
28149 ( let (nm,constraints,pure,ty,clt) = _1 in
28150 Ast0.wrap
28151 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
28152 # 28126 "parser_cocci_menhir.ml"
28153 in
28154 _menhir_env.MenhirLib.EngineTypes.stack <- {
28155 MenhirLib.EngineTypes.state = _menhir_s;
28156 MenhirLib.EngineTypes.semv = Obj.repr _v;
28157 MenhirLib.EngineTypes.startp = _startpos;
28158 MenhirLib.EngineTypes.endp = _endpos;
28159 MenhirLib.EngineTypes.next = _menhir_stack;
28160 });
28161 (fun _menhir_env ->
28162 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28163 let {
28164 MenhirLib.EngineTypes.state = _menhir_s;
28165 MenhirLib.EngineTypes.semv = _1;
28166 MenhirLib.EngineTypes.startp = _startpos__1_;
28167 MenhirLib.EngineTypes.endp = _endpos__1_;
28168 MenhirLib.EngineTypes.next = _menhir_stack;
28169 } = _menhir_stack in
28170 let _1 : (
28171 # 112 "parser_cocci_menhir.mly"
28172 (Parse_aux.typed_expinfo)
28173 # 28147 "parser_cocci_menhir.ml"
28174 ) = Obj.magic _1 in
28175 let _startpos = _startpos__1_ in
28176 let _endpos = _endpos__1_ in
28177 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
28178 # 1721 "parser_cocci_menhir.mly"
28179 ( let (nm,constraints,pure,ty,clt) = _1 in
28180 Ast0.wrap
28181 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
28182 # 28156 "parser_cocci_menhir.ml"
28183 in
28184 _menhir_env.MenhirLib.EngineTypes.stack <- {
28185 MenhirLib.EngineTypes.state = _menhir_s;
28186 MenhirLib.EngineTypes.semv = Obj.repr _v;
28187 MenhirLib.EngineTypes.startp = _startpos;
28188 MenhirLib.EngineTypes.endp = _endpos;
28189 MenhirLib.EngineTypes.next = _menhir_stack;
28190 });
28191 (fun _menhir_env ->
28192 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28193 let {
28194 MenhirLib.EngineTypes.state = _menhir_s;
28195 MenhirLib.EngineTypes.semv = _1;
28196 MenhirLib.EngineTypes.startp = _startpos__1_;
28197 MenhirLib.EngineTypes.endp = _endpos__1_;
28198 MenhirLib.EngineTypes.next = _menhir_stack;
28199 } = _menhir_stack in
28200 let _1 : (
28201 # 112 "parser_cocci_menhir.mly"
28202 (Parse_aux.typed_expinfo)
28203 # 28177 "parser_cocci_menhir.ml"
28204 ) = Obj.magic _1 in
28205 let _startpos = _startpos__1_ in
28206 let _endpos = _endpos__1_ in
28207 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
28208 # 1725 "parser_cocci_menhir.mly"
28209 ( let (nm,constraints,pure,ty,clt) = _1 in
28210 Ast0.wrap
28211 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
28212 # 28186 "parser_cocci_menhir.ml"
28213 in
28214 _menhir_env.MenhirLib.EngineTypes.stack <- {
28215 MenhirLib.EngineTypes.state = _menhir_s;
28216 MenhirLib.EngineTypes.semv = Obj.repr _v;
28217 MenhirLib.EngineTypes.startp = _startpos;
28218 MenhirLib.EngineTypes.endp = _endpos;
28219 MenhirLib.EngineTypes.next = _menhir_stack;
28220 });
28221 (fun _menhir_env ->
28222 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28223 let {
28224 MenhirLib.EngineTypes.semv = _3;
28225 MenhirLib.EngineTypes.startp = _startpos__3_;
28226 MenhirLib.EngineTypes.endp = _endpos__3_;
28227 MenhirLib.EngineTypes.next = {
28228 MenhirLib.EngineTypes.semv = _2;
28229 MenhirLib.EngineTypes.startp = _startpos__2_;
28230 MenhirLib.EngineTypes.endp = _endpos__2_;
28231 MenhirLib.EngineTypes.next = {
28232 MenhirLib.EngineTypes.state = _menhir_s;
28233 MenhirLib.EngineTypes.semv = _1;
28234 MenhirLib.EngineTypes.startp = _startpos__1_;
28235 MenhirLib.EngineTypes.endp = _endpos__1_;
28236 MenhirLib.EngineTypes.next = _menhir_stack;
28237 };
28238 };
28239 } = _menhir_stack in
28240 let _3 : (
28241 # 123 "parser_cocci_menhir.mly"
28242 (Data.clt)
28243 # 28217 "parser_cocci_menhir.ml"
28244 ) = Obj.magic _3 in
28245 let _2 : 'tv_eexpr = Obj.magic _2 in
28246 let _1 : (
28247 # 122 "parser_cocci_menhir.mly"
28248 (Data.clt)
28249 # 28223 "parser_cocci_menhir.ml"
28250 ) = Obj.magic _1 in
28251 let _startpos = _startpos__1_ in
28252 let _endpos = _endpos__3_ in
28253 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
28254 # 1729 "parser_cocci_menhir.mly"
28255 ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
28256 P.clt2mcode ")" _3)) )
28257 # 28231 "parser_cocci_menhir.ml"
28258 in
28259 _menhir_env.MenhirLib.EngineTypes.stack <- {
28260 MenhirLib.EngineTypes.state = _menhir_s;
28261 MenhirLib.EngineTypes.semv = Obj.repr _v;
28262 MenhirLib.EngineTypes.startp = _startpos;
28263 MenhirLib.EngineTypes.endp = _endpos;
28264 MenhirLib.EngineTypes.next = _menhir_stack;
28265 });
28266 (fun _menhir_env ->
28267 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28268 let {
28269 MenhirLib.EngineTypes.semv = _3;
28270 MenhirLib.EngineTypes.startp = _startpos__3_;
28271 MenhirLib.EngineTypes.endp = _endpos__3_;
28272 MenhirLib.EngineTypes.next = {
28273 MenhirLib.EngineTypes.semv = _2;
28274 MenhirLib.EngineTypes.startp = _startpos__2_;
28275 MenhirLib.EngineTypes.endp = _endpos__2_;
28276 MenhirLib.EngineTypes.next = {
28277 MenhirLib.EngineTypes.state = _menhir_s;
28278 MenhirLib.EngineTypes.semv = _1;
28279 MenhirLib.EngineTypes.startp = _startpos__1_;
28280 MenhirLib.EngineTypes.endp = _endpos__1_;
28281 MenhirLib.EngineTypes.next = _menhir_stack;
28282 };
28283 };
28284 } = _menhir_stack in
28285 let _3 : (
28286 # 123 "parser_cocci_menhir.mly"
28287 (Data.clt)
28288 # 28262 "parser_cocci_menhir.ml"
28289 ) = Obj.magic _3 in
28290 let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
28291 let _1 : (
28292 # 122 "parser_cocci_menhir.mly"
28293 (Data.clt)
28294 # 28268 "parser_cocci_menhir.ml"
28295 ) = Obj.magic _1 in
28296 let _startpos = _startpos__1_ in
28297 let _endpos = _endpos__3_ in
28298 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
28299 # 1732 "parser_cocci_menhir.mly"
28300 ( let (mids,code) = _2 in
28301 Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
28302 code, mids,
28303 P.clt2mcode ")" _3)) )
28304 # 28278 "parser_cocci_menhir.ml"
28305 in
28306 _menhir_env.MenhirLib.EngineTypes.stack <- {
28307 MenhirLib.EngineTypes.state = _menhir_s;
28308 MenhirLib.EngineTypes.semv = Obj.repr _v;
28309 MenhirLib.EngineTypes.startp = _startpos;
28310 MenhirLib.EngineTypes.endp = _endpos;
28311 MenhirLib.EngineTypes.next = _menhir_stack;
28312 });
28313 (fun _menhir_env ->
28314 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28315 let {
28316 MenhirLib.EngineTypes.state = _menhir_s;
28317 MenhirLib.EngineTypes.semv = _1;
28318 MenhirLib.EngineTypes.startp = _startpos__1_;
28319 MenhirLib.EngineTypes.endp = _endpos__1_;
28320 MenhirLib.EngineTypes.next = _menhir_stack;
28321 } = _menhir_stack in
28322 let _1 : 'tv_nest_expressions = Obj.magic _1 in
28323 let _startpos = _startpos__1_ in
28324 let _endpos = _endpos__1_ in
28325 let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
28326 # 1736 "parser_cocci_menhir.mly"
28327 ( _1 )
28328 # 28302 "parser_cocci_menhir.ml"
28329 in
28330 _menhir_env.MenhirLib.EngineTypes.stack <- {
28331 MenhirLib.EngineTypes.state = _menhir_s;
28332 MenhirLib.EngineTypes.semv = Obj.repr _v;
28333 MenhirLib.EngineTypes.startp = _startpos;
28334 MenhirLib.EngineTypes.endp = _endpos;
28335 MenhirLib.EngineTypes.next = _menhir_stack;
28336 });
28337 (fun _menhir_env ->
28338 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28339 let {
28340 MenhirLib.EngineTypes.state = _menhir_s;
28341 MenhirLib.EngineTypes.semv = _1;
28342 MenhirLib.EngineTypes.startp = _startpos__1_;
28343 MenhirLib.EngineTypes.endp = _endpos__1_;
28344 MenhirLib.EngineTypes.next = _menhir_stack;
28345 } = _menhir_stack in
28346 let _1 : 'tv_func_ident = Obj.magic _1 in
28347 let _startpos = _startpos__1_ in
28348 let _endpos = _endpos__1_ in
28349 let _v : 'tv_primary_expr_expr_invalid_ =
28350 # 1693 "parser_cocci_menhir.mly"
28351 ( Ast0.wrap(Ast0.Ident(_1)) )
28352 # 28326 "parser_cocci_menhir.ml"
28353 in
28354 _menhir_env.MenhirLib.EngineTypes.stack <- {
28355 MenhirLib.EngineTypes.state = _menhir_s;
28356 MenhirLib.EngineTypes.semv = Obj.repr _v;
28357 MenhirLib.EngineTypes.startp = _startpos;
28358 MenhirLib.EngineTypes.endp = _endpos;
28359 MenhirLib.EngineTypes.next = _menhir_stack;
28360 });
28361 (fun _menhir_env ->
28362 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28363 let {
28364 MenhirLib.EngineTypes.semv = _2;
28365 MenhirLib.EngineTypes.startp = _startpos__2_;
28366 MenhirLib.EngineTypes.endp = _endpos__2_;
28367 MenhirLib.EngineTypes.next = {
28368 MenhirLib.EngineTypes.state = _menhir_s;
28369 MenhirLib.EngineTypes.semv = _1;
28370 MenhirLib.EngineTypes.startp = _startpos__1_;
28371 MenhirLib.EngineTypes.endp = _endpos__1_;
28372 MenhirLib.EngineTypes.next = _menhir_stack;
28373 };
28374 } = _menhir_stack in
28375 let _2 : 'tv_ident = Obj.magic _2 in
28376 let _1 : (
28377 # 136 "parser_cocci_menhir.mly"
28378 (Data.clt)
28379 # 28353 "parser_cocci_menhir.ml"
28380 ) = Obj.magic _1 in
28381 let _startpos = _startpos__1_ in
28382 let _endpos = _endpos__2_ in
28383 let _v : 'tv_primary_expr_expr_invalid_ =
28384 # 1695 "parser_cocci_menhir.mly"
28385 ( let op = P.clt2mcode Ast.GetRefLabel _1 in
28386 Ast0.wrap(Ast0.Unary(Ast0.wrap(Ast0.Ident(_2)), op)) )
28387 # 28361 "parser_cocci_menhir.ml"
28388 in
28389 _menhir_env.MenhirLib.EngineTypes.stack <- {
28390 MenhirLib.EngineTypes.state = _menhir_s;
28391 MenhirLib.EngineTypes.semv = Obj.repr _v;
28392 MenhirLib.EngineTypes.startp = _startpos;
28393 MenhirLib.EngineTypes.endp = _endpos;
28394 MenhirLib.EngineTypes.next = _menhir_stack;
28395 });
28396 (fun _menhir_env ->
28397 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28398 let {
28399 MenhirLib.EngineTypes.state = _menhir_s;
28400 MenhirLib.EngineTypes.semv = _1;
28401 MenhirLib.EngineTypes.startp = _startpos__1_;
28402 MenhirLib.EngineTypes.endp = _endpos__1_;
28403 MenhirLib.EngineTypes.next = _menhir_stack;
28404 } = _menhir_stack in
28405 let _1 : (
28406 # 133 "parser_cocci_menhir.mly"
28407 (string * Data.clt)
28408 # 28382 "parser_cocci_menhir.ml"
28409 ) = Obj.magic _1 in
28410 let _startpos = _startpos__1_ in
28411 let _endpos = _endpos__1_ in
28412 let _v : 'tv_primary_expr_expr_invalid_ =
28413 # 1698 "parser_cocci_menhir.mly"
28414 ( let (x,clt) = _1 in
28415 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
28416 # 28390 "parser_cocci_menhir.ml"
28417 in
28418 _menhir_env.MenhirLib.EngineTypes.stack <- {
28419 MenhirLib.EngineTypes.state = _menhir_s;
28420 MenhirLib.EngineTypes.semv = Obj.repr _v;
28421 MenhirLib.EngineTypes.startp = _startpos;
28422 MenhirLib.EngineTypes.endp = _endpos;
28423 MenhirLib.EngineTypes.next = _menhir_stack;
28424 });
28425 (fun _menhir_env ->
28426 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28427 let {
28428 MenhirLib.EngineTypes.state = _menhir_s;
28429 MenhirLib.EngineTypes.semv = _1;
28430 MenhirLib.EngineTypes.startp = _startpos__1_;
28431 MenhirLib.EngineTypes.endp = _endpos__1_;
28432 MenhirLib.EngineTypes.next = _menhir_stack;
28433 } = _menhir_stack in
28434 let _1 : (
28435 # 133 "parser_cocci_menhir.mly"
28436 (string * Data.clt)
28437 # 28411 "parser_cocci_menhir.ml"
28438 ) = Obj.magic _1 in
28439 let _startpos = _startpos__1_ in
28440 let _endpos = _endpos__1_ in
28441 let _v : 'tv_primary_expr_expr_invalid_ =
28442 # 1701 "parser_cocci_menhir.mly"
28443 ( let (x,clt) = _1 in
28444 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
28445 # 28419 "parser_cocci_menhir.ml"
28446 in
28447 _menhir_env.MenhirLib.EngineTypes.stack <- {
28448 MenhirLib.EngineTypes.state = _menhir_s;
28449 MenhirLib.EngineTypes.semv = Obj.repr _v;
28450 MenhirLib.EngineTypes.startp = _startpos;
28451 MenhirLib.EngineTypes.endp = _endpos;
28452 MenhirLib.EngineTypes.next = _menhir_stack;
28453 });
28454 (fun _menhir_env ->
28455 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28456 let {
28457 MenhirLib.EngineTypes.state = _menhir_s;
28458 MenhirLib.EngineTypes.semv = _1;
28459 MenhirLib.EngineTypes.startp = _startpos__1_;
28460 MenhirLib.EngineTypes.endp = _endpos__1_;
28461 MenhirLib.EngineTypes.next = _menhir_stack;
28462 } = _menhir_stack in
28463 let _1 : (
28464 # 133 "parser_cocci_menhir.mly"
28465 (string * Data.clt)
28466 # 28440 "parser_cocci_menhir.ml"
28467 ) = Obj.magic _1 in
28468 let _startpos = _startpos__1_ in
28469 let _endpos = _endpos__1_ in
28470 let _v : 'tv_primary_expr_expr_invalid_ =
28471 # 1704 "parser_cocci_menhir.mly"
28472 ( let (x,clt) = _1 in
28473 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
28474 # 28448 "parser_cocci_menhir.ml"
28475 in
28476 _menhir_env.MenhirLib.EngineTypes.stack <- {
28477 MenhirLib.EngineTypes.state = _menhir_s;
28478 MenhirLib.EngineTypes.semv = Obj.repr _v;
28479 MenhirLib.EngineTypes.startp = _startpos;
28480 MenhirLib.EngineTypes.endp = _endpos;
28481 MenhirLib.EngineTypes.next = _menhir_stack;
28482 });
28483 (fun _menhir_env ->
28484 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28485 let {
28486 MenhirLib.EngineTypes.state = _menhir_s;
28487 MenhirLib.EngineTypes.semv = _1;
28488 MenhirLib.EngineTypes.startp = _startpos__1_;
28489 MenhirLib.EngineTypes.endp = _endpos__1_;
28490 MenhirLib.EngineTypes.next = _menhir_stack;
28491 } = _menhir_stack in
28492 let _1 : (
28493 # 133 "parser_cocci_menhir.mly"
28494 (string * Data.clt)
28495 # 28469 "parser_cocci_menhir.ml"
28496 ) = Obj.magic _1 in
28497 let _startpos = _startpos__1_ in
28498 let _endpos = _endpos__1_ in
28499 let _v : 'tv_primary_expr_expr_invalid_ =
28500 # 1707 "parser_cocci_menhir.mly"
28501 ( let (x,clt) = _1 in
28502 Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
28503 # 28477 "parser_cocci_menhir.ml"
28504 in
28505 _menhir_env.MenhirLib.EngineTypes.stack <- {
28506 MenhirLib.EngineTypes.state = _menhir_s;
28507 MenhirLib.EngineTypes.semv = Obj.repr _v;
28508 MenhirLib.EngineTypes.startp = _startpos;
28509 MenhirLib.EngineTypes.endp = _endpos;
28510 MenhirLib.EngineTypes.next = _menhir_stack;
28511 });
28512 (fun _menhir_env ->
28513 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28514 let {
28515 MenhirLib.EngineTypes.state = _menhir_s;
28516 MenhirLib.EngineTypes.semv = _1;
28517 MenhirLib.EngineTypes.startp = _startpos__1_;
28518 MenhirLib.EngineTypes.endp = _endpos__1_;
28519 MenhirLib.EngineTypes.next = _menhir_stack;
28520 } = _menhir_stack in
28521 let _1 : (
28522 # 112 "parser_cocci_menhir.mly"
28523 (Parse_aux.typed_expinfo)
28524 # 28498 "parser_cocci_menhir.ml"
28525 ) = Obj.magic _1 in
28526 let _startpos = _startpos__1_ in
28527 let _endpos = _endpos__1_ in
28528 let _v : 'tv_primary_expr_expr_invalid_ =
28529 # 1710 "parser_cocci_menhir.mly"
28530 ( let (nm,constraints,pure,ty,clt) = _1 in
28531 Ast0.wrap
28532 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
28533 # 28507 "parser_cocci_menhir.ml"
28534 in
28535 _menhir_env.MenhirLib.EngineTypes.stack <- {
28536 MenhirLib.EngineTypes.state = _menhir_s;
28537 MenhirLib.EngineTypes.semv = Obj.repr _v;
28538 MenhirLib.EngineTypes.startp = _startpos;
28539 MenhirLib.EngineTypes.endp = _endpos;
28540 MenhirLib.EngineTypes.next = _menhir_stack;
28541 });
28542 (fun _menhir_env ->
28543 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28544 let {
28545 MenhirLib.EngineTypes.state = _menhir_s;
28546 MenhirLib.EngineTypes.semv = _1;
28547 MenhirLib.EngineTypes.startp = _startpos__1_;
28548 MenhirLib.EngineTypes.endp = _endpos__1_;
28549 MenhirLib.EngineTypes.next = _menhir_stack;
28550 } = _menhir_stack in
28551 let _1 : (
28552 # 107 "parser_cocci_menhir.mly"
28553 (Parse_aux.expinfo)
28554 # 28528 "parser_cocci_menhir.ml"
28555 ) = Obj.magic _1 in
28556 let _startpos = _startpos__1_ in
28557 let _endpos = _endpos__1_ in
28558 let _v : 'tv_primary_expr_expr_invalid_ =
28559 # 1714 "parser_cocci_menhir.mly"
28560 ( let (nm,constraints,pure,clt) = _1 in
28561 Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
28562 # 28536 "parser_cocci_menhir.ml"
28563 in
28564 _menhir_env.MenhirLib.EngineTypes.stack <- {
28565 MenhirLib.EngineTypes.state = _menhir_s;
28566 MenhirLib.EngineTypes.semv = Obj.repr _v;
28567 MenhirLib.EngineTypes.startp = _startpos;
28568 MenhirLib.EngineTypes.endp = _endpos;
28569 MenhirLib.EngineTypes.next = _menhir_stack;
28570 });
28571 (fun _menhir_env ->
28572 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28573 let {
28574 MenhirLib.EngineTypes.state = _menhir_s;
28575 MenhirLib.EngineTypes.semv = _1;
28576 MenhirLib.EngineTypes.startp = _startpos__1_;
28577 MenhirLib.EngineTypes.endp = _endpos__1_;
28578 MenhirLib.EngineTypes.next = _menhir_stack;
28579 } = _menhir_stack in
28580 let _1 : (
28581 # 112 "parser_cocci_menhir.mly"
28582 (Parse_aux.typed_expinfo)
28583 # 28557 "parser_cocci_menhir.ml"
28584 ) = Obj.magic _1 in
28585 let _startpos = _startpos__1_ in
28586 let _endpos = _endpos__1_ in
28587 let _v : 'tv_primary_expr_expr_invalid_ =
28588 # 1717 "parser_cocci_menhir.mly"
28589 ( let (nm,constraints,pure,ty,clt) = _1 in
28590 Ast0.wrap
28591 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
28592 # 28566 "parser_cocci_menhir.ml"
28593 in
28594 _menhir_env.MenhirLib.EngineTypes.stack <- {
28595 MenhirLib.EngineTypes.state = _menhir_s;
28596 MenhirLib.EngineTypes.semv = Obj.repr _v;
28597 MenhirLib.EngineTypes.startp = _startpos;
28598 MenhirLib.EngineTypes.endp = _endpos;
28599 MenhirLib.EngineTypes.next = _menhir_stack;
28600 });
28601 (fun _menhir_env ->
28602 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28603 let {
28604 MenhirLib.EngineTypes.state = _menhir_s;
28605 MenhirLib.EngineTypes.semv = _1;
28606 MenhirLib.EngineTypes.startp = _startpos__1_;
28607 MenhirLib.EngineTypes.endp = _endpos__1_;
28608 MenhirLib.EngineTypes.next = _menhir_stack;
28609 } = _menhir_stack in
28610 let _1 : (
28611 # 112 "parser_cocci_menhir.mly"
28612 (Parse_aux.typed_expinfo)
28613 # 28587 "parser_cocci_menhir.ml"
28614 ) = Obj.magic _1 in
28615 let _startpos = _startpos__1_ in
28616 let _endpos = _endpos__1_ in
28617 let _v : 'tv_primary_expr_expr_invalid_ =
28618 # 1721 "parser_cocci_menhir.mly"
28619 ( let (nm,constraints,pure,ty,clt) = _1 in
28620 Ast0.wrap
28621 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
28622 # 28596 "parser_cocci_menhir.ml"
28623 in
28624 _menhir_env.MenhirLib.EngineTypes.stack <- {
28625 MenhirLib.EngineTypes.state = _menhir_s;
28626 MenhirLib.EngineTypes.semv = Obj.repr _v;
28627 MenhirLib.EngineTypes.startp = _startpos;
28628 MenhirLib.EngineTypes.endp = _endpos;
28629 MenhirLib.EngineTypes.next = _menhir_stack;
28630 });
28631 (fun _menhir_env ->
28632 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28633 let {
28634 MenhirLib.EngineTypes.state = _menhir_s;
28635 MenhirLib.EngineTypes.semv = _1;
28636 MenhirLib.EngineTypes.startp = _startpos__1_;
28637 MenhirLib.EngineTypes.endp = _endpos__1_;
28638 MenhirLib.EngineTypes.next = _menhir_stack;
28639 } = _menhir_stack in
28640 let _1 : (
28641 # 112 "parser_cocci_menhir.mly"
28642 (Parse_aux.typed_expinfo)
28643 # 28617 "parser_cocci_menhir.ml"
28644 ) = Obj.magic _1 in
28645 let _startpos = _startpos__1_ in
28646 let _endpos = _endpos__1_ in
28647 let _v : 'tv_primary_expr_expr_invalid_ =
28648 # 1725 "parser_cocci_menhir.mly"
28649 ( let (nm,constraints,pure,ty,clt) = _1 in
28650 Ast0.wrap
28651 (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
28652 # 28626 "parser_cocci_menhir.ml"
28653 in
28654 _menhir_env.MenhirLib.EngineTypes.stack <- {
28655 MenhirLib.EngineTypes.state = _menhir_s;
28656 MenhirLib.EngineTypes.semv = Obj.repr _v;
28657 MenhirLib.EngineTypes.startp = _startpos;
28658 MenhirLib.EngineTypes.endp = _endpos;
28659 MenhirLib.EngineTypes.next = _menhir_stack;
28660 });
28661 (fun _menhir_env ->
28662 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28663 let {
28664 MenhirLib.EngineTypes.semv = _3;
28665 MenhirLib.EngineTypes.startp = _startpos__3_;
28666 MenhirLib.EngineTypes.endp = _endpos__3_;
28667 MenhirLib.EngineTypes.next = {
28668 MenhirLib.EngineTypes.semv = _2;
28669 MenhirLib.EngineTypes.startp = _startpos__2_;
28670 MenhirLib.EngineTypes.endp = _endpos__2_;
28671 MenhirLib.EngineTypes.next = {
28672 MenhirLib.EngineTypes.state = _menhir_s;
28673 MenhirLib.EngineTypes.semv = _1;
28674 MenhirLib.EngineTypes.startp = _startpos__1_;
28675 MenhirLib.EngineTypes.endp = _endpos__1_;
28676 MenhirLib.EngineTypes.next = _menhir_stack;
28677 };
28678 };
28679 } = _menhir_stack in
28680 let _3 : (
28681 # 123 "parser_cocci_menhir.mly"
28682 (Data.clt)
28683 # 28657 "parser_cocci_menhir.ml"
28684 ) = Obj.magic _3 in
28685 let _2 : 'tv_eexpr = Obj.magic _2 in
28686 let _1 : (
28687 # 122 "parser_cocci_menhir.mly"
28688 (Data.clt)
28689 # 28663 "parser_cocci_menhir.ml"
28690 ) = Obj.magic _1 in
28691 let _startpos = _startpos__1_ in
28692 let _endpos = _endpos__3_ in
28693 let _v : 'tv_primary_expr_expr_invalid_ =
28694 # 1729 "parser_cocci_menhir.mly"
28695 ( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
28696 P.clt2mcode ")" _3)) )
28697 # 28671 "parser_cocci_menhir.ml"
28698 in
28699 _menhir_env.MenhirLib.EngineTypes.stack <- {
28700 MenhirLib.EngineTypes.state = _menhir_s;
28701 MenhirLib.EngineTypes.semv = Obj.repr _v;
28702 MenhirLib.EngineTypes.startp = _startpos;
28703 MenhirLib.EngineTypes.endp = _endpos;
28704 MenhirLib.EngineTypes.next = _menhir_stack;
28705 });
28706 (fun _menhir_env ->
28707 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28708 let {
28709 MenhirLib.EngineTypes.semv = _3;
28710 MenhirLib.EngineTypes.startp = _startpos__3_;
28711 MenhirLib.EngineTypes.endp = _endpos__3_;
28712 MenhirLib.EngineTypes.next = {
28713 MenhirLib.EngineTypes.semv = _2;
28714 MenhirLib.EngineTypes.startp = _startpos__2_;
28715 MenhirLib.EngineTypes.endp = _endpos__2_;
28716 MenhirLib.EngineTypes.next = {
28717 MenhirLib.EngineTypes.state = _menhir_s;
28718 MenhirLib.EngineTypes.semv = _1;
28719 MenhirLib.EngineTypes.startp = _startpos__1_;
28720 MenhirLib.EngineTypes.endp = _endpos__1_;
28721 MenhirLib.EngineTypes.next = _menhir_stack;
28722 };
28723 };
28724 } = _menhir_stack in
28725 let _3 : (
28726 # 123 "parser_cocci_menhir.mly"
28727 (Data.clt)
28728 # 28702 "parser_cocci_menhir.ml"
28729 ) = Obj.magic _3 in
28730 let _2 : 'tv_midzero_list_expr_eexpr_ = Obj.magic _2 in
28731 let _1 : (
28732 # 122 "parser_cocci_menhir.mly"
28733 (Data.clt)
28734 # 28708 "parser_cocci_menhir.ml"
28735 ) = Obj.magic _1 in
28736 let _startpos = _startpos__1_ in
28737 let _endpos = _endpos__3_ in
28738 let _v : 'tv_primary_expr_expr_invalid_ =
28739 # 1732 "parser_cocci_menhir.mly"
28740 ( let (mids,code) = _2 in
28741 Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
28742 code, mids,
28743 P.clt2mcode ")" _3)) )
28744 # 28718 "parser_cocci_menhir.ml"
28745 in
28746 _menhir_env.MenhirLib.EngineTypes.stack <- {
28747 MenhirLib.EngineTypes.state = _menhir_s;
28748 MenhirLib.EngineTypes.semv = Obj.repr _v;
28749 MenhirLib.EngineTypes.startp = _startpos;
28750 MenhirLib.EngineTypes.endp = _endpos;
28751 MenhirLib.EngineTypes.next = _menhir_stack;
28752 });
28753 (fun _menhir_env ->
28754 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28755 let {
28756 MenhirLib.EngineTypes.state = _menhir_s;
28757 MenhirLib.EngineTypes.semv = _1;
28758 MenhirLib.EngineTypes.startp = _startpos__1_;
28759 MenhirLib.EngineTypes.endp = _endpos__1_;
28760 MenhirLib.EngineTypes.next = _menhir_stack;
28761 } = _menhir_stack in
28762 let _1 : 'tv_invalid = Obj.magic _1 in
28763 let _startpos = _startpos__1_ in
28764 let _endpos = _endpos__1_ in
28765 let _v : 'tv_primary_expr_expr_invalid_ =
28766 # 1736 "parser_cocci_menhir.mly"
28767 ( _1 )
28768 # 28742 "parser_cocci_menhir.ml"
28769 in
28770 _menhir_env.MenhirLib.EngineTypes.stack <- {
28771 MenhirLib.EngineTypes.state = _menhir_s;
28772 MenhirLib.EngineTypes.semv = Obj.repr _v;
28773 MenhirLib.EngineTypes.startp = _startpos;
28774 MenhirLib.EngineTypes.endp = _endpos;
28775 MenhirLib.EngineTypes.next = _menhir_stack;
28776 });
28777 (fun _menhir_env ->
28778 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28779 let {
28780 MenhirLib.EngineTypes.state = _menhir_s;
28781 MenhirLib.EngineTypes.startp = _startpos__1_;
28782 MenhirLib.EngineTypes.endp = _endpos__1_;
28783 MenhirLib.EngineTypes.next = _menhir_stack;
28784 } = _menhir_stack in
28785 let _startpos = _startpos__1_ in
28786 let _endpos = _endpos__1_ in
28787 let _v : 'tv_pure =
28788 # 238 "parser_cocci_menhir.mly"
28789 ( Ast0.Pure )
28790 # 28764 "parser_cocci_menhir.ml"
28791 in
28792 _menhir_env.MenhirLib.EngineTypes.stack <- {
28793 MenhirLib.EngineTypes.state = _menhir_s;
28794 MenhirLib.EngineTypes.semv = Obj.repr _v;
28795 MenhirLib.EngineTypes.startp = _startpos;
28796 MenhirLib.EngineTypes.endp = _endpos;
28797 MenhirLib.EngineTypes.next = _menhir_stack;
28798 });
28799 (fun _menhir_env ->
28800 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28801 let {
28802 MenhirLib.EngineTypes.state = _menhir_s;
28803 MenhirLib.EngineTypes.startp = _startpos__1_;
28804 MenhirLib.EngineTypes.endp = _endpos__1_;
28805 MenhirLib.EngineTypes.next = _menhir_stack;
28806 } = _menhir_stack in
28807 let _startpos = _startpos__1_ in
28808 let _endpos = _endpos__1_ in
28809 let _v : 'tv_pure =
28810 # 239 "parser_cocci_menhir.mly"
28811 ( Ast0.Context )
28812 # 28786 "parser_cocci_menhir.ml"
28813 in
28814 _menhir_env.MenhirLib.EngineTypes.stack <- {
28815 MenhirLib.EngineTypes.state = _menhir_s;
28816 MenhirLib.EngineTypes.semv = Obj.repr _v;
28817 MenhirLib.EngineTypes.startp = _startpos;
28818 MenhirLib.EngineTypes.endp = _endpos;
28819 MenhirLib.EngineTypes.next = _menhir_stack;
28820 });
28821 (fun _menhir_env ->
28822 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28823 let {
28824 MenhirLib.EngineTypes.startp = _startpos__2_;
28825 MenhirLib.EngineTypes.endp = _endpos__2_;
28826 MenhirLib.EngineTypes.next = {
28827 MenhirLib.EngineTypes.state = _menhir_s;
28828 MenhirLib.EngineTypes.startp = _startpos__1_;
28829 MenhirLib.EngineTypes.endp = _endpos__1_;
28830 MenhirLib.EngineTypes.next = _menhir_stack;
28831 };
28832 } = _menhir_stack in
28833 let _startpos = _startpos__1_ in
28834 let _endpos = _endpos__2_ in
28835 let _v : 'tv_pure =
28836 # 240 "parser_cocci_menhir.mly"
28837 ( Ast0.PureContext )
28838 # 28812 "parser_cocci_menhir.ml"
28839 in
28840 _menhir_env.MenhirLib.EngineTypes.stack <- {
28841 MenhirLib.EngineTypes.state = _menhir_s;
28842 MenhirLib.EngineTypes.semv = Obj.repr _v;
28843 MenhirLib.EngineTypes.startp = _startpos;
28844 MenhirLib.EngineTypes.endp = _endpos;
28845 MenhirLib.EngineTypes.next = _menhir_stack;
28846 });
28847 (fun _menhir_env ->
28848 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28849 let {
28850 MenhirLib.EngineTypes.startp = _startpos__2_;
28851 MenhirLib.EngineTypes.endp = _endpos__2_;
28852 MenhirLib.EngineTypes.next = {
28853 MenhirLib.EngineTypes.state = _menhir_s;
28854 MenhirLib.EngineTypes.startp = _startpos__1_;
28855 MenhirLib.EngineTypes.endp = _endpos__1_;
28856 MenhirLib.EngineTypes.next = _menhir_stack;
28857 };
28858 } = _menhir_stack in
28859 let _startpos = _startpos__1_ in
28860 let _endpos = _endpos__2_ in
28861 let _v : 'tv_pure =
28862 # 241 "parser_cocci_menhir.mly"
28863 ( Ast0.PureContext )
28864 # 28838 "parser_cocci_menhir.ml"
28865 in
28866 _menhir_env.MenhirLib.EngineTypes.stack <- {
28867 MenhirLib.EngineTypes.state = _menhir_s;
28868 MenhirLib.EngineTypes.semv = Obj.repr _v;
28869 MenhirLib.EngineTypes.startp = _startpos;
28870 MenhirLib.EngineTypes.endp = _endpos;
28871 MenhirLib.EngineTypes.next = _menhir_stack;
28872 });
28873 (fun _menhir_env ->
28874 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28875 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
28876 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
28877 let _endpos = _startpos in
28878 let _v : 'tv_pure =
28879 # 242 "parser_cocci_menhir.mly"
28880 ( Ast0.Impure )
28881 # 28855 "parser_cocci_menhir.ml"
28882 in
28883 _menhir_env.MenhirLib.EngineTypes.stack <- {
28884 MenhirLib.EngineTypes.state = _menhir_s;
28885 MenhirLib.EngineTypes.semv = Obj.repr _v;
28886 MenhirLib.EngineTypes.startp = _startpos;
28887 MenhirLib.EngineTypes.endp = _endpos;
28888 MenhirLib.EngineTypes.next = _menhir_stack;
28889 });
28890 (fun _menhir_env ->
28891 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28892 let {
28893 MenhirLib.EngineTypes.state = _menhir_s;
28894 MenhirLib.EngineTypes.semv = _1;
28895 MenhirLib.EngineTypes.startp = _startpos__1_;
28896 MenhirLib.EngineTypes.endp = _endpos__1_;
28897 MenhirLib.EngineTypes.next = _menhir_stack;
28898 } = _menhir_stack in
28899 let _1 : (
28900 # 101 "parser_cocci_menhir.mly"
28901 (string * Data.clt)
28902 # 28876 "parser_cocci_menhir.ml"
28903 ) = Obj.magic _1 in
28904 let _startpos = _startpos__1_ in
28905 let _endpos = _endpos__1_ in
28906 let _v : 'tv_pure_ident =
28907 # 1750 "parser_cocci_menhir.mly"
28908 ( _1 )
28909 # 28883 "parser_cocci_menhir.ml"
28910 in
28911 _menhir_env.MenhirLib.EngineTypes.stack <- {
28912 MenhirLib.EngineTypes.state = _menhir_s;
28913 MenhirLib.EngineTypes.semv = Obj.repr _v;
28914 MenhirLib.EngineTypes.startp = _startpos;
28915 MenhirLib.EngineTypes.endp = _endpos;
28916 MenhirLib.EngineTypes.next = _menhir_stack;
28917 });
28918 (fun _menhir_env ->
28919 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28920 let {
28921 MenhirLib.EngineTypes.state = _menhir_s;
28922 MenhirLib.EngineTypes.startp = _startpos__1_;
28923 MenhirLib.EngineTypes.endp = _endpos__1_;
28924 MenhirLib.EngineTypes.next = _menhir_stack;
28925 } = _menhir_stack in
28926 let _startpos = _startpos__1_ in
28927 let _endpos = _endpos__1_ in
28928 let _v : 'tv_pure_ident_kwd =
28929 # 1757 "parser_cocci_menhir.mly"
28930 ( "identifier" )
28931 # 28905 "parser_cocci_menhir.ml"
28932 in
28933 _menhir_env.MenhirLib.EngineTypes.stack <- {
28934 MenhirLib.EngineTypes.state = _menhir_s;
28935 MenhirLib.EngineTypes.semv = Obj.repr _v;
28936 MenhirLib.EngineTypes.startp = _startpos;
28937 MenhirLib.EngineTypes.endp = _endpos;
28938 MenhirLib.EngineTypes.next = _menhir_stack;
28939 });
28940 (fun _menhir_env ->
28941 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28942 let {
28943 MenhirLib.EngineTypes.state = _menhir_s;
28944 MenhirLib.EngineTypes.startp = _startpos__1_;
28945 MenhirLib.EngineTypes.endp = _endpos__1_;
28946 MenhirLib.EngineTypes.next = _menhir_stack;
28947 } = _menhir_stack in
28948 let _startpos = _startpos__1_ in
28949 let _endpos = _endpos__1_ in
28950 let _v : 'tv_pure_ident_kwd =
28951 # 1758 "parser_cocci_menhir.mly"
28952 ( "expression" )
28953 # 28927 "parser_cocci_menhir.ml"
28954 in
28955 _menhir_env.MenhirLib.EngineTypes.stack <- {
28956 MenhirLib.EngineTypes.state = _menhir_s;
28957 MenhirLib.EngineTypes.semv = Obj.repr _v;
28958 MenhirLib.EngineTypes.startp = _startpos;
28959 MenhirLib.EngineTypes.endp = _endpos;
28960 MenhirLib.EngineTypes.next = _menhir_stack;
28961 });
28962 (fun _menhir_env ->
28963 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28964 let {
28965 MenhirLib.EngineTypes.state = _menhir_s;
28966 MenhirLib.EngineTypes.startp = _startpos__1_;
28967 MenhirLib.EngineTypes.endp = _endpos__1_;
28968 MenhirLib.EngineTypes.next = _menhir_stack;
28969 } = _menhir_stack in
28970 let _startpos = _startpos__1_ in
28971 let _endpos = _endpos__1_ in
28972 let _v : 'tv_pure_ident_kwd =
28973 # 1759 "parser_cocci_menhir.mly"
28974 ( "statement" )
28975 # 28949 "parser_cocci_menhir.ml"
28976 in
28977 _menhir_env.MenhirLib.EngineTypes.stack <- {
28978 MenhirLib.EngineTypes.state = _menhir_s;
28979 MenhirLib.EngineTypes.semv = Obj.repr _v;
28980 MenhirLib.EngineTypes.startp = _startpos;
28981 MenhirLib.EngineTypes.endp = _endpos;
28982 MenhirLib.EngineTypes.next = _menhir_stack;
28983 });
28984 (fun _menhir_env ->
28985 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
28986 let {
28987 MenhirLib.EngineTypes.state = _menhir_s;
28988 MenhirLib.EngineTypes.startp = _startpos__1_;
28989 MenhirLib.EngineTypes.endp = _endpos__1_;
28990 MenhirLib.EngineTypes.next = _menhir_stack;
28991 } = _menhir_stack in
28992 let _startpos = _startpos__1_ in
28993 let _endpos = _endpos__1_ in
28994 let _v : 'tv_pure_ident_kwd =
28995 # 1760 "parser_cocci_menhir.mly"
28996 ( "function" )
28997 # 28971 "parser_cocci_menhir.ml"
28998 in
28999 _menhir_env.MenhirLib.EngineTypes.stack <- {
29000 MenhirLib.EngineTypes.state = _menhir_s;
29001 MenhirLib.EngineTypes.semv = Obj.repr _v;
29002 MenhirLib.EngineTypes.startp = _startpos;
29003 MenhirLib.EngineTypes.endp = _endpos;
29004 MenhirLib.EngineTypes.next = _menhir_stack;
29005 });
29006 (fun _menhir_env ->
29007 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29008 let {
29009 MenhirLib.EngineTypes.state = _menhir_s;
29010 MenhirLib.EngineTypes.startp = _startpos__1_;
29011 MenhirLib.EngineTypes.endp = _endpos__1_;
29012 MenhirLib.EngineTypes.next = _menhir_stack;
29013 } = _menhir_stack in
29014 let _startpos = _startpos__1_ in
29015 let _endpos = _endpos__1_ in
29016 let _v : 'tv_pure_ident_kwd =
29017 # 1761 "parser_cocci_menhir.mly"
29018 ( "local" )
29019 # 28993 "parser_cocci_menhir.ml"
29020 in
29021 _menhir_env.MenhirLib.EngineTypes.stack <- {
29022 MenhirLib.EngineTypes.state = _menhir_s;
29023 MenhirLib.EngineTypes.semv = Obj.repr _v;
29024 MenhirLib.EngineTypes.startp = _startpos;
29025 MenhirLib.EngineTypes.endp = _endpos;
29026 MenhirLib.EngineTypes.next = _menhir_stack;
29027 });
29028 (fun _menhir_env ->
29029 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29030 let {
29031 MenhirLib.EngineTypes.state = _menhir_s;
29032 MenhirLib.EngineTypes.startp = _startpos__1_;
29033 MenhirLib.EngineTypes.endp = _endpos__1_;
29034 MenhirLib.EngineTypes.next = _menhir_stack;
29035 } = _menhir_stack in
29036 let _startpos = _startpos__1_ in
29037 let _endpos = _endpos__1_ in
29038 let _v : 'tv_pure_ident_kwd =
29039 # 1762 "parser_cocci_menhir.mly"
29040 ( "type" )
29041 # 29015 "parser_cocci_menhir.ml"
29042 in
29043 _menhir_env.MenhirLib.EngineTypes.stack <- {
29044 MenhirLib.EngineTypes.state = _menhir_s;
29045 MenhirLib.EngineTypes.semv = Obj.repr _v;
29046 MenhirLib.EngineTypes.startp = _startpos;
29047 MenhirLib.EngineTypes.endp = _endpos;
29048 MenhirLib.EngineTypes.next = _menhir_stack;
29049 });
29050 (fun _menhir_env ->
29051 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29052 let {
29053 MenhirLib.EngineTypes.state = _menhir_s;
29054 MenhirLib.EngineTypes.startp = _startpos__1_;
29055 MenhirLib.EngineTypes.endp = _endpos__1_;
29056 MenhirLib.EngineTypes.next = _menhir_stack;
29057 } = _menhir_stack in
29058 let _startpos = _startpos__1_ in
29059 let _endpos = _endpos__1_ in
29060 let _v : 'tv_pure_ident_kwd =
29061 # 1763 "parser_cocci_menhir.mly"
29062 ( "parameter" )
29063 # 29037 "parser_cocci_menhir.ml"
29064 in
29065 _menhir_env.MenhirLib.EngineTypes.stack <- {
29066 MenhirLib.EngineTypes.state = _menhir_s;
29067 MenhirLib.EngineTypes.semv = Obj.repr _v;
29068 MenhirLib.EngineTypes.startp = _startpos;
29069 MenhirLib.EngineTypes.endp = _endpos;
29070 MenhirLib.EngineTypes.next = _menhir_stack;
29071 });
29072 (fun _menhir_env ->
29073 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29074 let {
29075 MenhirLib.EngineTypes.state = _menhir_s;
29076 MenhirLib.EngineTypes.startp = _startpos__1_;
29077 MenhirLib.EngineTypes.endp = _endpos__1_;
29078 MenhirLib.EngineTypes.next = _menhir_stack;
29079 } = _menhir_stack in
29080 let _startpos = _startpos__1_ in
29081 let _endpos = _endpos__1_ in
29082 let _v : 'tv_pure_ident_kwd =
29083 # 1764 "parser_cocci_menhir.mly"
29084 ( "idexpression" )
29085 # 29059 "parser_cocci_menhir.ml"
29086 in
29087 _menhir_env.MenhirLib.EngineTypes.stack <- {
29088 MenhirLib.EngineTypes.state = _menhir_s;
29089 MenhirLib.EngineTypes.semv = Obj.repr _v;
29090 MenhirLib.EngineTypes.startp = _startpos;
29091 MenhirLib.EngineTypes.endp = _endpos;
29092 MenhirLib.EngineTypes.next = _menhir_stack;
29093 });
29094 (fun _menhir_env ->
29095 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29096 let {
29097 MenhirLib.EngineTypes.state = _menhir_s;
29098 MenhirLib.EngineTypes.startp = _startpos__1_;
29099 MenhirLib.EngineTypes.endp = _endpos__1_;
29100 MenhirLib.EngineTypes.next = _menhir_stack;
29101 } = _menhir_stack in
29102 let _startpos = _startpos__1_ in
29103 let _endpos = _endpos__1_ in
29104 let _v : 'tv_pure_ident_kwd =
29105 # 1765 "parser_cocci_menhir.mly"
29106 ( "initialiser" )
29107 # 29081 "parser_cocci_menhir.ml"
29108 in
29109 _menhir_env.MenhirLib.EngineTypes.stack <- {
29110 MenhirLib.EngineTypes.state = _menhir_s;
29111 MenhirLib.EngineTypes.semv = Obj.repr _v;
29112 MenhirLib.EngineTypes.startp = _startpos;
29113 MenhirLib.EngineTypes.endp = _endpos;
29114 MenhirLib.EngineTypes.next = _menhir_stack;
29115 });
29116 (fun _menhir_env ->
29117 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29118 let {
29119 MenhirLib.EngineTypes.state = _menhir_s;
29120 MenhirLib.EngineTypes.startp = _startpos__1_;
29121 MenhirLib.EngineTypes.endp = _endpos__1_;
29122 MenhirLib.EngineTypes.next = _menhir_stack;
29123 } = _menhir_stack in
29124 let _startpos = _startpos__1_ in
29125 let _endpos = _endpos__1_ in
29126 let _v : 'tv_pure_ident_kwd =
29127 # 1766 "parser_cocci_menhir.mly"
29128 ( "list" )
29129 # 29103 "parser_cocci_menhir.ml"
29130 in
29131 _menhir_env.MenhirLib.EngineTypes.stack <- {
29132 MenhirLib.EngineTypes.state = _menhir_s;
29133 MenhirLib.EngineTypes.semv = Obj.repr _v;
29134 MenhirLib.EngineTypes.startp = _startpos;
29135 MenhirLib.EngineTypes.endp = _endpos;
29136 MenhirLib.EngineTypes.next = _menhir_stack;
29137 });
29138 (fun _menhir_env ->
29139 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29140 let {
29141 MenhirLib.EngineTypes.state = _menhir_s;
29142 MenhirLib.EngineTypes.startp = _startpos__1_;
29143 MenhirLib.EngineTypes.endp = _endpos__1_;
29144 MenhirLib.EngineTypes.next = _menhir_stack;
29145 } = _menhir_stack in
29146 let _startpos = _startpos__1_ in
29147 let _endpos = _endpos__1_ in
29148 let _v : 'tv_pure_ident_kwd =
29149 # 1767 "parser_cocci_menhir.mly"
29150 ( "fresh" )
29151 # 29125 "parser_cocci_menhir.ml"
29152 in
29153 _menhir_env.MenhirLib.EngineTypes.stack <- {
29154 MenhirLib.EngineTypes.state = _menhir_s;
29155 MenhirLib.EngineTypes.semv = Obj.repr _v;
29156 MenhirLib.EngineTypes.startp = _startpos;
29157 MenhirLib.EngineTypes.endp = _endpos;
29158 MenhirLib.EngineTypes.next = _menhir_stack;
29159 });
29160 (fun _menhir_env ->
29161 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29162 let {
29163 MenhirLib.EngineTypes.state = _menhir_s;
29164 MenhirLib.EngineTypes.startp = _startpos__1_;
29165 MenhirLib.EngineTypes.endp = _endpos__1_;
29166 MenhirLib.EngineTypes.next = _menhir_stack;
29167 } = _menhir_stack in
29168 let _startpos = _startpos__1_ in
29169 let _endpos = _endpos__1_ in
29170 let _v : 'tv_pure_ident_kwd =
29171 # 1768 "parser_cocci_menhir.mly"
29172 ( "constant" )
29173 # 29147 "parser_cocci_menhir.ml"
29174 in
29175 _menhir_env.MenhirLib.EngineTypes.stack <- {
29176 MenhirLib.EngineTypes.state = _menhir_s;
29177 MenhirLib.EngineTypes.semv = Obj.repr _v;
29178 MenhirLib.EngineTypes.startp = _startpos;
29179 MenhirLib.EngineTypes.endp = _endpos;
29180 MenhirLib.EngineTypes.next = _menhir_stack;
29181 });
29182 (fun _menhir_env ->
29183 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29184 let {
29185 MenhirLib.EngineTypes.state = _menhir_s;
29186 MenhirLib.EngineTypes.startp = _startpos__1_;
29187 MenhirLib.EngineTypes.endp = _endpos__1_;
29188 MenhirLib.EngineTypes.next = _menhir_stack;
29189 } = _menhir_stack in
29190 let _startpos = _startpos__1_ in
29191 let _endpos = _endpos__1_ in
29192 let _v : 'tv_pure_ident_kwd =
29193 # 1769 "parser_cocci_menhir.mly"
29194 ( "error" )
29195 # 29169 "parser_cocci_menhir.ml"
29196 in
29197 _menhir_env.MenhirLib.EngineTypes.stack <- {
29198 MenhirLib.EngineTypes.state = _menhir_s;
29199 MenhirLib.EngineTypes.semv = Obj.repr _v;
29200 MenhirLib.EngineTypes.startp = _startpos;
29201 MenhirLib.EngineTypes.endp = _endpos;
29202 MenhirLib.EngineTypes.next = _menhir_stack;
29203 });
29204 (fun _menhir_env ->
29205 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29206 let {
29207 MenhirLib.EngineTypes.state = _menhir_s;
29208 MenhirLib.EngineTypes.startp = _startpos__1_;
29209 MenhirLib.EngineTypes.endp = _endpos__1_;
29210 MenhirLib.EngineTypes.next = _menhir_stack;
29211 } = _menhir_stack in
29212 let _startpos = _startpos__1_ in
29213 let _endpos = _endpos__1_ in
29214 let _v : 'tv_pure_ident_kwd =
29215 # 1770 "parser_cocci_menhir.mly"
29216 ( "words" )
29217 # 29191 "parser_cocci_menhir.ml"
29218 in
29219 _menhir_env.MenhirLib.EngineTypes.stack <- {
29220 MenhirLib.EngineTypes.state = _menhir_s;
29221 MenhirLib.EngineTypes.semv = Obj.repr _v;
29222 MenhirLib.EngineTypes.startp = _startpos;
29223 MenhirLib.EngineTypes.endp = _endpos;
29224 MenhirLib.EngineTypes.next = _menhir_stack;
29225 });
29226 (fun _menhir_env ->
29227 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29228 let {
29229 MenhirLib.EngineTypes.state = _menhir_s;
29230 MenhirLib.EngineTypes.startp = _startpos__1_;
29231 MenhirLib.EngineTypes.endp = _endpos__1_;
29232 MenhirLib.EngineTypes.next = _menhir_stack;
29233 } = _menhir_stack in
29234 let _startpos = _startpos__1_ in
29235 let _endpos = _endpos__1_ in
29236 let _v : 'tv_pure_ident_kwd =
29237 # 1771 "parser_cocci_menhir.mly"
29238 ( "pure" )
29239 # 29213 "parser_cocci_menhir.ml"
29240 in
29241 _menhir_env.MenhirLib.EngineTypes.stack <- {
29242 MenhirLib.EngineTypes.state = _menhir_s;
29243 MenhirLib.EngineTypes.semv = Obj.repr _v;
29244 MenhirLib.EngineTypes.startp = _startpos;
29245 MenhirLib.EngineTypes.endp = _endpos;
29246 MenhirLib.EngineTypes.next = _menhir_stack;
29247 });
29248 (fun _menhir_env ->
29249 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29250 let {
29251 MenhirLib.EngineTypes.state = _menhir_s;
29252 MenhirLib.EngineTypes.startp = _startpos__1_;
29253 MenhirLib.EngineTypes.endp = _endpos__1_;
29254 MenhirLib.EngineTypes.next = _menhir_stack;
29255 } = _menhir_stack in
29256 let _startpos = _startpos__1_ in
29257 let _endpos = _endpos__1_ in
29258 let _v : 'tv_pure_ident_kwd =
29259 # 1772 "parser_cocci_menhir.mly"
29260 ( "context" )
29261 # 29235 "parser_cocci_menhir.ml"
29262 in
29263 _menhir_env.MenhirLib.EngineTypes.stack <- {
29264 MenhirLib.EngineTypes.state = _menhir_s;
29265 MenhirLib.EngineTypes.semv = Obj.repr _v;
29266 MenhirLib.EngineTypes.startp = _startpos;
29267 MenhirLib.EngineTypes.endp = _endpos;
29268 MenhirLib.EngineTypes.next = _menhir_stack;
29269 });
29270 (fun _menhir_env ->
29271 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29272 let {
29273 MenhirLib.EngineTypes.state = _menhir_s;
29274 MenhirLib.EngineTypes.startp = _startpos__1_;
29275 MenhirLib.EngineTypes.endp = _endpos__1_;
29276 MenhirLib.EngineTypes.next = _menhir_stack;
29277 } = _menhir_stack in
29278 let _startpos = _startpos__1_ in
29279 let _endpos = _endpos__1_ in
29280 let _v : 'tv_pure_ident_kwd =
29281 # 1773 "parser_cocci_menhir.mly"
29282 ( "generated" )
29283 # 29257 "parser_cocci_menhir.ml"
29284 in
29285 _menhir_env.MenhirLib.EngineTypes.stack <- {
29286 MenhirLib.EngineTypes.state = _menhir_s;
29287 MenhirLib.EngineTypes.semv = Obj.repr _v;
29288 MenhirLib.EngineTypes.startp = _startpos;
29289 MenhirLib.EngineTypes.endp = _endpos;
29290 MenhirLib.EngineTypes.next = _menhir_stack;
29291 });
29292 (fun _menhir_env ->
29293 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29294 let {
29295 MenhirLib.EngineTypes.state = _menhir_s;
29296 MenhirLib.EngineTypes.startp = _startpos__1_;
29297 MenhirLib.EngineTypes.endp = _endpos__1_;
29298 MenhirLib.EngineTypes.next = _menhir_stack;
29299 } = _menhir_stack in
29300 let _startpos = _startpos__1_ in
29301 let _endpos = _endpos__1_ in
29302 let _v : 'tv_pure_ident_kwd =
29303 # 1774 "parser_cocci_menhir.mly"
29304 ( "typedef" )
29305 # 29279 "parser_cocci_menhir.ml"
29306 in
29307 _menhir_env.MenhirLib.EngineTypes.stack <- {
29308 MenhirLib.EngineTypes.state = _menhir_s;
29309 MenhirLib.EngineTypes.semv = Obj.repr _v;
29310 MenhirLib.EngineTypes.startp = _startpos;
29311 MenhirLib.EngineTypes.endp = _endpos;
29312 MenhirLib.EngineTypes.next = _menhir_stack;
29313 });
29314 (fun _menhir_env ->
29315 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29316 let {
29317 MenhirLib.EngineTypes.state = _menhir_s;
29318 MenhirLib.EngineTypes.startp = _startpos__1_;
29319 MenhirLib.EngineTypes.endp = _endpos__1_;
29320 MenhirLib.EngineTypes.next = _menhir_stack;
29321 } = _menhir_stack in
29322 let _startpos = _startpos__1_ in
29323 let _endpos = _endpos__1_ in
29324 let _v : 'tv_pure_ident_kwd =
29325 # 1775 "parser_cocci_menhir.mly"
29326 ( "declarer" )
29327 # 29301 "parser_cocci_menhir.ml"
29328 in
29329 _menhir_env.MenhirLib.EngineTypes.stack <- {
29330 MenhirLib.EngineTypes.state = _menhir_s;
29331 MenhirLib.EngineTypes.semv = Obj.repr _v;
29332 MenhirLib.EngineTypes.startp = _startpos;
29333 MenhirLib.EngineTypes.endp = _endpos;
29334 MenhirLib.EngineTypes.next = _menhir_stack;
29335 });
29336 (fun _menhir_env ->
29337 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29338 let {
29339 MenhirLib.EngineTypes.state = _menhir_s;
29340 MenhirLib.EngineTypes.startp = _startpos__1_;
29341 MenhirLib.EngineTypes.endp = _endpos__1_;
29342 MenhirLib.EngineTypes.next = _menhir_stack;
29343 } = _menhir_stack in
29344 let _startpos = _startpos__1_ in
29345 let _endpos = _endpos__1_ in
29346 let _v : 'tv_pure_ident_kwd =
29347 # 1776 "parser_cocci_menhir.mly"
29348 ( "iterator" )
29349 # 29323 "parser_cocci_menhir.ml"
29350 in
29351 _menhir_env.MenhirLib.EngineTypes.stack <- {
29352 MenhirLib.EngineTypes.state = _menhir_s;
29353 MenhirLib.EngineTypes.semv = Obj.repr _v;
29354 MenhirLib.EngineTypes.startp = _startpos;
29355 MenhirLib.EngineTypes.endp = _endpos;
29356 MenhirLib.EngineTypes.next = _menhir_stack;
29357 });
29358 (fun _menhir_env ->
29359 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29360 let {
29361 MenhirLib.EngineTypes.state = _menhir_s;
29362 MenhirLib.EngineTypes.startp = _startpos__1_;
29363 MenhirLib.EngineTypes.endp = _endpos__1_;
29364 MenhirLib.EngineTypes.next = _menhir_stack;
29365 } = _menhir_stack in
29366 let _startpos = _startpos__1_ in
29367 let _endpos = _endpos__1_ in
29368 let _v : 'tv_pure_ident_kwd =
29369 # 1777 "parser_cocci_menhir.mly"
29370 ( "name" )
29371 # 29345 "parser_cocci_menhir.ml"
29372 in
29373 _menhir_env.MenhirLib.EngineTypes.stack <- {
29374 MenhirLib.EngineTypes.state = _menhir_s;
29375 MenhirLib.EngineTypes.semv = Obj.repr _v;
29376 MenhirLib.EngineTypes.startp = _startpos;
29377 MenhirLib.EngineTypes.endp = _endpos;
29378 MenhirLib.EngineTypes.next = _menhir_stack;
29379 });
29380 (fun _menhir_env ->
29381 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29382 let {
29383 MenhirLib.EngineTypes.state = _menhir_s;
29384 MenhirLib.EngineTypes.startp = _startpos__1_;
29385 MenhirLib.EngineTypes.endp = _endpos__1_;
29386 MenhirLib.EngineTypes.next = _menhir_stack;
29387 } = _menhir_stack in
29388 let _startpos = _startpos__1_ in
29389 let _endpos = _endpos__1_ in
29390 let _v : 'tv_pure_ident_kwd =
29391 # 1778 "parser_cocci_menhir.mly"
29392 ( "position" )
29393 # 29367 "parser_cocci_menhir.ml"
29394 in
29395 _menhir_env.MenhirLib.EngineTypes.stack <- {
29396 MenhirLib.EngineTypes.state = _menhir_s;
29397 MenhirLib.EngineTypes.semv = Obj.repr _v;
29398 MenhirLib.EngineTypes.startp = _startpos;
29399 MenhirLib.EngineTypes.endp = _endpos;
29400 MenhirLib.EngineTypes.next = _menhir_stack;
29401 });
29402 (fun _menhir_env ->
29403 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29404 let {
29405 MenhirLib.EngineTypes.state = _menhir_s;
29406 MenhirLib.EngineTypes.startp = _startpos__1_;
29407 MenhirLib.EngineTypes.endp = _endpos__1_;
29408 MenhirLib.EngineTypes.next = _menhir_stack;
29409 } = _menhir_stack in
29410 let _startpos = _startpos__1_ in
29411 let _endpos = _endpos__1_ in
29412 let _v : 'tv_pure_ident_kwd =
29413 # 1779 "parser_cocci_menhir.mly"
29414 ( "symbol" )
29415 # 29389 "parser_cocci_menhir.ml"
29416 in
29417 _menhir_env.MenhirLib.EngineTypes.stack <- {
29418 MenhirLib.EngineTypes.state = _menhir_s;
29419 MenhirLib.EngineTypes.semv = Obj.repr _v;
29420 MenhirLib.EngineTypes.startp = _startpos;
29421 MenhirLib.EngineTypes.endp = _endpos;
29422 MenhirLib.EngineTypes.next = _menhir_stack;
29423 });
29424 (fun _menhir_env ->
29425 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29426 let {
29427 MenhirLib.EngineTypes.state = _menhir_s;
29428 MenhirLib.EngineTypes.semv = _1;
29429 MenhirLib.EngineTypes.startp = _startpos__1_;
29430 MenhirLib.EngineTypes.endp = _endpos__1_;
29431 MenhirLib.EngineTypes.next = _menhir_stack;
29432 } = _menhir_stack in
29433 let _1 : 'tv_pure_ident = Obj.magic _1 in
29434 let _startpos = _startpos__1_ in
29435 let _endpos = _endpos__1_ in
29436 let _v : 'tv_pure_ident_or_meta_ident =
29437 # 1786 "parser_cocci_menhir.mly"
29438 ( (None,P.id2name _1) )
29439 # 29413 "parser_cocci_menhir.ml"
29440 in
29441 _menhir_env.MenhirLib.EngineTypes.stack <- {
29442 MenhirLib.EngineTypes.state = _menhir_s;
29443 MenhirLib.EngineTypes.semv = Obj.repr _v;
29444 MenhirLib.EngineTypes.startp = _startpos;
29445 MenhirLib.EngineTypes.endp = _endpos;
29446 MenhirLib.EngineTypes.next = _menhir_stack;
29447 });
29448 (fun _menhir_env ->
29449 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29450 let {
29451 MenhirLib.EngineTypes.state = _menhir_s;
29452 MenhirLib.EngineTypes.semv = _1;
29453 MenhirLib.EngineTypes.startp = _startpos__1_;
29454 MenhirLib.EngineTypes.endp = _endpos__1_;
29455 MenhirLib.EngineTypes.next = _menhir_stack;
29456 } = _menhir_stack in
29457 let _1 : 'tv_pure_ident_kwd = Obj.magic _1 in
29458 let _startpos = _startpos__1_ in
29459 let _endpos = _endpos__1_ in
29460 let _v : 'tv_pure_ident_or_meta_ident =
29461 # 1787 "parser_cocci_menhir.mly"
29462 ( (None,_1) )
29463 # 29437 "parser_cocci_menhir.ml"
29464 in
29465 _menhir_env.MenhirLib.EngineTypes.stack <- {
29466 MenhirLib.EngineTypes.state = _menhir_s;
29467 MenhirLib.EngineTypes.semv = Obj.repr _v;
29468 MenhirLib.EngineTypes.startp = _startpos;
29469 MenhirLib.EngineTypes.endp = _endpos;
29470 MenhirLib.EngineTypes.next = _menhir_stack;
29471 });
29472 (fun _menhir_env ->
29473 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29474 let {
29475 MenhirLib.EngineTypes.state = _menhir_s;
29476 MenhirLib.EngineTypes.semv = _1;
29477 MenhirLib.EngineTypes.startp = _startpos__1_;
29478 MenhirLib.EngineTypes.endp = _endpos__1_;
29479 MenhirLib.EngineTypes.next = _menhir_stack;
29480 } = _menhir_stack in
29481 let _1 : 'tv_meta_ident = Obj.magic _1 in
29482 let _startpos = _startpos__1_ in
29483 let _endpos = _endpos__1_ in
29484 let _v : 'tv_pure_ident_or_meta_ident =
29485 # 1788 "parser_cocci_menhir.mly"
29486 ( _1 )
29487 # 29461 "parser_cocci_menhir.ml"
29488 in
29489 _menhir_env.MenhirLib.EngineTypes.stack <- {
29490 MenhirLib.EngineTypes.state = _menhir_s;
29491 MenhirLib.EngineTypes.semv = Obj.repr _v;
29492 MenhirLib.EngineTypes.startp = _startpos;
29493 MenhirLib.EngineTypes.endp = _endpos;
29494 MenhirLib.EngineTypes.next = _menhir_stack;
29495 });
29496 (fun _menhir_env ->
29497 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29498 let {
29499 MenhirLib.EngineTypes.semv = optc;
29500 MenhirLib.EngineTypes.startp = _startpos_optc_;
29501 MenhirLib.EngineTypes.endp = _endpos_optc_;
29502 MenhirLib.EngineTypes.next = {
29503 MenhirLib.EngineTypes.state = _menhir_s;
29504 MenhirLib.EngineTypes.semv = i;
29505 MenhirLib.EngineTypes.startp = _startpos_i_;
29506 MenhirLib.EngineTypes.endp = _endpos_i_;
29507 MenhirLib.EngineTypes.next = _menhir_stack;
29508 };
29509 } = _menhir_stack in
29510 let optc : 'tv_option_not_ceq_or_sub_ = Obj.magic optc in
29511 let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
29512 let _startpos = _startpos_i_ in
29513 let _endpos = _endpos_optc_ in
29514 let _v : 'tv_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub_ =
29515 # 1825 "parser_cocci_menhir.mly"
29516 (
29517 match optc with
29518 None -> (i, Ast0.NoConstraint)
29519 | Some c -> (i, c)
29520 )
29521 # 29495 "parser_cocci_menhir.ml"
29522 in
29523 _menhir_env.MenhirLib.EngineTypes.stack <- {
29524 MenhirLib.EngineTypes.state = _menhir_s;
29525 MenhirLib.EngineTypes.semv = Obj.repr _v;
29526 MenhirLib.EngineTypes.startp = _startpos;
29527 MenhirLib.EngineTypes.endp = _endpos;
29528 MenhirLib.EngineTypes.next = _menhir_stack;
29529 });
29530 (fun _menhir_env ->
29531 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29532 let {
29533 MenhirLib.EngineTypes.semv = optc;
29534 MenhirLib.EngineTypes.startp = _startpos_optc_;
29535 MenhirLib.EngineTypes.endp = _endpos_optc_;
29536 MenhirLib.EngineTypes.next = {
29537 MenhirLib.EngineTypes.state = _menhir_s;
29538 MenhirLib.EngineTypes.semv = i;
29539 MenhirLib.EngineTypes.startp = _startpos_i_;
29540 MenhirLib.EngineTypes.endp = _endpos_i_;
29541 MenhirLib.EngineTypes.next = _menhir_stack;
29542 };
29543 } = _menhir_stack in
29544 let optc : 'tv_option_re_or_not_eqe_or_sub_ = Obj.magic optc in
29545 let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
29546 let _startpos = _startpos_i_ in
29547 let _endpos = _endpos_optc_ in
29548 let _v : 'tv_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub_ =
29549 # 1825 "parser_cocci_menhir.mly"
29550 (
29551 match optc with
29552 None -> (i, Ast0.NoConstraint)
29553 | Some c -> (i, c)
29554 )
29555 # 29529 "parser_cocci_menhir.ml"
29556 in
29557 _menhir_env.MenhirLib.EngineTypes.stack <- {
29558 MenhirLib.EngineTypes.state = _menhir_s;
29559 MenhirLib.EngineTypes.semv = Obj.repr _v;
29560 MenhirLib.EngineTypes.startp = _startpos;
29561 MenhirLib.EngineTypes.endp = _endpos;
29562 MenhirLib.EngineTypes.next = _menhir_stack;
29563 });
29564 (fun _menhir_env ->
29565 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29566 let {
29567 MenhirLib.EngineTypes.semv = c;
29568 MenhirLib.EngineTypes.startp = _startpos_c_;
29569 MenhirLib.EngineTypes.endp = _endpos_c_;
29570 MenhirLib.EngineTypes.next = {
29571 MenhirLib.EngineTypes.state = _menhir_s;
29572 MenhirLib.EngineTypes.semv = i;
29573 MenhirLib.EngineTypes.startp = _startpos_i_;
29574 MenhirLib.EngineTypes.endp = _endpos_i_;
29575 MenhirLib.EngineTypes.next = _menhir_stack;
29576 };
29577 } = _menhir_stack in
29578 let c : 'tv_option_re_or_not_eqid_ = Obj.magic c in
29579 let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
29580 let _startpos = _startpos_i_ in
29581 let _endpos = _endpos_c_ in
29582 let _v : 'tv_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid_ =
29583 # 1850 "parser_cocci_menhir.mly"
29584 (
29585 match c with
29586 None -> (i, Ast.IdNoConstraint)
29587 | Some constraint_ -> (i,constraint_)
29588 )
29589 # 29563 "parser_cocci_menhir.ml"
29590 in
29591 _menhir_env.MenhirLib.EngineTypes.stack <- {
29592 MenhirLib.EngineTypes.state = _menhir_s;
29593 MenhirLib.EngineTypes.semv = Obj.repr _v;
29594 MenhirLib.EngineTypes.startp = _startpos;
29595 MenhirLib.EngineTypes.endp = _endpos;
29596 MenhirLib.EngineTypes.next = _menhir_stack;
29597 });
29598 (fun _menhir_env ->
29599 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29600 let {
29601 MenhirLib.EngineTypes.semv = c;
29602 MenhirLib.EngineTypes.startp = _startpos_c_;
29603 MenhirLib.EngineTypes.endp = _endpos_c_;
29604 MenhirLib.EngineTypes.next = {
29605 MenhirLib.EngineTypes.state = _menhir_s;
29606 MenhirLib.EngineTypes.semv = i;
29607 MenhirLib.EngineTypes.startp = _startpos_i_;
29608 MenhirLib.EngineTypes.endp = _endpos_i_;
29609 MenhirLib.EngineTypes.next = _menhir_stack;
29610 };
29611 } = _menhir_stack in
29612 let c : 'tv_option_re_or_not_eqid_ = Obj.magic c in
29613 let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
29614 let _startpos = _startpos_i_ in
29615 let _endpos = _endpos_c_ in
29616 let _v : 'tv_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid_ =
29617 # 1833 "parser_cocci_menhir.mly"
29618 (
29619 Common.Left
29620 (match c with
29621 None -> (i, Ast.IdNoConstraint)
29622 | Some constraint_ -> (i,constraint_))
29623 )
29624 # 29598 "parser_cocci_menhir.ml"
29625 in
29626 _menhir_env.MenhirLib.EngineTypes.stack <- {
29627 MenhirLib.EngineTypes.state = _menhir_s;
29628 MenhirLib.EngineTypes.semv = Obj.repr _v;
29629 MenhirLib.EngineTypes.startp = _startpos;
29630 MenhirLib.EngineTypes.endp = _endpos;
29631 MenhirLib.EngineTypes.next = _menhir_stack;
29632 });
29633 (fun _menhir_env ->
29634 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29635 let {
29636 MenhirLib.EngineTypes.semv = _3;
29637 MenhirLib.EngineTypes.startp = _startpos__3_;
29638 MenhirLib.EngineTypes.endp = _endpos__3_;
29639 MenhirLib.EngineTypes.next = {
29640 MenhirLib.EngineTypes.startp = _startpos__2_;
29641 MenhirLib.EngineTypes.endp = _endpos__2_;
29642 MenhirLib.EngineTypes.next = {
29643 MenhirLib.EngineTypes.state = _menhir_s;
29644 MenhirLib.EngineTypes.startp = _startpos__1_;
29645 MenhirLib.EngineTypes.endp = _endpos__1_;
29646 MenhirLib.EngineTypes.next = _menhir_stack;
29647 };
29648 };
29649 } = _menhir_stack in
29650 let _3 : 'tv_pure_ident = Obj.magic _3 in
29651 let _startpos = _startpos__1_ in
29652 let _endpos = _endpos__3_ in
29653 let _v : 'tv_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid_ =
29654 # 1840 "parser_cocci_menhir.mly"
29655 (
29656 let nm = P.id2name _3 in
29657 Iteration.parsed_virtual_identifiers :=
29658 Common.union_set [nm]
29659 !Iteration.parsed_virtual_identifiers;
29660 Common.Right nm
29661 )
29662 # 29636 "parser_cocci_menhir.ml"
29663 in
29664 _menhir_env.MenhirLib.EngineTypes.stack <- {
29665 MenhirLib.EngineTypes.state = _menhir_s;
29666 MenhirLib.EngineTypes.semv = Obj.repr _v;
29667 MenhirLib.EngineTypes.startp = _startpos;
29668 MenhirLib.EngineTypes.endp = _endpos;
29669 MenhirLib.EngineTypes.next = _menhir_stack;
29670 });
29671 (fun _menhir_env ->
29672 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29673 let {
29674 MenhirLib.EngineTypes.state = _menhir_s;
29675 MenhirLib.EngineTypes.semv = _1;
29676 MenhirLib.EngineTypes.startp = _startpos__1_;
29677 MenhirLib.EngineTypes.endp = _endpos__1_;
29678 MenhirLib.EngineTypes.next = _menhir_stack;
29679 } = _menhir_stack in
29680 let _1 : 'tv_pure_ident_or_meta_ident = Obj.magic _1 in
29681 let _startpos = _startpos__1_ in
29682 let _endpos = _endpos__1_ in
29683 let _v : 'tv_pure_ident_or_meta_ident_with_seed =
29684 # 1794 "parser_cocci_menhir.mly"
29685 ( (_1,Ast.NoVal) )
29686 # 29660 "parser_cocci_menhir.ml"
29687 in
29688 _menhir_env.MenhirLib.EngineTypes.stack <- {
29689 MenhirLib.EngineTypes.state = _menhir_s;
29690 MenhirLib.EngineTypes.semv = Obj.repr _v;
29691 MenhirLib.EngineTypes.startp = _startpos;
29692 MenhirLib.EngineTypes.endp = _endpos;
29693 MenhirLib.EngineTypes.next = _menhir_stack;
29694 });
29695 (fun _menhir_env ->
29696 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29697 let {
29698 MenhirLib.EngineTypes.semv = _3;
29699 MenhirLib.EngineTypes.startp = _startpos__3_;
29700 MenhirLib.EngineTypes.endp = _endpos__3_;
29701 MenhirLib.EngineTypes.next = {
29702 MenhirLib.EngineTypes.startp = _startpos__2_;
29703 MenhirLib.EngineTypes.endp = _endpos__2_;
29704 MenhirLib.EngineTypes.next = {
29705 MenhirLib.EngineTypes.state = _menhir_s;
29706 MenhirLib.EngineTypes.semv = _1;
29707 MenhirLib.EngineTypes.startp = _startpos__1_;
29708 MenhirLib.EngineTypes.endp = _endpos__1_;
29709 MenhirLib.EngineTypes.next = _menhir_stack;
29710 };
29711 };
29712 } = _menhir_stack in
29713 let _3 : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ = Obj.magic _3 in
29714 let _1 : 'tv_pure_ident_or_meta_ident = Obj.magic _1 in
29715 let _startpos = _startpos__1_ in
29716 let _endpos = _endpos__3_ in
29717 let _v : 'tv_pure_ident_or_meta_ident_with_seed =
29718 # 1797 "parser_cocci_menhir.mly"
29719 ( match _3 with
29720 [Ast.SeedString s] -> (_1,Ast.StringSeed s)
29721 | _ -> (_1,Ast.ListSeed _3) )
29722 # 29696 "parser_cocci_menhir.ml"
29723 in
29724 _menhir_env.MenhirLib.EngineTypes.stack <- {
29725 MenhirLib.EngineTypes.state = _menhir_s;
29726 MenhirLib.EngineTypes.semv = Obj.repr _v;
29727 MenhirLib.EngineTypes.startp = _startpos;
29728 MenhirLib.EngineTypes.endp = _endpos;
29729 MenhirLib.EngineTypes.next = _menhir_stack;
29730 });
29731 (fun _menhir_env ->
29732 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29733 let {
29734 MenhirLib.EngineTypes.semv = l;
29735 MenhirLib.EngineTypes.startp = _startpos_l_;
29736 MenhirLib.EngineTypes.endp = _endpos_l_;
29737 MenhirLib.EngineTypes.next = {
29738 MenhirLib.EngineTypes.state = _menhir_s;
29739 MenhirLib.EngineTypes.semv = i;
29740 MenhirLib.EngineTypes.startp = _startpos_i_;
29741 MenhirLib.EngineTypes.endp = _endpos_i_;
29742 MenhirLib.EngineTypes.next = _menhir_stack;
29743 };
29744 } = _menhir_stack in
29745 let l : 'tv_loption_not_pos_ = Obj.magic l in
29746 let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
29747 let _startpos = _startpos_i_ in
29748 let _endpos = _endpos_l_ in
29749 let _v : 'tv_pure_ident_or_meta_ident_with_x_eq_not_pos_ =
29750 # 1819 "parser_cocci_menhir.mly"
29751 (
29752 (i, l)
29753 )
29754 # 29728 "parser_cocci_menhir.ml"
29755 in
29756 _menhir_env.MenhirLib.EngineTypes.stack <- {
29757 MenhirLib.EngineTypes.state = _menhir_s;
29758 MenhirLib.EngineTypes.semv = Obj.repr _v;
29759 MenhirLib.EngineTypes.startp = _startpos;
29760 MenhirLib.EngineTypes.endp = _endpos;
29761 MenhirLib.EngineTypes.next = _menhir_stack;
29762 });
29763 (fun _menhir_env ->
29764 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29765 let {
29766 MenhirLib.EngineTypes.state = _menhir_s;
29767 MenhirLib.EngineTypes.semv = _1;
29768 MenhirLib.EngineTypes.startp = _startpos__1_;
29769 MenhirLib.EngineTypes.endp = _endpos__1_;
29770 MenhirLib.EngineTypes.next = _menhir_stack;
29771 } = _menhir_stack in
29772 let _1 : 'tv_pure_ident = Obj.magic _1 in
29773 let _startpos = _startpos__1_ in
29774 let _endpos = _endpos__1_ in
29775 let _v : 'tv_pure_ident_or_symbol =
29776 # 1753 "parser_cocci_menhir.mly"
29777 ( _1 )
29778 # 29752 "parser_cocci_menhir.ml"
29779 in
29780 _menhir_env.MenhirLib.EngineTypes.stack <- {
29781 MenhirLib.EngineTypes.state = _menhir_s;
29782 MenhirLib.EngineTypes.semv = Obj.repr _v;
29783 MenhirLib.EngineTypes.startp = _startpos;
29784 MenhirLib.EngineTypes.endp = _endpos;
29785 MenhirLib.EngineTypes.next = _menhir_stack;
29786 });
29787 (fun _menhir_env ->
29788 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29789 let {
29790 MenhirLib.EngineTypes.state = _menhir_s;
29791 MenhirLib.EngineTypes.semv = _1;
29792 MenhirLib.EngineTypes.startp = _startpos__1_;
29793 MenhirLib.EngineTypes.endp = _endpos__1_;
29794 MenhirLib.EngineTypes.next = _menhir_stack;
29795 } = _menhir_stack in
29796 let _1 : (
29797 # 101 "parser_cocci_menhir.mly"
29798 (string * Data.clt)
29799 # 29773 "parser_cocci_menhir.ml"
29800 ) = Obj.magic _1 in
29801 let _startpos = _startpos__1_ in
29802 let _endpos = _endpos__1_ in
29803 let _v : 'tv_pure_ident_or_symbol =
29804 # 1754 "parser_cocci_menhir.mly"
29805 ( _1 )
29806 # 29780 "parser_cocci_menhir.ml"
29807 in
29808 _menhir_env.MenhirLib.EngineTypes.stack <- {
29809 MenhirLib.EngineTypes.state = _menhir_s;
29810 MenhirLib.EngineTypes.semv = Obj.repr _v;
29811 MenhirLib.EngineTypes.startp = _startpos;
29812 MenhirLib.EngineTypes.endp = _endpos;
29813 MenhirLib.EngineTypes.next = _menhir_stack;
29814 });
29815 (fun _menhir_env ->
29816 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29817 let {
29818 MenhirLib.EngineTypes.state = _menhir_s;
29819 MenhirLib.EngineTypes.semv = re;
29820 MenhirLib.EngineTypes.startp = _startpos_re_;
29821 MenhirLib.EngineTypes.endp = _endpos_re_;
29822 MenhirLib.EngineTypes.next = _menhir_stack;
29823 } = _menhir_stack in
29824 let re : 'tv_regexp_eqid = Obj.magic re in
29825 let _startpos = _startpos_re_ in
29826 let _endpos = _endpos_re_ in
29827 let _v : 'tv_re_or_not_eqe_or_sub =
29828 # 1911 "parser_cocci_menhir.mly"
29829 (Ast0.NotIdCstrt re)
29830 # 29804 "parser_cocci_menhir.ml"
29831 in
29832 _menhir_env.MenhirLib.EngineTypes.stack <- {
29833 MenhirLib.EngineTypes.state = _menhir_s;
29834 MenhirLib.EngineTypes.semv = Obj.repr _v;
29835 MenhirLib.EngineTypes.startp = _startpos;
29836 MenhirLib.EngineTypes.endp = _endpos;
29837 MenhirLib.EngineTypes.next = _menhir_stack;
29838 });
29839 (fun _menhir_env ->
29840 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29841 let {
29842 MenhirLib.EngineTypes.state = _menhir_s;
29843 MenhirLib.EngineTypes.semv = ne;
29844 MenhirLib.EngineTypes.startp = _startpos_ne_;
29845 MenhirLib.EngineTypes.endp = _endpos_ne_;
29846 MenhirLib.EngineTypes.next = _menhir_stack;
29847 } = _menhir_stack in
29848 let ne : 'tv_not_eqe = Obj.magic ne in
29849 let _startpos = _startpos_ne_ in
29850 let _endpos = _endpos_ne_ in
29851 let _v : 'tv_re_or_not_eqe_or_sub =
29852 # 1912 "parser_cocci_menhir.mly"
29853 (Ast0.NotExpCstrt ne)
29854 # 29828 "parser_cocci_menhir.ml"
29855 in
29856 _menhir_env.MenhirLib.EngineTypes.stack <- {
29857 MenhirLib.EngineTypes.state = _menhir_s;
29858 MenhirLib.EngineTypes.semv = Obj.repr _v;
29859 MenhirLib.EngineTypes.startp = _startpos;
29860 MenhirLib.EngineTypes.endp = _endpos;
29861 MenhirLib.EngineTypes.next = _menhir_stack;
29862 });
29863 (fun _menhir_env ->
29864 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29865 let {
29866 MenhirLib.EngineTypes.state = _menhir_s;
29867 MenhirLib.EngineTypes.semv = s;
29868 MenhirLib.EngineTypes.startp = _startpos_s_;
29869 MenhirLib.EngineTypes.endp = _endpos_s_;
29870 MenhirLib.EngineTypes.next = _menhir_stack;
29871 } = _menhir_stack in
29872 let s : 'tv_sub = Obj.magic s in
29873 let _startpos = _startpos_s_ in
29874 let _endpos = _endpos_s_ in
29875 let _v : 'tv_re_or_not_eqe_or_sub =
29876 # 1913 "parser_cocci_menhir.mly"
29877 (Ast0.SubExpCstrt s)
29878 # 29852 "parser_cocci_menhir.ml"
29879 in
29880 _menhir_env.MenhirLib.EngineTypes.stack <- {
29881 MenhirLib.EngineTypes.state = _menhir_s;
29882 MenhirLib.EngineTypes.semv = Obj.repr _v;
29883 MenhirLib.EngineTypes.startp = _startpos;
29884 MenhirLib.EngineTypes.endp = _endpos;
29885 MenhirLib.EngineTypes.next = _menhir_stack;
29886 });
29887 (fun _menhir_env ->
29888 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29889 let {
29890 MenhirLib.EngineTypes.state = _menhir_s;
29891 MenhirLib.EngineTypes.semv = re;
29892 MenhirLib.EngineTypes.startp = _startpos_re_;
29893 MenhirLib.EngineTypes.endp = _endpos_re_;
29894 MenhirLib.EngineTypes.next = _menhir_stack;
29895 } = _menhir_stack in
29896 let re : 'tv_regexp_eqid = Obj.magic re in
29897 let _startpos = _startpos_re_ in
29898 let _endpos = _endpos_re_ in
29899 let _v : 'tv_re_or_not_eqid =
29900 # 1857 "parser_cocci_menhir.mly"
29901 (Ast.IdRegExpConstraint re)
29902 # 29876 "parser_cocci_menhir.ml"
29903 in
29904 _menhir_env.MenhirLib.EngineTypes.stack <- {
29905 MenhirLib.EngineTypes.state = _menhir_s;
29906 MenhirLib.EngineTypes.semv = Obj.repr _v;
29907 MenhirLib.EngineTypes.startp = _startpos;
29908 MenhirLib.EngineTypes.endp = _endpos;
29909 MenhirLib.EngineTypes.next = _menhir_stack;
29910 });
29911 (fun _menhir_env ->
29912 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29913 let {
29914 MenhirLib.EngineTypes.state = _menhir_s;
29915 MenhirLib.EngineTypes.semv = ne;
29916 MenhirLib.EngineTypes.startp = _startpos_ne_;
29917 MenhirLib.EngineTypes.endp = _endpos_ne_;
29918 MenhirLib.EngineTypes.next = _menhir_stack;
29919 } = _menhir_stack in
29920 let ne : 'tv_not_eqid = Obj.magic ne in
29921 let _startpos = _startpos_ne_ in
29922 let _endpos = _endpos_ne_ in
29923 let _v : 'tv_re_or_not_eqid =
29924 # 1858 "parser_cocci_menhir.mly"
29925 (ne)
29926 # 29900 "parser_cocci_menhir.ml"
29927 in
29928 _menhir_env.MenhirLib.EngineTypes.stack <- {
29929 MenhirLib.EngineTypes.state = _menhir_s;
29930 MenhirLib.EngineTypes.semv = Obj.repr _v;
29931 MenhirLib.EngineTypes.startp = _startpos;
29932 MenhirLib.EngineTypes.endp = _endpos;
29933 MenhirLib.EngineTypes.next = _menhir_stack;
29934 });
29935 (fun _menhir_env ->
29936 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29937 let {
29938 MenhirLib.EngineTypes.semv = re;
29939 MenhirLib.EngineTypes.startp = _startpos_re_;
29940 MenhirLib.EngineTypes.endp = _endpos_re_;
29941 MenhirLib.EngineTypes.next = {
29942 MenhirLib.EngineTypes.state = _menhir_s;
29943 MenhirLib.EngineTypes.startp = _startpos__1_;
29944 MenhirLib.EngineTypes.endp = _endpos__1_;
29945 MenhirLib.EngineTypes.next = _menhir_stack;
29946 };
29947 } = _menhir_stack in
29948 let re : (
29949 # 133 "parser_cocci_menhir.mly"
29950 (string * Data.clt)
29951 # 29925 "parser_cocci_menhir.ml"
29952 ) = Obj.magic re in
29953 let _startpos = _startpos__1_ in
29954 let _endpos = _endpos_re_ in
29955 let _v : 'tv_regexp_eqid =
29956 # 1862 "parser_cocci_menhir.mly"
29957 ( (if !Data.in_iso
29958 then failwith "constraints not allowed in iso file");
29959 (if !Data.in_generating
29960 then failwith "constraints not allowed in a generated rule file");
29961 let (s,_) = re in Ast.IdRegExp (s,Regexp.regexp s)
29962 )
29963 # 29937 "parser_cocci_menhir.ml"
29964 in
29965 _menhir_env.MenhirLib.EngineTypes.stack <- {
29966 MenhirLib.EngineTypes.state = _menhir_s;
29967 MenhirLib.EngineTypes.semv = Obj.repr _v;
29968 MenhirLib.EngineTypes.startp = _startpos;
29969 MenhirLib.EngineTypes.endp = _endpos;
29970 MenhirLib.EngineTypes.next = _menhir_stack;
29971 });
29972 (fun _menhir_env ->
29973 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
29974 let {
29975 MenhirLib.EngineTypes.semv = re;
29976 MenhirLib.EngineTypes.startp = _startpos_re_;
29977 MenhirLib.EngineTypes.endp = _endpos_re_;
29978 MenhirLib.EngineTypes.next = {
29979 MenhirLib.EngineTypes.state = _menhir_s;
29980 MenhirLib.EngineTypes.startp = _startpos__1_;
29981 MenhirLib.EngineTypes.endp = _endpos__1_;
29982 MenhirLib.EngineTypes.next = _menhir_stack;
29983 };
29984 } = _menhir_stack in
29985 let re : (
29986 # 133 "parser_cocci_menhir.mly"
29987 (string * Data.clt)
29988 # 29962 "parser_cocci_menhir.ml"
29989 ) = Obj.magic re in
29990 let _startpos = _startpos__1_ in
29991 let _endpos = _endpos_re_ in
29992 let _v : 'tv_regexp_eqid =
29993 # 1869 "parser_cocci_menhir.mly"
29994 ( (if !Data.in_iso
29995 then failwith "constraints not allowed in iso file");
29996 (if !Data.in_generating
29997 then failwith "constraints not allowed in a generated rule file");
29998 let (s,_) = re in Ast.IdNotRegExp (s,Regexp.regexp s)
29999 )
30000 # 29974 "parser_cocci_menhir.ml"
30001 in
30002 _menhir_env.MenhirLib.EngineTypes.stack <- {
30003 MenhirLib.EngineTypes.state = _menhir_s;
30004 MenhirLib.EngineTypes.semv = Obj.repr _v;
30005 MenhirLib.EngineTypes.startp = _startpos;
30006 MenhirLib.EngineTypes.endp = _endpos;
30007 MenhirLib.EngineTypes.next = _menhir_stack;
30008 });
30009 (fun _menhir_env ->
30010 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30011 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
30012 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
30013 let _endpos = _startpos in
30014 let _v : (
30015 # 179 "parser_cocci_menhir.mly"
30016 (unit)
30017 # 29991 "parser_cocci_menhir.ml"
30018 ) =
30019 # 220 "parser_cocci_menhir.mly"
30020 ( )
30021 # 29995 "parser_cocci_menhir.ml"
30022 in
30023 _menhir_env.MenhirLib.EngineTypes.stack <- {
30024 MenhirLib.EngineTypes.state = _menhir_s;
30025 MenhirLib.EngineTypes.semv = Obj.repr _v;
30026 MenhirLib.EngineTypes.startp = _startpos;
30027 MenhirLib.EngineTypes.endp = _endpos;
30028 MenhirLib.EngineTypes.next = _menhir_stack;
30029 });
30030 (fun _menhir_env ->
30031 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30032 let {
30033 MenhirLib.EngineTypes.state = _menhir_s;
30034 MenhirLib.EngineTypes.semv = _1;
30035 MenhirLib.EngineTypes.startp = _startpos__1_;
30036 MenhirLib.EngineTypes.endp = _endpos__1_;
30037 MenhirLib.EngineTypes.next = _menhir_stack;
30038 } = _menhir_stack in
30039 let _1 : 'tv_one_decl_var = Obj.magic _1 in
30040 let _startpos = _startpos__1_ in
30041 let _endpos = _endpos__1_ in
30042 let _v : 'tv_rule_elem_statement =
30043 # 1157 "parser_cocci_menhir.mly"
30044 ( Ast0.wrap(Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),_1)) )
30045 # 30019 "parser_cocci_menhir.ml"
30046 in
30047 _menhir_env.MenhirLib.EngineTypes.stack <- {
30048 MenhirLib.EngineTypes.state = _menhir_s;
30049 MenhirLib.EngineTypes.semv = Obj.repr _v;
30050 MenhirLib.EngineTypes.startp = _startpos;
30051 MenhirLib.EngineTypes.endp = _endpos;
30052 MenhirLib.EngineTypes.next = _menhir_stack;
30053 });
30054 (fun _menhir_env ->
30055 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30056 let {
30057 MenhirLib.EngineTypes.semv = _2;
30058 MenhirLib.EngineTypes.startp = _startpos__2_;
30059 MenhirLib.EngineTypes.endp = _endpos__2_;
30060 MenhirLib.EngineTypes.next = {
30061 MenhirLib.EngineTypes.state = _menhir_s;
30062 MenhirLib.EngineTypes.semv = _1;
30063 MenhirLib.EngineTypes.startp = _startpos__1_;
30064 MenhirLib.EngineTypes.endp = _endpos__1_;
30065 MenhirLib.EngineTypes.next = _menhir_stack;
30066 };
30067 } = _menhir_stack in
30068 let _2 : (
30069 # 153 "parser_cocci_menhir.mly"
30070 (Data.clt)
30071 # 30045 "parser_cocci_menhir.ml"
30072 ) = Obj.magic _2 in
30073 let _1 : 'tv_option_expr_ = Obj.magic _1 in
30074 let _startpos = _startpos__1_ in
30075 let _endpos = _endpos__2_ in
30076 let _v : 'tv_rule_elem_statement =
30077 # 1158 "parser_cocci_menhir.mly"
30078 ( P.exp_stm _1 _2 )
30079 # 30053 "parser_cocci_menhir.ml"
30080 in
30081 _menhir_env.MenhirLib.EngineTypes.stack <- {
30082 MenhirLib.EngineTypes.state = _menhir_s;
30083 MenhirLib.EngineTypes.semv = Obj.repr _v;
30084 MenhirLib.EngineTypes.startp = _startpos;
30085 MenhirLib.EngineTypes.endp = _endpos;
30086 MenhirLib.EngineTypes.next = _menhir_stack;
30087 });
30088 (fun _menhir_env ->
30089 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30090 let {
30091 MenhirLib.EngineTypes.semv = _3;
30092 MenhirLib.EngineTypes.startp = _startpos__3_;
30093 MenhirLib.EngineTypes.endp = _endpos__3_;
30094 MenhirLib.EngineTypes.next = {
30095 MenhirLib.EngineTypes.semv = _2;
30096 MenhirLib.EngineTypes.startp = _startpos__2_;
30097 MenhirLib.EngineTypes.endp = _endpos__2_;
30098 MenhirLib.EngineTypes.next = {
30099 MenhirLib.EngineTypes.state = _menhir_s;
30100 MenhirLib.EngineTypes.semv = _1;
30101 MenhirLib.EngineTypes.startp = _startpos__1_;
30102 MenhirLib.EngineTypes.endp = _endpos__1_;
30103 MenhirLib.EngineTypes.next = _menhir_stack;
30104 };
30105 };
30106 } = _menhir_stack in
30107 let _3 : (
30108 # 153 "parser_cocci_menhir.mly"
30109 (Data.clt)
30110 # 30084 "parser_cocci_menhir.ml"
30111 ) = Obj.magic _3 in
30112 let _2 : 'tv_eexpr = Obj.magic _2 in
30113 let _1 : (
30114 # 99 "parser_cocci_menhir.mly"
30115 (Data.clt)
30116 # 30090 "parser_cocci_menhir.ml"
30117 ) = Obj.magic _1 in
30118 let _startpos = _startpos__1_ in
30119 let _endpos = _endpos__3_ in
30120 let _v : 'tv_rule_elem_statement =
30121 # 1159 "parser_cocci_menhir.mly"
30122 ( P.ret_exp _1 _2 _3 )
30123 # 30097 "parser_cocci_menhir.ml"
30124 in
30125 _menhir_env.MenhirLib.EngineTypes.stack <- {
30126 MenhirLib.EngineTypes.state = _menhir_s;
30127 MenhirLib.EngineTypes.semv = Obj.repr _v;
30128 MenhirLib.EngineTypes.startp = _startpos;
30129 MenhirLib.EngineTypes.endp = _endpos;
30130 MenhirLib.EngineTypes.next = _menhir_stack;
30131 });
30132 (fun _menhir_env ->
30133 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30134 let {
30135 MenhirLib.EngineTypes.semv = _2;
30136 MenhirLib.EngineTypes.startp = _startpos__2_;
30137 MenhirLib.EngineTypes.endp = _endpos__2_;
30138 MenhirLib.EngineTypes.next = {
30139 MenhirLib.EngineTypes.state = _menhir_s;
30140 MenhirLib.EngineTypes.semv = _1;
30141 MenhirLib.EngineTypes.startp = _startpos__1_;
30142 MenhirLib.EngineTypes.endp = _endpos__1_;
30143 MenhirLib.EngineTypes.next = _menhir_stack;
30144 };
30145 } = _menhir_stack in
30146 let _2 : (
30147 # 153 "parser_cocci_menhir.mly"
30148 (Data.clt)
30149 # 30123 "parser_cocci_menhir.ml"
30150 ) = Obj.magic _2 in
30151 let _1 : (
30152 # 99 "parser_cocci_menhir.mly"
30153 (Data.clt)
30154 # 30128 "parser_cocci_menhir.ml"
30155 ) = Obj.magic _1 in
30156 let _startpos = _startpos__1_ in
30157 let _endpos = _endpos__2_ in
30158 let _v : 'tv_rule_elem_statement =
30159 # 1160 "parser_cocci_menhir.mly"
30160 ( P.ret _1 _2 )
30161 # 30135 "parser_cocci_menhir.ml"
30162 in
30163 _menhir_env.MenhirLib.EngineTypes.stack <- {
30164 MenhirLib.EngineTypes.state = _menhir_s;
30165 MenhirLib.EngineTypes.semv = Obj.repr _v;
30166 MenhirLib.EngineTypes.startp = _startpos;
30167 MenhirLib.EngineTypes.endp = _endpos;
30168 MenhirLib.EngineTypes.next = _menhir_stack;
30169 });
30170 (fun _menhir_env ->
30171 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30172 let {
30173 MenhirLib.EngineTypes.semv = _2;
30174 MenhirLib.EngineTypes.startp = _startpos__2_;
30175 MenhirLib.EngineTypes.endp = _endpos__2_;
30176 MenhirLib.EngineTypes.next = {
30177 MenhirLib.EngineTypes.state = _menhir_s;
30178 MenhirLib.EngineTypes.semv = _1;
30179 MenhirLib.EngineTypes.startp = _startpos__1_;
30180 MenhirLib.EngineTypes.endp = _endpos__1_;
30181 MenhirLib.EngineTypes.next = _menhir_stack;
30182 };
30183 } = _menhir_stack in
30184 let _2 : (
30185 # 153 "parser_cocci_menhir.mly"
30186 (Data.clt)
30187 # 30161 "parser_cocci_menhir.ml"
30188 ) = Obj.magic _2 in
30189 let _1 : (
30190 # 100 "parser_cocci_menhir.mly"
30191 (Data.clt)
30192 # 30166 "parser_cocci_menhir.ml"
30193 ) = Obj.magic _1 in
30194 let _startpos = _startpos__1_ in
30195 let _endpos = _endpos__2_ in
30196 let _v : 'tv_rule_elem_statement =
30197 # 1161 "parser_cocci_menhir.mly"
30198 ( P.break _1 _2 )
30199 # 30173 "parser_cocci_menhir.ml"
30200 in
30201 _menhir_env.MenhirLib.EngineTypes.stack <- {
30202 MenhirLib.EngineTypes.state = _menhir_s;
30203 MenhirLib.EngineTypes.semv = Obj.repr _v;
30204 MenhirLib.EngineTypes.startp = _startpos;
30205 MenhirLib.EngineTypes.endp = _endpos;
30206 MenhirLib.EngineTypes.next = _menhir_stack;
30207 });
30208 (fun _menhir_env ->
30209 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30210 let {
30211 MenhirLib.EngineTypes.semv = _2;
30212 MenhirLib.EngineTypes.startp = _startpos__2_;
30213 MenhirLib.EngineTypes.endp = _endpos__2_;
30214 MenhirLib.EngineTypes.next = {
30215 MenhirLib.EngineTypes.state = _menhir_s;
30216 MenhirLib.EngineTypes.semv = _1;
30217 MenhirLib.EngineTypes.startp = _startpos__1_;
30218 MenhirLib.EngineTypes.endp = _endpos__1_;
30219 MenhirLib.EngineTypes.next = _menhir_stack;
30220 };
30221 } = _menhir_stack in
30222 let _2 : (
30223 # 153 "parser_cocci_menhir.mly"
30224 (Data.clt)
30225 # 30199 "parser_cocci_menhir.ml"
30226 ) = Obj.magic _2 in
30227 let _1 : (
30228 # 100 "parser_cocci_menhir.mly"
30229 (Data.clt)
30230 # 30204 "parser_cocci_menhir.ml"
30231 ) = Obj.magic _1 in
30232 let _startpos = _startpos__1_ in
30233 let _endpos = _endpos__2_ in
30234 let _v : 'tv_rule_elem_statement =
30235 # 1162 "parser_cocci_menhir.mly"
30236 ( P.cont _1 _2 )
30237 # 30211 "parser_cocci_menhir.ml"
30238 in
30239 _menhir_env.MenhirLib.EngineTypes.stack <- {
30240 MenhirLib.EngineTypes.state = _menhir_s;
30241 MenhirLib.EngineTypes.semv = Obj.repr _v;
30242 MenhirLib.EngineTypes.startp = _startpos;
30243 MenhirLib.EngineTypes.endp = _endpos;
30244 MenhirLib.EngineTypes.next = _menhir_stack;
30245 });
30246 (fun _menhir_env ->
30247 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30248 let {
30249 MenhirLib.EngineTypes.semv = _3;
30250 MenhirLib.EngineTypes.startp = _startpos__3_;
30251 MenhirLib.EngineTypes.endp = _endpos__3_;
30252 MenhirLib.EngineTypes.next = {
30253 MenhirLib.EngineTypes.semv = _2;
30254 MenhirLib.EngineTypes.startp = _startpos__2_;
30255 MenhirLib.EngineTypes.endp = _endpos__2_;
30256 MenhirLib.EngineTypes.next = {
30257 MenhirLib.EngineTypes.state = _menhir_s;
30258 MenhirLib.EngineTypes.semv = _1;
30259 MenhirLib.EngineTypes.startp = _startpos__1_;
30260 MenhirLib.EngineTypes.endp = _endpos__1_;
30261 MenhirLib.EngineTypes.next = _menhir_stack;
30262 };
30263 };
30264 } = _menhir_stack in
30265 let _3 : (
30266 # 123 "parser_cocci_menhir.mly"
30267 (Data.clt)
30268 # 30242 "parser_cocci_menhir.ml"
30269 ) = Obj.magic _3 in
30270 let _2 : 'tv_midzero_list_rule_elem_statement_rule_elem_statement_ = Obj.magic _2 in
30271 let _1 : (
30272 # 122 "parser_cocci_menhir.mly"
30273 (Data.clt)
30274 # 30248 "parser_cocci_menhir.ml"
30275 ) = Obj.magic _1 in
30276 let _startpos = _startpos__1_ in
30277 let _endpos = _endpos__3_ in
30278 let _v : 'tv_rule_elem_statement =
30279 # 1164 "parser_cocci_menhir.mly"
30280 ( let (mids,code) = _2 in
30281 Ast0.wrap
30282 (Ast0.Disj(P.clt2mcode "(" _1,
30283 List.map (function x -> Ast0.wrap(Ast0.DOTS([x]))) code,
30284 mids, P.clt2mcode ")" _3)) )
30285 # 30259 "parser_cocci_menhir.ml"
30286 in
30287 _menhir_env.MenhirLib.EngineTypes.stack <- {
30288 MenhirLib.EngineTypes.state = _menhir_s;
30289 MenhirLib.EngineTypes.semv = Obj.repr _v;
30290 MenhirLib.EngineTypes.startp = _startpos;
30291 MenhirLib.EngineTypes.endp = _endpos;
30292 MenhirLib.EngineTypes.next = _menhir_stack;
30293 });
30294 (fun _menhir_env ->
30295 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30296 let {
30297 MenhirLib.EngineTypes.startp = _startpos__7_;
30298 MenhirLib.EngineTypes.endp = _endpos__7_;
30299 MenhirLib.EngineTypes.next = {
30300 MenhirLib.EngineTypes.semv = ee;
30301 MenhirLib.EngineTypes.startp = _startpos_ee_;
30302 MenhirLib.EngineTypes.endp = _endpos_ee_;
30303 MenhirLib.EngineTypes.next = {
30304 MenhirLib.EngineTypes.semv = e;
30305 MenhirLib.EngineTypes.startp = _startpos_e_;
30306 MenhirLib.EngineTypes.endp = _endpos_e_;
30307 MenhirLib.EngineTypes.next = {
30308 MenhirLib.EngineTypes.semv = a;
30309 MenhirLib.EngineTypes.startp = _startpos_a_;
30310 MenhirLib.EngineTypes.endp = _endpos_a_;
30311 MenhirLib.EngineTypes.next = {
30312 MenhirLib.EngineTypes.semv = i;
30313 MenhirLib.EngineTypes.startp = _startpos_i_;
30314 MenhirLib.EngineTypes.endp = _endpos_i_;
30315 MenhirLib.EngineTypes.next = {
30316 MenhirLib.EngineTypes.semv = d;
30317 MenhirLib.EngineTypes.startp = _startpos_d_;
30318 MenhirLib.EngineTypes.endp = _endpos_d_;
30319 MenhirLib.EngineTypes.next = {
30320 MenhirLib.EngineTypes.state = _menhir_s;
30321 MenhirLib.EngineTypes.startp = _startpos__1_;
30322 MenhirLib.EngineTypes.endp = _endpos__1_;
30323 MenhirLib.EngineTypes.next = _menhir_stack;
30324 };
30325 };
30326 };
30327 };
30328 };
30329 };
30330 } = _menhir_stack in
30331 let ee : 'tv_is_expression = Obj.magic ee in
30332 let e : 'tv_exists = Obj.magic e in
30333 let a : 'tv_loption_disable_ = Obj.magic a in
30334 let i : 'tv_loption_choose_iso_ = Obj.magic i in
30335 let d : 'tv_depends = Obj.magic d in
30336 let _startpos = _startpos__1_ in
30337 let _endpos = _endpos__7_ in
30338 let _v : (
30339 # 201 "parser_cocci_menhir.mly"
30340 (Ast_cocci.rulename)
30341 # 30315 "parser_cocci_menhir.ml"
30342 ) = let nm =
30343
30344 # 39 "standard.mly"
30345 ( None )
30346 # 30320 "parser_cocci_menhir.ml"
30347
30348 in
30349
30350 # 250 "parser_cocci_menhir.mly"
30351 ( P.make_cocci_rule_name_result nm d i a e ee )
30352 # 30326 "parser_cocci_menhir.ml"
30353 in
30354 _menhir_env.MenhirLib.EngineTypes.stack <- {
30355 MenhirLib.EngineTypes.state = _menhir_s;
30356 MenhirLib.EngineTypes.semv = Obj.repr _v;
30357 MenhirLib.EngineTypes.startp = _startpos;
30358 MenhirLib.EngineTypes.endp = _endpos;
30359 MenhirLib.EngineTypes.next = _menhir_stack;
30360 });
30361 (fun _menhir_env ->
30362 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30363 let {
30364 MenhirLib.EngineTypes.startp = _startpos__8_;
30365 MenhirLib.EngineTypes.endp = _endpos__8_;
30366 MenhirLib.EngineTypes.next = {
30367 MenhirLib.EngineTypes.semv = ee;
30368 MenhirLib.EngineTypes.startp = _startpos_ee_;
30369 MenhirLib.EngineTypes.endp = _endpos_ee_;
30370 MenhirLib.EngineTypes.next = {
30371 MenhirLib.EngineTypes.semv = e;
30372 MenhirLib.EngineTypes.startp = _startpos_e_;
30373 MenhirLib.EngineTypes.endp = _endpos_e_;
30374 MenhirLib.EngineTypes.next = {
30375 MenhirLib.EngineTypes.semv = a;
30376 MenhirLib.EngineTypes.startp = _startpos_a_;
30377 MenhirLib.EngineTypes.endp = _endpos_a_;
30378 MenhirLib.EngineTypes.next = {
30379 MenhirLib.EngineTypes.semv = i;
30380 MenhirLib.EngineTypes.startp = _startpos_i_;
30381 MenhirLib.EngineTypes.endp = _endpos_i_;
30382 MenhirLib.EngineTypes.next = {
30383 MenhirLib.EngineTypes.semv = d;
30384 MenhirLib.EngineTypes.startp = _startpos_d_;
30385 MenhirLib.EngineTypes.endp = _endpos_d_;
30386 MenhirLib.EngineTypes.next = {
30387 MenhirLib.EngineTypes.startp = _startpos__2_;
30388 MenhirLib.EngineTypes.endp = _endpos__2_;
30389 MenhirLib.EngineTypes.next = {
30390 MenhirLib.EngineTypes.state = _menhir_s;
30391 MenhirLib.EngineTypes.semv = x0;
30392 MenhirLib.EngineTypes.startp = _startpos_x0_;
30393 MenhirLib.EngineTypes.endp = _endpos_x0_;
30394 MenhirLib.EngineTypes.next = _menhir_stack;
30395 };
30396 };
30397 };
30398 };
30399 };
30400 };
30401 };
30402 } = _menhir_stack in
30403 let ee : 'tv_is_expression = Obj.magic ee in
30404 let e : 'tv_exists = Obj.magic e in
30405 let a : 'tv_loption_disable_ = Obj.magic a in
30406 let i : 'tv_loption_choose_iso_ = Obj.magic i in
30407 let d : 'tv_depends = Obj.magic d in
30408 let x0 : 'tv_pure_ident = Obj.magic x0 in
30409 let _startpos = _startpos_x0_ in
30410 let _endpos = _endpos__8_ in
30411 let _v : (
30412 # 201 "parser_cocci_menhir.mly"
30413 (Ast_cocci.rulename)
30414 # 30388 "parser_cocci_menhir.ml"
30415 ) = let nm =
30416 let x = x0 in
30417
30418 # 41 "standard.mly"
30419 ( Some x )
30420 # 30394 "parser_cocci_menhir.ml"
30421
30422 in
30423
30424 # 250 "parser_cocci_menhir.mly"
30425 ( P.make_cocci_rule_name_result nm d i a e ee )
30426 # 30400 "parser_cocci_menhir.ml"
30427 in
30428 _menhir_env.MenhirLib.EngineTypes.stack <- {
30429 MenhirLib.EngineTypes.state = _menhir_s;
30430 MenhirLib.EngineTypes.semv = Obj.repr _v;
30431 MenhirLib.EngineTypes.startp = _startpos;
30432 MenhirLib.EngineTypes.endp = _endpos;
30433 MenhirLib.EngineTypes.next = _menhir_stack;
30434 });
30435 (fun _menhir_env ->
30436 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30437 let {
30438 MenhirLib.EngineTypes.startp = _startpos__8_;
30439 MenhirLib.EngineTypes.endp = _endpos__8_;
30440 MenhirLib.EngineTypes.next = {
30441 MenhirLib.EngineTypes.semv = ee;
30442 MenhirLib.EngineTypes.startp = _startpos_ee_;
30443 MenhirLib.EngineTypes.endp = _endpos_ee_;
30444 MenhirLib.EngineTypes.next = {
30445 MenhirLib.EngineTypes.semv = e;
30446 MenhirLib.EngineTypes.startp = _startpos_e_;
30447 MenhirLib.EngineTypes.endp = _endpos_e_;
30448 MenhirLib.EngineTypes.next = {
30449 MenhirLib.EngineTypes.semv = a;
30450 MenhirLib.EngineTypes.startp = _startpos_a_;
30451 MenhirLib.EngineTypes.endp = _endpos_a_;
30452 MenhirLib.EngineTypes.next = {
30453 MenhirLib.EngineTypes.semv = i;
30454 MenhirLib.EngineTypes.startp = _startpos_i_;
30455 MenhirLib.EngineTypes.endp = _endpos_i_;
30456 MenhirLib.EngineTypes.next = {
30457 MenhirLib.EngineTypes.semv = d;
30458 MenhirLib.EngineTypes.startp = _startpos_d_;
30459 MenhirLib.EngineTypes.endp = _endpos_d_;
30460 MenhirLib.EngineTypes.next = {
30461 MenhirLib.EngineTypes.startp = _startpos__2_;
30462 MenhirLib.EngineTypes.endp = _endpos__2_;
30463 MenhirLib.EngineTypes.next = {
30464 MenhirLib.EngineTypes.state = _menhir_s;
30465 MenhirLib.EngineTypes.startp = _startpos__1_;
30466 MenhirLib.EngineTypes.endp = _endpos__1_;
30467 MenhirLib.EngineTypes.next = _menhir_stack;
30468 };
30469 };
30470 };
30471 };
30472 };
30473 };
30474 };
30475 } = _menhir_stack in
30476 let ee : 'tv_is_expression = Obj.magic ee in
30477 let e : 'tv_exists = Obj.magic e in
30478 let a : 'tv_loption_disable_ = Obj.magic a in
30479 let i : 'tv_loption_choose_iso_ = Obj.magic i in
30480 let d : 'tv_depends = Obj.magic d in
30481 let _startpos = _startpos__1_ in
30482 let _endpos = _endpos__8_ in
30483 let _v : (
30484 # 201 "parser_cocci_menhir.mly"
30485 (Ast_cocci.rulename)
30486 # 30460 "parser_cocci_menhir.ml"
30487 ) =
30488 # 255 "parser_cocci_menhir.mly"
30489 ( P.make_generated_rule_name_result None d i a e ee )
30490 # 30464 "parser_cocci_menhir.ml"
30491 in
30492 _menhir_env.MenhirLib.EngineTypes.stack <- {
30493 MenhirLib.EngineTypes.state = _menhir_s;
30494 MenhirLib.EngineTypes.semv = Obj.repr _v;
30495 MenhirLib.EngineTypes.startp = _startpos;
30496 MenhirLib.EngineTypes.endp = _endpos;
30497 MenhirLib.EngineTypes.next = _menhir_stack;
30498 });
30499 (fun _menhir_env ->
30500 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30501 let {
30502 MenhirLib.EngineTypes.startp = _startpos__5_;
30503 MenhirLib.EngineTypes.endp = _endpos__5_;
30504 MenhirLib.EngineTypes.next = {
30505 MenhirLib.EngineTypes.semv = d;
30506 MenhirLib.EngineTypes.startp = _startpos_d_;
30507 MenhirLib.EngineTypes.endp = _endpos_d_;
30508 MenhirLib.EngineTypes.next = {
30509 MenhirLib.EngineTypes.semv = lang;
30510 MenhirLib.EngineTypes.startp = _startpos_lang_;
30511 MenhirLib.EngineTypes.endp = _endpos_lang_;
30512 MenhirLib.EngineTypes.next = {
30513 MenhirLib.EngineTypes.startp = _startpos__2_;
30514 MenhirLib.EngineTypes.endp = _endpos__2_;
30515 MenhirLib.EngineTypes.next = {
30516 MenhirLib.EngineTypes.state = _menhir_s;
30517 MenhirLib.EngineTypes.startp = _startpos__1_;
30518 MenhirLib.EngineTypes.endp = _endpos__1_;
30519 MenhirLib.EngineTypes.next = _menhir_stack;
30520 };
30521 };
30522 };
30523 };
30524 } = _menhir_stack in
30525 let d : 'tv_depends = Obj.magic d in
30526 let lang : 'tv_pure_ident = Obj.magic lang in
30527 let _startpos = _startpos__1_ in
30528 let _endpos = _endpos__5_ in
30529 let _v : (
30530 # 201 "parser_cocci_menhir.mly"
30531 (Ast_cocci.rulename)
30532 # 30506 "parser_cocci_menhir.ml"
30533 ) = let nm =
30534
30535 # 39 "standard.mly"
30536 ( None )
30537 # 30511 "parser_cocci_menhir.ml"
30538
30539 in
30540
30541 # 257 "parser_cocci_menhir.mly"
30542 ( P.make_script_rule_name_result lang nm d )
30543 # 30517 "parser_cocci_menhir.ml"
30544 in
30545 _menhir_env.MenhirLib.EngineTypes.stack <- {
30546 MenhirLib.EngineTypes.state = _menhir_s;
30547 MenhirLib.EngineTypes.semv = Obj.repr _v;
30548 MenhirLib.EngineTypes.startp = _startpos;
30549 MenhirLib.EngineTypes.endp = _endpos;
30550 MenhirLib.EngineTypes.next = _menhir_stack;
30551 });
30552 (fun _menhir_env ->
30553 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30554 let {
30555 MenhirLib.EngineTypes.startp = _startpos__6_;
30556 MenhirLib.EngineTypes.endp = _endpos__6_;
30557 MenhirLib.EngineTypes.next = {
30558 MenhirLib.EngineTypes.semv = d;
30559 MenhirLib.EngineTypes.startp = _startpos_d_;
30560 MenhirLib.EngineTypes.endp = _endpos_d_;
30561 MenhirLib.EngineTypes.next = {
30562 MenhirLib.EngineTypes.semv = x0;
30563 MenhirLib.EngineTypes.startp = _startpos_x0_;
30564 MenhirLib.EngineTypes.endp = _endpos_x0_;
30565 MenhirLib.EngineTypes.next = {
30566 MenhirLib.EngineTypes.semv = lang;
30567 MenhirLib.EngineTypes.startp = _startpos_lang_;
30568 MenhirLib.EngineTypes.endp = _endpos_lang_;
30569 MenhirLib.EngineTypes.next = {
30570 MenhirLib.EngineTypes.startp = _startpos__2_;
30571 MenhirLib.EngineTypes.endp = _endpos__2_;
30572 MenhirLib.EngineTypes.next = {
30573 MenhirLib.EngineTypes.state = _menhir_s;
30574 MenhirLib.EngineTypes.startp = _startpos__1_;
30575 MenhirLib.EngineTypes.endp = _endpos__1_;
30576 MenhirLib.EngineTypes.next = _menhir_stack;
30577 };
30578 };
30579 };
30580 };
30581 };
30582 } = _menhir_stack in
30583 let d : 'tv_depends = Obj.magic d in
30584 let x0 : 'tv_pure_ident = Obj.magic x0 in
30585 let lang : 'tv_pure_ident = Obj.magic lang in
30586 let _startpos = _startpos__1_ in
30587 let _endpos = _endpos__6_ in
30588 let _v : (
30589 # 201 "parser_cocci_menhir.mly"
30590 (Ast_cocci.rulename)
30591 # 30565 "parser_cocci_menhir.ml"
30592 ) = let nm =
30593 let x = x0 in
30594
30595 # 41 "standard.mly"
30596 ( Some x )
30597 # 30571 "parser_cocci_menhir.ml"
30598
30599 in
30600
30601 # 257 "parser_cocci_menhir.mly"
30602 ( P.make_script_rule_name_result lang nm d )
30603 # 30577 "parser_cocci_menhir.ml"
30604 in
30605 _menhir_env.MenhirLib.EngineTypes.stack <- {
30606 MenhirLib.EngineTypes.state = _menhir_s;
30607 MenhirLib.EngineTypes.semv = Obj.repr _v;
30608 MenhirLib.EngineTypes.startp = _startpos;
30609 MenhirLib.EngineTypes.endp = _endpos;
30610 MenhirLib.EngineTypes.next = _menhir_stack;
30611 });
30612 (fun _menhir_env ->
30613 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30614 let {
30615 MenhirLib.EngineTypes.startp = _startpos__5_;
30616 MenhirLib.EngineTypes.endp = _endpos__5_;
30617 MenhirLib.EngineTypes.next = {
30618 MenhirLib.EngineTypes.semv = d;
30619 MenhirLib.EngineTypes.startp = _startpos_d_;
30620 MenhirLib.EngineTypes.endp = _endpos_d_;
30621 MenhirLib.EngineTypes.next = {
30622 MenhirLib.EngineTypes.semv = lang;
30623 MenhirLib.EngineTypes.startp = _startpos_lang_;
30624 MenhirLib.EngineTypes.endp = _endpos_lang_;
30625 MenhirLib.EngineTypes.next = {
30626 MenhirLib.EngineTypes.startp = _startpos__2_;
30627 MenhirLib.EngineTypes.endp = _endpos__2_;
30628 MenhirLib.EngineTypes.next = {
30629 MenhirLib.EngineTypes.state = _menhir_s;
30630 MenhirLib.EngineTypes.startp = _startpos__1_;
30631 MenhirLib.EngineTypes.endp = _endpos__1_;
30632 MenhirLib.EngineTypes.next = _menhir_stack;
30633 };
30634 };
30635 };
30636 };
30637 } = _menhir_stack in
30638 let d : 'tv_depends = Obj.magic d in
30639 let lang : 'tv_pure_ident = Obj.magic lang in
30640 let _startpos = _startpos__1_ in
30641 let _endpos = _endpos__5_ in
30642 let _v : (
30643 # 201 "parser_cocci_menhir.mly"
30644 (Ast_cocci.rulename)
30645 # 30619 "parser_cocci_menhir.ml"
30646 ) =
30647 # 259 "parser_cocci_menhir.mly"
30648 ( P.make_initial_script_rule_name_result lang d )
30649 # 30623 "parser_cocci_menhir.ml"
30650 in
30651 _menhir_env.MenhirLib.EngineTypes.stack <- {
30652 MenhirLib.EngineTypes.state = _menhir_s;
30653 MenhirLib.EngineTypes.semv = Obj.repr _v;
30654 MenhirLib.EngineTypes.startp = _startpos;
30655 MenhirLib.EngineTypes.endp = _endpos;
30656 MenhirLib.EngineTypes.next = _menhir_stack;
30657 });
30658 (fun _menhir_env ->
30659 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30660 let {
30661 MenhirLib.EngineTypes.startp = _startpos__5_;
30662 MenhirLib.EngineTypes.endp = _endpos__5_;
30663 MenhirLib.EngineTypes.next = {
30664 MenhirLib.EngineTypes.semv = d;
30665 MenhirLib.EngineTypes.startp = _startpos_d_;
30666 MenhirLib.EngineTypes.endp = _endpos_d_;
30667 MenhirLib.EngineTypes.next = {
30668 MenhirLib.EngineTypes.semv = lang;
30669 MenhirLib.EngineTypes.startp = _startpos_lang_;
30670 MenhirLib.EngineTypes.endp = _endpos_lang_;
30671 MenhirLib.EngineTypes.next = {
30672 MenhirLib.EngineTypes.startp = _startpos__2_;
30673 MenhirLib.EngineTypes.endp = _endpos__2_;
30674 MenhirLib.EngineTypes.next = {
30675 MenhirLib.EngineTypes.state = _menhir_s;
30676 MenhirLib.EngineTypes.startp = _startpos__1_;
30677 MenhirLib.EngineTypes.endp = _endpos__1_;
30678 MenhirLib.EngineTypes.next = _menhir_stack;
30679 };
30680 };
30681 };
30682 };
30683 } = _menhir_stack in
30684 let d : 'tv_depends = Obj.magic d in
30685 let lang : 'tv_pure_ident = Obj.magic lang in
30686 let _startpos = _startpos__1_ in
30687 let _endpos = _endpos__5_ in
30688 let _v : (
30689 # 201 "parser_cocci_menhir.mly"
30690 (Ast_cocci.rulename)
30691 # 30665 "parser_cocci_menhir.ml"
30692 ) =
30693 # 261 "parser_cocci_menhir.mly"
30694 ( P.make_final_script_rule_name_result lang d )
30695 # 30669 "parser_cocci_menhir.ml"
30696 in
30697 _menhir_env.MenhirLib.EngineTypes.stack <- {
30698 MenhirLib.EngineTypes.state = _menhir_s;
30699 MenhirLib.EngineTypes.semv = Obj.repr _v;
30700 MenhirLib.EngineTypes.startp = _startpos;
30701 MenhirLib.EngineTypes.endp = _endpos;
30702 MenhirLib.EngineTypes.next = _menhir_stack;
30703 });
30704 (fun _menhir_env ->
30705 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30706 let {
30707 MenhirLib.EngineTypes.startp = _startpos__2_;
30708 MenhirLib.EngineTypes.endp = _endpos__2_;
30709 MenhirLib.EngineTypes.next = {
30710 MenhirLib.EngineTypes.state = _menhir_s;
30711 MenhirLib.EngineTypes.semv = py;
30712 MenhirLib.EngineTypes.startp = _startpos_py_;
30713 MenhirLib.EngineTypes.endp = _endpos_py_;
30714 MenhirLib.EngineTypes.next = _menhir_stack;
30715 };
30716 } = _menhir_stack in
30717 let py : 'tv_pure_ident = Obj.magic py in
30718 let _startpos = _startpos_py_ in
30719 let _endpos = _endpos__2_ in
30720 let _v : (
30721 # 207 "parser_cocci_menhir.mly"
30722 ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
30723 # 30697 "parser_cocci_menhir.ml"
30724 ) =
30725 # 2431 "parser_cocci_menhir.mly"
30726 ( ((Some (P.id2name py), None), None) )
30727 # 30701 "parser_cocci_menhir.ml"
30728 in
30729 _menhir_env.MenhirLib.EngineTypes.stack <- {
30730 MenhirLib.EngineTypes.state = _menhir_s;
30731 MenhirLib.EngineTypes.semv = Obj.repr _v;
30732 MenhirLib.EngineTypes.startp = _startpos;
30733 MenhirLib.EngineTypes.endp = _endpos;
30734 MenhirLib.EngineTypes.next = _menhir_stack;
30735 });
30736 (fun _menhir_env ->
30737 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30738 let {
30739 MenhirLib.EngineTypes.startp = _startpos__3_;
30740 MenhirLib.EngineTypes.endp = _endpos__3_;
30741 MenhirLib.EngineTypes.next = {
30742 MenhirLib.EngineTypes.semv = _2;
30743 MenhirLib.EngineTypes.startp = _startpos__2_;
30744 MenhirLib.EngineTypes.endp = _endpos__2_;
30745 MenhirLib.EngineTypes.next = {
30746 MenhirLib.EngineTypes.state = _menhir_s;
30747 MenhirLib.EngineTypes.semv = py;
30748 MenhirLib.EngineTypes.startp = _startpos_py_;
30749 MenhirLib.EngineTypes.endp = _endpos_py_;
30750 MenhirLib.EngineTypes.next = _menhir_stack;
30751 };
30752 };
30753 } = _menhir_stack in
30754 let _2 : 'tv_script_name_decl = Obj.magic _2 in
30755 let py : 'tv_pure_ident = Obj.magic py in
30756 let _startpos = _startpos_py_ in
30757 let _endpos = _endpos__3_ in
30758 let _v : (
30759 # 207 "parser_cocci_menhir.mly"
30760 ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
30761 # 30735 "parser_cocci_menhir.ml"
30762 ) =
30763 # 2433 "parser_cocci_menhir.mly"
30764 ( ((Some (P.id2name py), None), Some _2) )
30765 # 30739 "parser_cocci_menhir.ml"
30766 in
30767 _menhir_env.MenhirLib.EngineTypes.stack <- {
30768 MenhirLib.EngineTypes.state = _menhir_s;
30769 MenhirLib.EngineTypes.semv = Obj.repr _v;
30770 MenhirLib.EngineTypes.startp = _startpos;
30771 MenhirLib.EngineTypes.endp = _endpos;
30772 MenhirLib.EngineTypes.next = _menhir_stack;
30773 });
30774 (fun _menhir_env ->
30775 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30776 let {
30777 MenhirLib.EngineTypes.startp = _startpos__7_;
30778 MenhirLib.EngineTypes.endp = _endpos__7_;
30779 MenhirLib.EngineTypes.next = {
30780 MenhirLib.EngineTypes.semv = _6;
30781 MenhirLib.EngineTypes.startp = _startpos__6_;
30782 MenhirLib.EngineTypes.endp = _endpos__6_;
30783 MenhirLib.EngineTypes.next = {
30784 MenhirLib.EngineTypes.startp = _startpos__5_;
30785 MenhirLib.EngineTypes.endp = _endpos__5_;
30786 MenhirLib.EngineTypes.next = {
30787 MenhirLib.EngineTypes.semv = ast;
30788 MenhirLib.EngineTypes.startp = _startpos_ast_;
30789 MenhirLib.EngineTypes.endp = _endpos_ast_;
30790 MenhirLib.EngineTypes.next = {
30791 MenhirLib.EngineTypes.startp = _startpos__3_;
30792 MenhirLib.EngineTypes.endp = _endpos__3_;
30793 MenhirLib.EngineTypes.next = {
30794 MenhirLib.EngineTypes.startp = _startpos__2_;
30795 MenhirLib.EngineTypes.endp = _endpos__2_;
30796 MenhirLib.EngineTypes.next = {
30797 MenhirLib.EngineTypes.state = _menhir_s;
30798 MenhirLib.EngineTypes.startp = _startpos__1_;
30799 MenhirLib.EngineTypes.endp = _endpos__1_;
30800 MenhirLib.EngineTypes.next = _menhir_stack;
30801 };
30802 };
30803 };
30804 };
30805 };
30806 };
30807 } = _menhir_stack in
30808 let _6 : 'tv_script_name_decl = Obj.magic _6 in
30809 let ast : 'tv_pure_ident = Obj.magic ast in
30810 let _startpos = _startpos__1_ in
30811 let _endpos = _endpos__7_ in
30812 let _v : (
30813 # 207 "parser_cocci_menhir.mly"
30814 ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
30815 # 30789 "parser_cocci_menhir.ml"
30816 ) =
30817 # 2435 "parser_cocci_menhir.mly"
30818 ( ((None, Some (P.id2name ast)), Some _6) )
30819 # 30793 "parser_cocci_menhir.ml"
30820 in
30821 _menhir_env.MenhirLib.EngineTypes.stack <- {
30822 MenhirLib.EngineTypes.state = _menhir_s;
30823 MenhirLib.EngineTypes.semv = Obj.repr _v;
30824 MenhirLib.EngineTypes.startp = _startpos;
30825 MenhirLib.EngineTypes.endp = _endpos;
30826 MenhirLib.EngineTypes.next = _menhir_stack;
30827 });
30828 (fun _menhir_env ->
30829 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30830 let {
30831 MenhirLib.EngineTypes.startp = _startpos__7_;
30832 MenhirLib.EngineTypes.endp = _endpos__7_;
30833 MenhirLib.EngineTypes.next = {
30834 MenhirLib.EngineTypes.semv = _6;
30835 MenhirLib.EngineTypes.startp = _startpos__6_;
30836 MenhirLib.EngineTypes.endp = _endpos__6_;
30837 MenhirLib.EngineTypes.next = {
30838 MenhirLib.EngineTypes.startp = _startpos__5_;
30839 MenhirLib.EngineTypes.endp = _endpos__5_;
30840 MenhirLib.EngineTypes.next = {
30841 MenhirLib.EngineTypes.startp = _startpos__4_;
30842 MenhirLib.EngineTypes.endp = _endpos__4_;
30843 MenhirLib.EngineTypes.next = {
30844 MenhirLib.EngineTypes.startp = _startpos__3_;
30845 MenhirLib.EngineTypes.endp = _endpos__3_;
30846 MenhirLib.EngineTypes.next = {
30847 MenhirLib.EngineTypes.semv = str;
30848 MenhirLib.EngineTypes.startp = _startpos_str_;
30849 MenhirLib.EngineTypes.endp = _endpos_str_;
30850 MenhirLib.EngineTypes.next = {
30851 MenhirLib.EngineTypes.state = _menhir_s;
30852 MenhirLib.EngineTypes.startp = _startpos__1_;
30853 MenhirLib.EngineTypes.endp = _endpos__1_;
30854 MenhirLib.EngineTypes.next = _menhir_stack;
30855 };
30856 };
30857 };
30858 };
30859 };
30860 };
30861 } = _menhir_stack in
30862 let _6 : 'tv_script_name_decl = Obj.magic _6 in
30863 let str : 'tv_pure_ident = Obj.magic str in
30864 let _startpos = _startpos__1_ in
30865 let _endpos = _endpos__7_ in
30866 let _v : (
30867 # 207 "parser_cocci_menhir.mly"
30868 ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
30869 # 30843 "parser_cocci_menhir.ml"
30870 ) =
30871 # 2437 "parser_cocci_menhir.mly"
30872 ( ((Some (P.id2name str), None), Some _6) )
30873 # 30847 "parser_cocci_menhir.ml"
30874 in
30875 _menhir_env.MenhirLib.EngineTypes.stack <- {
30876 MenhirLib.EngineTypes.state = _menhir_s;
30877 MenhirLib.EngineTypes.semv = Obj.repr _v;
30878 MenhirLib.EngineTypes.startp = _startpos;
30879 MenhirLib.EngineTypes.endp = _endpos;
30880 MenhirLib.EngineTypes.next = _menhir_stack;
30881 });
30882 (fun _menhir_env ->
30883 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30884 let {
30885 MenhirLib.EngineTypes.startp = _startpos__7_;
30886 MenhirLib.EngineTypes.endp = _endpos__7_;
30887 MenhirLib.EngineTypes.next = {
30888 MenhirLib.EngineTypes.semv = _6;
30889 MenhirLib.EngineTypes.startp = _startpos__6_;
30890 MenhirLib.EngineTypes.endp = _endpos__6_;
30891 MenhirLib.EngineTypes.next = {
30892 MenhirLib.EngineTypes.startp = _startpos__5_;
30893 MenhirLib.EngineTypes.endp = _endpos__5_;
30894 MenhirLib.EngineTypes.next = {
30895 MenhirLib.EngineTypes.semv = ast;
30896 MenhirLib.EngineTypes.startp = _startpos_ast_;
30897 MenhirLib.EngineTypes.endp = _endpos_ast_;
30898 MenhirLib.EngineTypes.next = {
30899 MenhirLib.EngineTypes.startp = _startpos__3_;
30900 MenhirLib.EngineTypes.endp = _endpos__3_;
30901 MenhirLib.EngineTypes.next = {
30902 MenhirLib.EngineTypes.semv = str;
30903 MenhirLib.EngineTypes.startp = _startpos_str_;
30904 MenhirLib.EngineTypes.endp = _endpos_str_;
30905 MenhirLib.EngineTypes.next = {
30906 MenhirLib.EngineTypes.state = _menhir_s;
30907 MenhirLib.EngineTypes.startp = _startpos__1_;
30908 MenhirLib.EngineTypes.endp = _endpos__1_;
30909 MenhirLib.EngineTypes.next = _menhir_stack;
30910 };
30911 };
30912 };
30913 };
30914 };
30915 };
30916 } = _menhir_stack in
30917 let _6 : 'tv_script_name_decl = Obj.magic _6 in
30918 let ast : 'tv_pure_ident = Obj.magic ast in
30919 let str : 'tv_pure_ident = Obj.magic str in
30920 let _startpos = _startpos__1_ in
30921 let _endpos = _endpos__7_ in
30922 let _v : (
30923 # 207 "parser_cocci_menhir.mly"
30924 ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
30925 # 30899 "parser_cocci_menhir.ml"
30926 ) =
30927 # 2439 "parser_cocci_menhir.mly"
30928 ( ((Some (P.id2name str), Some (P.id2name ast)), Some _6) )
30929 # 30903 "parser_cocci_menhir.ml"
30930 in
30931 _menhir_env.MenhirLib.EngineTypes.stack <- {
30932 MenhirLib.EngineTypes.state = _menhir_s;
30933 MenhirLib.EngineTypes.semv = Obj.repr _v;
30934 MenhirLib.EngineTypes.startp = _startpos;
30935 MenhirLib.EngineTypes.endp = _endpos;
30936 MenhirLib.EngineTypes.next = _menhir_stack;
30937 });
30938 (fun _menhir_env ->
30939 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30940 let {
30941 MenhirLib.EngineTypes.semv = cocci;
30942 MenhirLib.EngineTypes.startp = _startpos_cocci_;
30943 MenhirLib.EngineTypes.endp = _endpos_cocci_;
30944 MenhirLib.EngineTypes.next = {
30945 MenhirLib.EngineTypes.startp = _startpos__3_;
30946 MenhirLib.EngineTypes.endp = _endpos__3_;
30947 MenhirLib.EngineTypes.next = {
30948 MenhirLib.EngineTypes.semv = _2;
30949 MenhirLib.EngineTypes.startp = _startpos__2_;
30950 MenhirLib.EngineTypes.endp = _endpos__2_;
30951 MenhirLib.EngineTypes.next = {
30952 MenhirLib.EngineTypes.state = _menhir_s;
30953 MenhirLib.EngineTypes.startp = _startpos__1_;
30954 MenhirLib.EngineTypes.endp = _endpos__1_;
30955 MenhirLib.EngineTypes.next = _menhir_stack;
30956 };
30957 };
30958 };
30959 } = _menhir_stack in
30960 let cocci : 'tv_pure_ident = Obj.magic cocci in
30961 let _2 : (
30962 # 88 "parser_cocci_menhir.mly"
30963 (string)
30964 # 30938 "parser_cocci_menhir.ml"
30965 ) = Obj.magic _2 in
30966 let _startpos = _startpos__1_ in
30967 let _endpos = _endpos_cocci_ in
30968 let _v : 'tv_script_name_decl =
30969 # 2443 "parser_cocci_menhir.mly"
30970 ( let nm = P.id2name cocci in
30971 let mv = Parse_aux.lookup _2 nm in
30972 ((_2, nm), mv) )
30973 # 30947 "parser_cocci_menhir.ml"
30974 in
30975 _menhir_env.MenhirLib.EngineTypes.stack <- {
30976 MenhirLib.EngineTypes.state = _menhir_s;
30977 MenhirLib.EngineTypes.semv = Obj.repr _v;
30978 MenhirLib.EngineTypes.startp = _startpos;
30979 MenhirLib.EngineTypes.endp = _endpos;
30980 MenhirLib.EngineTypes.next = _menhir_stack;
30981 });
30982 (fun _menhir_env ->
30983 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
30984 let {
30985 MenhirLib.EngineTypes.semv = cocci;
30986 MenhirLib.EngineTypes.startp = _startpos_cocci_;
30987 MenhirLib.EngineTypes.endp = _endpos_cocci_;
30988 MenhirLib.EngineTypes.next = {
30989 MenhirLib.EngineTypes.startp = _startpos__3_;
30990 MenhirLib.EngineTypes.endp = _endpos__3_;
30991 MenhirLib.EngineTypes.next = {
30992 MenhirLib.EngineTypes.startp = _startpos__2_;
30993 MenhirLib.EngineTypes.endp = _endpos__2_;
30994 MenhirLib.EngineTypes.next = {
30995 MenhirLib.EngineTypes.state = _menhir_s;
30996 MenhirLib.EngineTypes.startp = _startpos__1_;
30997 MenhirLib.EngineTypes.endp = _endpos__1_;
30998 MenhirLib.EngineTypes.next = _menhir_stack;
30999 };
31000 };
31001 };
31002 } = _menhir_stack in
31003 let cocci : 'tv_pure_ident = Obj.magic cocci in
31004 let _startpos = _startpos__1_ in
31005 let _endpos = _endpos_cocci_ in
31006 let _v : 'tv_script_name_decl =
31007 # 2447 "parser_cocci_menhir.mly"
31008 ( let nm = P.id2name cocci in
31009 Iteration.parsed_virtual_identifiers :=
31010 Common.union_set [nm]
31011 !Iteration.parsed_virtual_identifiers;
31012 let name = ("virtual", nm) in
31013 let mv = Ast.MetaIdDecl(Ast.NONE,name) in
31014 (name,mv) )
31015 # 30989 "parser_cocci_menhir.ml"
31016 in
31017 _menhir_env.MenhirLib.EngineTypes.stack <- {
31018 MenhirLib.EngineTypes.state = _menhir_s;
31019 MenhirLib.EngineTypes.semv = Obj.repr _v;
31020 MenhirLib.EngineTypes.startp = _startpos;
31021 MenhirLib.EngineTypes.endp = _endpos;
31022 MenhirLib.EngineTypes.next = _menhir_stack;
31023 });
31024 (fun _menhir_env ->
31025 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31026 let {
31027 MenhirLib.EngineTypes.state = _menhir_s;
31028 MenhirLib.EngineTypes.semv = _1;
31029 MenhirLib.EngineTypes.startp = _startpos__1_;
31030 MenhirLib.EngineTypes.endp = _endpos__1_;
31031 MenhirLib.EngineTypes.next = _menhir_stack;
31032 } = _menhir_stack in
31033 let _1 : (
31034 # 133 "parser_cocci_menhir.mly"
31035 (string * Data.clt)
31036 # 31010 "parser_cocci_menhir.ml"
31037 ) = Obj.magic _1 in
31038 let _startpos = _startpos__1_ in
31039 let _endpos = _endpos__1_ in
31040 let _v : 'tv_seed_elem =
31041 # 1802 "parser_cocci_menhir.mly"
31042 ( let (x,_) = _1 in Ast.SeedString x )
31043 # 31017 "parser_cocci_menhir.ml"
31044 in
31045 _menhir_env.MenhirLib.EngineTypes.stack <- {
31046 MenhirLib.EngineTypes.state = _menhir_s;
31047 MenhirLib.EngineTypes.semv = Obj.repr _v;
31048 MenhirLib.EngineTypes.startp = _startpos;
31049 MenhirLib.EngineTypes.endp = _endpos;
31050 MenhirLib.EngineTypes.next = _menhir_stack;
31051 });
31052 (fun _menhir_env ->
31053 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31054 let {
31055 MenhirLib.EngineTypes.state = _menhir_s;
31056 MenhirLib.EngineTypes.semv = _1;
31057 MenhirLib.EngineTypes.startp = _startpos__1_;
31058 MenhirLib.EngineTypes.endp = _endpos__1_;
31059 MenhirLib.EngineTypes.next = _menhir_stack;
31060 } = _menhir_stack in
31061 let _1 : (
31062 # 104 "parser_cocci_menhir.mly"
31063 (Parse_aux.midinfo)
31064 # 31038 "parser_cocci_menhir.ml"
31065 ) = Obj.magic _1 in
31066 let _startpos = _startpos__1_ in
31067 let _endpos = _endpos__1_ in
31068 let _v : 'tv_seed_elem =
31069 # 1803 "parser_cocci_menhir.mly"
31070 ( let (x,_,_,_,_) = _1 in Ast.SeedId x )
31071 # 31045 "parser_cocci_menhir.ml"
31072 in
31073 _menhir_env.MenhirLib.EngineTypes.stack <- {
31074 MenhirLib.EngineTypes.state = _menhir_s;
31075 MenhirLib.EngineTypes.semv = Obj.repr _v;
31076 MenhirLib.EngineTypes.startp = _startpos;
31077 MenhirLib.EngineTypes.endp = _endpos;
31078 MenhirLib.EngineTypes.next = _menhir_stack;
31079 });
31080 (fun _menhir_env ->
31081 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31082 let {
31083 MenhirLib.EngineTypes.state = _menhir_s;
31084 MenhirLib.EngineTypes.startp = _startpos__1_;
31085 MenhirLib.EngineTypes.endp = _endpos__1_;
31086 MenhirLib.EngineTypes.next = _menhir_stack;
31087 } = _menhir_stack in
31088 let _startpos = _startpos__1_ in
31089 let _endpos = _endpos__1_ in
31090 let _v : 'tv_seed_elem =
31091 # 1804 "parser_cocci_menhir.mly"
31092 (failwith "tmeta")
31093 # 31067 "parser_cocci_menhir.ml"
31094 in
31095 _menhir_env.MenhirLib.EngineTypes.stack <- {
31096 MenhirLib.EngineTypes.state = _menhir_s;
31097 MenhirLib.EngineTypes.semv = Obj.repr _v;
31098 MenhirLib.EngineTypes.startp = _startpos;
31099 MenhirLib.EngineTypes.endp = _endpos;
31100 MenhirLib.EngineTypes.next = _menhir_stack;
31101 });
31102 (fun _menhir_env ->
31103 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31104 let {
31105 MenhirLib.EngineTypes.semv = _3;
31106 MenhirLib.EngineTypes.startp = _startpos__3_;
31107 MenhirLib.EngineTypes.endp = _endpos__3_;
31108 MenhirLib.EngineTypes.next = {
31109 MenhirLib.EngineTypes.startp = _startpos__2_;
31110 MenhirLib.EngineTypes.endp = _endpos__2_;
31111 MenhirLib.EngineTypes.next = {
31112 MenhirLib.EngineTypes.state = _menhir_s;
31113 MenhirLib.EngineTypes.startp = _startpos__1_;
31114 MenhirLib.EngineTypes.endp = _endpos__1_;
31115 MenhirLib.EngineTypes.next = _menhir_stack;
31116 };
31117 };
31118 } = _menhir_stack in
31119 let _3 : 'tv_pure_ident = Obj.magic _3 in
31120 let _startpos = _startpos__1_ in
31121 let _endpos = _endpos__3_ in
31122 let _v : 'tv_seed_elem =
31123 # 1806 "parser_cocci_menhir.mly"
31124 ( let nm = ("virtual",P.id2name _3) in
31125 Iteration.parsed_virtual_identifiers :=
31126 Common.union_set [snd nm]
31127 !Iteration.parsed_virtual_identifiers;
31128 try Ast.SeedString (List.assoc (snd nm) !Flag.defined_virtual_env)
31129 with Not_found -> Ast.SeedId nm )
31130 # 31104 "parser_cocci_menhir.ml"
31131 in
31132 _menhir_env.MenhirLib.EngineTypes.stack <- {
31133 MenhirLib.EngineTypes.state = _menhir_s;
31134 MenhirLib.EngineTypes.semv = Obj.repr _v;
31135 MenhirLib.EngineTypes.startp = _startpos;
31136 MenhirLib.EngineTypes.endp = _endpos;
31137 MenhirLib.EngineTypes.next = _menhir_stack;
31138 });
31139 (fun _menhir_env ->
31140 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31141 let {
31142 MenhirLib.EngineTypes.semv = _3;
31143 MenhirLib.EngineTypes.startp = _startpos__3_;
31144 MenhirLib.EngineTypes.endp = _endpos__3_;
31145 MenhirLib.EngineTypes.next = {
31146 MenhirLib.EngineTypes.startp = _startpos__2_;
31147 MenhirLib.EngineTypes.endp = _endpos__2_;
31148 MenhirLib.EngineTypes.next = {
31149 MenhirLib.EngineTypes.state = _menhir_s;
31150 MenhirLib.EngineTypes.semv = _1;
31151 MenhirLib.EngineTypes.startp = _startpos__1_;
31152 MenhirLib.EngineTypes.endp = _endpos__1_;
31153 MenhirLib.EngineTypes.next = _menhir_stack;
31154 };
31155 };
31156 } = _menhir_stack in
31157 let _3 : 'tv_pure_ident = Obj.magic _3 in
31158 let _1 : (
31159 # 88 "parser_cocci_menhir.mly"
31160 (string)
31161 # 31135 "parser_cocci_menhir.ml"
31162 ) = Obj.magic _1 in
31163 let _startpos = _startpos__1_ in
31164 let _endpos = _endpos__3_ in
31165 let _v : 'tv_seed_elem =
31166 # 1813 "parser_cocci_menhir.mly"
31167 ( let nm = (_1,P.id2name _3) in
31168 P.check_meta(Ast.MetaIdDecl(Ast.NONE,nm));
31169 Ast.SeedId nm )
31170 # 31144 "parser_cocci_menhir.ml"
31171 in
31172 _menhir_env.MenhirLib.EngineTypes.stack <- {
31173 MenhirLib.EngineTypes.state = _menhir_s;
31174 MenhirLib.EngineTypes.semv = Obj.repr _v;
31175 MenhirLib.EngineTypes.startp = _startpos;
31176 MenhirLib.EngineTypes.endp = _endpos;
31177 MenhirLib.EngineTypes.next = _menhir_stack;
31178 });
31179 (fun _menhir_env ->
31180 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31181 let {
31182 MenhirLib.EngineTypes.state = _menhir_s;
31183 MenhirLib.EngineTypes.semv = x;
31184 MenhirLib.EngineTypes.startp = _startpos_x_;
31185 MenhirLib.EngineTypes.endp = _endpos_x_;
31186 MenhirLib.EngineTypes.next = _menhir_stack;
31187 } = _menhir_stack in
31188 let x : (
31189 # 133 "parser_cocci_menhir.mly"
31190 (string * Data.clt)
31191 # 31165 "parser_cocci_menhir.ml"
31192 ) = Obj.magic x in
31193 let _startpos = _startpos_x_ in
31194 let _endpos = _endpos_x_ in
31195 let _v : 'tv_separated_nonempty_list_TComma_TString_ =
31196 # 144 "standard.mly"
31197 ( [ x ] )
31198 # 31172 "parser_cocci_menhir.ml"
31199 in
31200 _menhir_env.MenhirLib.EngineTypes.stack <- {
31201 MenhirLib.EngineTypes.state = _menhir_s;
31202 MenhirLib.EngineTypes.semv = Obj.repr _v;
31203 MenhirLib.EngineTypes.startp = _startpos;
31204 MenhirLib.EngineTypes.endp = _endpos;
31205 MenhirLib.EngineTypes.next = _menhir_stack;
31206 });
31207 (fun _menhir_env ->
31208 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31209 let {
31210 MenhirLib.EngineTypes.semv = xs;
31211 MenhirLib.EngineTypes.startp = _startpos_xs_;
31212 MenhirLib.EngineTypes.endp = _endpos_xs_;
31213 MenhirLib.EngineTypes.next = {
31214 MenhirLib.EngineTypes.startp = _startpos__2_;
31215 MenhirLib.EngineTypes.endp = _endpos__2_;
31216 MenhirLib.EngineTypes.next = {
31217 MenhirLib.EngineTypes.state = _menhir_s;
31218 MenhirLib.EngineTypes.semv = x;
31219 MenhirLib.EngineTypes.startp = _startpos_x_;
31220 MenhirLib.EngineTypes.endp = _endpos_x_;
31221 MenhirLib.EngineTypes.next = _menhir_stack;
31222 };
31223 };
31224 } = _menhir_stack in
31225 let xs : 'tv_separated_nonempty_list_TComma_TString_ = Obj.magic xs in
31226 let x : (
31227 # 133 "parser_cocci_menhir.mly"
31228 (string * Data.clt)
31229 # 31203 "parser_cocci_menhir.ml"
31230 ) = Obj.magic x in
31231 let _startpos = _startpos_x_ in
31232 let _endpos = _endpos_xs_ in
31233 let _v : 'tv_separated_nonempty_list_TComma_TString_ =
31234 # 146 "standard.mly"
31235 ( x :: xs )
31236 # 31210 "parser_cocci_menhir.ml"
31237 in
31238 _menhir_env.MenhirLib.EngineTypes.stack <- {
31239 MenhirLib.EngineTypes.state = _menhir_s;
31240 MenhirLib.EngineTypes.semv = Obj.repr _v;
31241 MenhirLib.EngineTypes.startp = _startpos;
31242 MenhirLib.EngineTypes.endp = _endpos;
31243 MenhirLib.EngineTypes.next = _menhir_stack;
31244 });
31245 (fun _menhir_env ->
31246 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31247 let {
31248 MenhirLib.EngineTypes.state = _menhir_s;
31249 MenhirLib.EngineTypes.semv = x;
31250 MenhirLib.EngineTypes.startp = _startpos_x_;
31251 MenhirLib.EngineTypes.endp = _endpos_x_;
31252 MenhirLib.EngineTypes.next = _menhir_stack;
31253 } = _menhir_stack in
31254 let x : 'tv_any_strict = Obj.magic x in
31255 let _startpos = _startpos_x_ in
31256 let _endpos = _endpos_x_ in
31257 let _v : 'tv_separated_nonempty_list_TComma_any_strict_ =
31258 # 144 "standard.mly"
31259 ( [ x ] )
31260 # 31234 "parser_cocci_menhir.ml"
31261 in
31262 _menhir_env.MenhirLib.EngineTypes.stack <- {
31263 MenhirLib.EngineTypes.state = _menhir_s;
31264 MenhirLib.EngineTypes.semv = Obj.repr _v;
31265 MenhirLib.EngineTypes.startp = _startpos;
31266 MenhirLib.EngineTypes.endp = _endpos;
31267 MenhirLib.EngineTypes.next = _menhir_stack;
31268 });
31269 (fun _menhir_env ->
31270 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31271 let {
31272 MenhirLib.EngineTypes.semv = xs;
31273 MenhirLib.EngineTypes.startp = _startpos_xs_;
31274 MenhirLib.EngineTypes.endp = _endpos_xs_;
31275 MenhirLib.EngineTypes.next = {
31276 MenhirLib.EngineTypes.startp = _startpos__2_;
31277 MenhirLib.EngineTypes.endp = _endpos__2_;
31278 MenhirLib.EngineTypes.next = {
31279 MenhirLib.EngineTypes.state = _menhir_s;
31280 MenhirLib.EngineTypes.semv = x;
31281 MenhirLib.EngineTypes.startp = _startpos_x_;
31282 MenhirLib.EngineTypes.endp = _endpos_x_;
31283 MenhirLib.EngineTypes.next = _menhir_stack;
31284 };
31285 };
31286 } = _menhir_stack in
31287 let xs : 'tv_separated_nonempty_list_TComma_any_strict_ = Obj.magic xs in
31288 let x : 'tv_any_strict = Obj.magic x in
31289 let _startpos = _startpos_x_ in
31290 let _endpos = _endpos_xs_ in
31291 let _v : 'tv_separated_nonempty_list_TComma_any_strict_ =
31292 # 146 "standard.mly"
31293 ( x :: xs )
31294 # 31268 "parser_cocci_menhir.ml"
31295 in
31296 _menhir_env.MenhirLib.EngineTypes.stack <- {
31297 MenhirLib.EngineTypes.state = _menhir_s;
31298 MenhirLib.EngineTypes.semv = Obj.repr _v;
31299 MenhirLib.EngineTypes.startp = _startpos;
31300 MenhirLib.EngineTypes.endp = _endpos;
31301 MenhirLib.EngineTypes.next = _menhir_stack;
31302 });
31303 (fun _menhir_env ->
31304 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31305 let {
31306 MenhirLib.EngineTypes.state = _menhir_s;
31307 MenhirLib.EngineTypes.semv = x;
31308 MenhirLib.EngineTypes.startp = _startpos_x_;
31309 MenhirLib.EngineTypes.endp = _endpos_x_;
31310 MenhirLib.EngineTypes.next = _menhir_stack;
31311 } = _menhir_stack in
31312 let x : 'tv_ctype = Obj.magic x in
31313 let _startpos = _startpos_x_ in
31314 let _endpos = _endpos_x_ in
31315 let _v : 'tv_separated_nonempty_list_TComma_ctype_ =
31316 # 144 "standard.mly"
31317 ( [ x ] )
31318 # 31292 "parser_cocci_menhir.ml"
31319 in
31320 _menhir_env.MenhirLib.EngineTypes.stack <- {
31321 MenhirLib.EngineTypes.state = _menhir_s;
31322 MenhirLib.EngineTypes.semv = Obj.repr _v;
31323 MenhirLib.EngineTypes.startp = _startpos;
31324 MenhirLib.EngineTypes.endp = _endpos;
31325 MenhirLib.EngineTypes.next = _menhir_stack;
31326 });
31327 (fun _menhir_env ->
31328 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31329 let {
31330 MenhirLib.EngineTypes.semv = xs;
31331 MenhirLib.EngineTypes.startp = _startpos_xs_;
31332 MenhirLib.EngineTypes.endp = _endpos_xs_;
31333 MenhirLib.EngineTypes.next = {
31334 MenhirLib.EngineTypes.startp = _startpos__2_;
31335 MenhirLib.EngineTypes.endp = _endpos__2_;
31336 MenhirLib.EngineTypes.next = {
31337 MenhirLib.EngineTypes.state = _menhir_s;
31338 MenhirLib.EngineTypes.semv = x;
31339 MenhirLib.EngineTypes.startp = _startpos_x_;
31340 MenhirLib.EngineTypes.endp = _endpos_x_;
31341 MenhirLib.EngineTypes.next = _menhir_stack;
31342 };
31343 };
31344 } = _menhir_stack in
31345 let xs : 'tv_separated_nonempty_list_TComma_ctype_ = Obj.magic xs in
31346 let x : 'tv_ctype = Obj.magic x in
31347 let _startpos = _startpos_x_ in
31348 let _endpos = _endpos_xs_ in
31349 let _v : 'tv_separated_nonempty_list_TComma_ctype_ =
31350 # 146 "standard.mly"
31351 ( x :: xs )
31352 # 31326 "parser_cocci_menhir.ml"
31353 in
31354 _menhir_env.MenhirLib.EngineTypes.stack <- {
31355 MenhirLib.EngineTypes.state = _menhir_s;
31356 MenhirLib.EngineTypes.semv = Obj.repr _v;
31357 MenhirLib.EngineTypes.startp = _startpos;
31358 MenhirLib.EngineTypes.endp = _endpos;
31359 MenhirLib.EngineTypes.next = _menhir_stack;
31360 });
31361 (fun _menhir_env ->
31362 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31363 let {
31364 MenhirLib.EngineTypes.state = _menhir_s;
31365 MenhirLib.EngineTypes.semv = x;
31366 MenhirLib.EngineTypes.startp = _startpos_x_;
31367 MenhirLib.EngineTypes.endp = _endpos_x_;
31368 MenhirLib.EngineTypes.next = _menhir_stack;
31369 } = _menhir_stack in
31370 let x : 'tv_d_ident = Obj.magic x in
31371 let _startpos = _startpos_x_ in
31372 let _endpos = _endpos_x_ in
31373 let _v : 'tv_separated_nonempty_list_TComma_d_ident_ =
31374 # 144 "standard.mly"
31375 ( [ x ] )
31376 # 31350 "parser_cocci_menhir.ml"
31377 in
31378 _menhir_env.MenhirLib.EngineTypes.stack <- {
31379 MenhirLib.EngineTypes.state = _menhir_s;
31380 MenhirLib.EngineTypes.semv = Obj.repr _v;
31381 MenhirLib.EngineTypes.startp = _startpos;
31382 MenhirLib.EngineTypes.endp = _endpos;
31383 MenhirLib.EngineTypes.next = _menhir_stack;
31384 });
31385 (fun _menhir_env ->
31386 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31387 let {
31388 MenhirLib.EngineTypes.semv = xs;
31389 MenhirLib.EngineTypes.startp = _startpos_xs_;
31390 MenhirLib.EngineTypes.endp = _endpos_xs_;
31391 MenhirLib.EngineTypes.next = {
31392 MenhirLib.EngineTypes.startp = _startpos__2_;
31393 MenhirLib.EngineTypes.endp = _endpos__2_;
31394 MenhirLib.EngineTypes.next = {
31395 MenhirLib.EngineTypes.state = _menhir_s;
31396 MenhirLib.EngineTypes.semv = x;
31397 MenhirLib.EngineTypes.startp = _startpos_x_;
31398 MenhirLib.EngineTypes.endp = _endpos_x_;
31399 MenhirLib.EngineTypes.next = _menhir_stack;
31400 };
31401 };
31402 } = _menhir_stack in
31403 let xs : 'tv_separated_nonempty_list_TComma_d_ident_ = Obj.magic xs in
31404 let x : 'tv_d_ident = Obj.magic x in
31405 let _startpos = _startpos_x_ in
31406 let _endpos = _endpos_xs_ in
31407 let _v : 'tv_separated_nonempty_list_TComma_d_ident_ =
31408 # 146 "standard.mly"
31409 ( x :: xs )
31410 # 31384 "parser_cocci_menhir.ml"
31411 in
31412 _menhir_env.MenhirLib.EngineTypes.stack <- {
31413 MenhirLib.EngineTypes.state = _menhir_s;
31414 MenhirLib.EngineTypes.semv = Obj.repr _v;
31415 MenhirLib.EngineTypes.startp = _startpos;
31416 MenhirLib.EngineTypes.endp = _endpos;
31417 MenhirLib.EngineTypes.next = _menhir_stack;
31418 });
31419 (fun _menhir_env ->
31420 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31421 let {
31422 MenhirLib.EngineTypes.state = _menhir_s;
31423 MenhirLib.EngineTypes.semv = x;
31424 MenhirLib.EngineTypes.startp = _startpos_x_;
31425 MenhirLib.EngineTypes.endp = _endpos_x_;
31426 MenhirLib.EngineTypes.next = _menhir_stack;
31427 } = _menhir_stack in
31428 let x : 'tv_ident_or_const = Obj.magic x in
31429 let _startpos = _startpos_x_ in
31430 let _endpos = _endpos_x_ in
31431 let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ =
31432 # 144 "standard.mly"
31433 ( [ x ] )
31434 # 31408 "parser_cocci_menhir.ml"
31435 in
31436 _menhir_env.MenhirLib.EngineTypes.stack <- {
31437 MenhirLib.EngineTypes.state = _menhir_s;
31438 MenhirLib.EngineTypes.semv = Obj.repr _v;
31439 MenhirLib.EngineTypes.startp = _startpos;
31440 MenhirLib.EngineTypes.endp = _endpos;
31441 MenhirLib.EngineTypes.next = _menhir_stack;
31442 });
31443 (fun _menhir_env ->
31444 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31445 let {
31446 MenhirLib.EngineTypes.semv = xs;
31447 MenhirLib.EngineTypes.startp = _startpos_xs_;
31448 MenhirLib.EngineTypes.endp = _endpos_xs_;
31449 MenhirLib.EngineTypes.next = {
31450 MenhirLib.EngineTypes.startp = _startpos__2_;
31451 MenhirLib.EngineTypes.endp = _endpos__2_;
31452 MenhirLib.EngineTypes.next = {
31453 MenhirLib.EngineTypes.state = _menhir_s;
31454 MenhirLib.EngineTypes.semv = x;
31455 MenhirLib.EngineTypes.startp = _startpos_x_;
31456 MenhirLib.EngineTypes.endp = _endpos_x_;
31457 MenhirLib.EngineTypes.next = _menhir_stack;
31458 };
31459 };
31460 } = _menhir_stack in
31461 let xs : 'tv_separated_nonempty_list_TComma_ident_or_const_ = Obj.magic xs in
31462 let x : 'tv_ident_or_const = Obj.magic x in
31463 let _startpos = _startpos_x_ in
31464 let _endpos = _endpos_xs_ in
31465 let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ =
31466 # 146 "standard.mly"
31467 ( x :: xs )
31468 # 31442 "parser_cocci_menhir.ml"
31469 in
31470 _menhir_env.MenhirLib.EngineTypes.stack <- {
31471 MenhirLib.EngineTypes.state = _menhir_s;
31472 MenhirLib.EngineTypes.semv = Obj.repr _v;
31473 MenhirLib.EngineTypes.startp = _startpos;
31474 MenhirLib.EngineTypes.endp = _endpos;
31475 MenhirLib.EngineTypes.next = _menhir_stack;
31476 });
31477 (fun _menhir_env ->
31478 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31479 let {
31480 MenhirLib.EngineTypes.state = _menhir_s;
31481 MenhirLib.EngineTypes.semv = x;
31482 MenhirLib.EngineTypes.startp = _startpos_x_;
31483 MenhirLib.EngineTypes.endp = _endpos_x_;
31484 MenhirLib.EngineTypes.next = _menhir_stack;
31485 } = _menhir_stack in
31486 let x : 'tv_meta_ident = Obj.magic x in
31487 let _startpos = _startpos_x_ in
31488 let _endpos = _endpos_x_ in
31489 let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ =
31490 # 144 "standard.mly"
31491 ( [ x ] )
31492 # 31466 "parser_cocci_menhir.ml"
31493 in
31494 _menhir_env.MenhirLib.EngineTypes.stack <- {
31495 MenhirLib.EngineTypes.state = _menhir_s;
31496 MenhirLib.EngineTypes.semv = Obj.repr _v;
31497 MenhirLib.EngineTypes.startp = _startpos;
31498 MenhirLib.EngineTypes.endp = _endpos;
31499 MenhirLib.EngineTypes.next = _menhir_stack;
31500 });
31501 (fun _menhir_env ->
31502 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31503 let {
31504 MenhirLib.EngineTypes.semv = xs;
31505 MenhirLib.EngineTypes.startp = _startpos_xs_;
31506 MenhirLib.EngineTypes.endp = _endpos_xs_;
31507 MenhirLib.EngineTypes.next = {
31508 MenhirLib.EngineTypes.startp = _startpos__2_;
31509 MenhirLib.EngineTypes.endp = _endpos__2_;
31510 MenhirLib.EngineTypes.next = {
31511 MenhirLib.EngineTypes.state = _menhir_s;
31512 MenhirLib.EngineTypes.semv = x;
31513 MenhirLib.EngineTypes.startp = _startpos_x_;
31514 MenhirLib.EngineTypes.endp = _endpos_x_;
31515 MenhirLib.EngineTypes.next = _menhir_stack;
31516 };
31517 };
31518 } = _menhir_stack in
31519 let xs : 'tv_separated_nonempty_list_TComma_meta_ident_ = Obj.magic xs in
31520 let x : 'tv_meta_ident = Obj.magic x in
31521 let _startpos = _startpos_x_ in
31522 let _endpos = _endpos_xs_ in
31523 let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ =
31524 # 146 "standard.mly"
31525 ( x :: xs )
31526 # 31500 "parser_cocci_menhir.ml"
31527 in
31528 _menhir_env.MenhirLib.EngineTypes.stack <- {
31529 MenhirLib.EngineTypes.state = _menhir_s;
31530 MenhirLib.EngineTypes.semv = Obj.repr _v;
31531 MenhirLib.EngineTypes.startp = _startpos;
31532 MenhirLib.EngineTypes.endp = _endpos;
31533 MenhirLib.EngineTypes.next = _menhir_stack;
31534 });
31535 (fun _menhir_env ->
31536 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31537 let {
31538 MenhirLib.EngineTypes.state = _menhir_s;
31539 MenhirLib.EngineTypes.semv = x;
31540 MenhirLib.EngineTypes.startp = _startpos_x_;
31541 MenhirLib.EngineTypes.endp = _endpos_x_;
31542 MenhirLib.EngineTypes.next = _menhir_stack;
31543 } = _menhir_stack in
31544 let x : 'tv_pure_ident = Obj.magic x in
31545 let _startpos = _startpos_x_ in
31546 let _endpos = _endpos_x_ in
31547 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ =
31548 # 144 "standard.mly"
31549 ( [ x ] )
31550 # 31524 "parser_cocci_menhir.ml"
31551 in
31552 _menhir_env.MenhirLib.EngineTypes.stack <- {
31553 MenhirLib.EngineTypes.state = _menhir_s;
31554 MenhirLib.EngineTypes.semv = Obj.repr _v;
31555 MenhirLib.EngineTypes.startp = _startpos;
31556 MenhirLib.EngineTypes.endp = _endpos;
31557 MenhirLib.EngineTypes.next = _menhir_stack;
31558 });
31559 (fun _menhir_env ->
31560 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31561 let {
31562 MenhirLib.EngineTypes.semv = xs;
31563 MenhirLib.EngineTypes.startp = _startpos_xs_;
31564 MenhirLib.EngineTypes.endp = _endpos_xs_;
31565 MenhirLib.EngineTypes.next = {
31566 MenhirLib.EngineTypes.startp = _startpos__2_;
31567 MenhirLib.EngineTypes.endp = _endpos__2_;
31568 MenhirLib.EngineTypes.next = {
31569 MenhirLib.EngineTypes.state = _menhir_s;
31570 MenhirLib.EngineTypes.semv = x;
31571 MenhirLib.EngineTypes.startp = _startpos_x_;
31572 MenhirLib.EngineTypes.endp = _endpos_x_;
31573 MenhirLib.EngineTypes.next = _menhir_stack;
31574 };
31575 };
31576 } = _menhir_stack in
31577 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_ = Obj.magic xs in
31578 let x : 'tv_pure_ident = Obj.magic x in
31579 let _startpos = _startpos_x_ in
31580 let _endpos = _endpos_xs_ in
31581 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ =
31582 # 146 "standard.mly"
31583 ( x :: xs )
31584 # 31558 "parser_cocci_menhir.ml"
31585 in
31586 _menhir_env.MenhirLib.EngineTypes.stack <- {
31587 MenhirLib.EngineTypes.state = _menhir_s;
31588 MenhirLib.EngineTypes.semv = Obj.repr _v;
31589 MenhirLib.EngineTypes.startp = _startpos;
31590 MenhirLib.EngineTypes.endp = _endpos;
31591 MenhirLib.EngineTypes.next = _menhir_stack;
31592 });
31593 (fun _menhir_env ->
31594 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31595 let {
31596 MenhirLib.EngineTypes.state = _menhir_s;
31597 MenhirLib.EngineTypes.semv = x;
31598 MenhirLib.EngineTypes.startp = _startpos_x_;
31599 MenhirLib.EngineTypes.endp = _endpos_x_;
31600 MenhirLib.EngineTypes.next = _menhir_stack;
31601 } = _menhir_stack in
31602 let x : 'tv_pure_ident_or_meta_ident = Obj.magic x in
31603 let _startpos = _startpos_x_ in
31604 let _endpos = _endpos_x_ in
31605 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ =
31606 # 144 "standard.mly"
31607 ( [ x ] )
31608 # 31582 "parser_cocci_menhir.ml"
31609 in
31610 _menhir_env.MenhirLib.EngineTypes.stack <- {
31611 MenhirLib.EngineTypes.state = _menhir_s;
31612 MenhirLib.EngineTypes.semv = Obj.repr _v;
31613 MenhirLib.EngineTypes.startp = _startpos;
31614 MenhirLib.EngineTypes.endp = _endpos;
31615 MenhirLib.EngineTypes.next = _menhir_stack;
31616 });
31617 (fun _menhir_env ->
31618 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31619 let {
31620 MenhirLib.EngineTypes.semv = xs;
31621 MenhirLib.EngineTypes.startp = _startpos_xs_;
31622 MenhirLib.EngineTypes.endp = _endpos_xs_;
31623 MenhirLib.EngineTypes.next = {
31624 MenhirLib.EngineTypes.startp = _startpos__2_;
31625 MenhirLib.EngineTypes.endp = _endpos__2_;
31626 MenhirLib.EngineTypes.next = {
31627 MenhirLib.EngineTypes.state = _menhir_s;
31628 MenhirLib.EngineTypes.semv = x;
31629 MenhirLib.EngineTypes.startp = _startpos_x_;
31630 MenhirLib.EngineTypes.endp = _endpos_x_;
31631 MenhirLib.EngineTypes.next = _menhir_stack;
31632 };
31633 };
31634 } = _menhir_stack in
31635 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = Obj.magic xs in
31636 let x : 'tv_pure_ident_or_meta_ident = Obj.magic x in
31637 let _startpos = _startpos_x_ in
31638 let _endpos = _endpos_xs_ in
31639 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ =
31640 # 146 "standard.mly"
31641 ( x :: xs )
31642 # 31616 "parser_cocci_menhir.ml"
31643 in
31644 _menhir_env.MenhirLib.EngineTypes.stack <- {
31645 MenhirLib.EngineTypes.state = _menhir_s;
31646 MenhirLib.EngineTypes.semv = Obj.repr _v;
31647 MenhirLib.EngineTypes.startp = _startpos;
31648 MenhirLib.EngineTypes.endp = _endpos;
31649 MenhirLib.EngineTypes.next = _menhir_stack;
31650 });
31651 (fun _menhir_env ->
31652 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31653 let {
31654 MenhirLib.EngineTypes.state = _menhir_s;
31655 MenhirLib.EngineTypes.semv = x;
31656 MenhirLib.EngineTypes.startp = _startpos_x_;
31657 MenhirLib.EngineTypes.endp = _endpos_x_;
31658 MenhirLib.EngineTypes.next = _menhir_stack;
31659 } = _menhir_stack in
31660 let x : 'tv_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub_ = Obj.magic x in
31661 let _startpos = _startpos_x_ in
31662 let _endpos = _endpos_x_ in
31663 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ =
31664 # 144 "standard.mly"
31665 ( [ x ] )
31666 # 31640 "parser_cocci_menhir.ml"
31667 in
31668 _menhir_env.MenhirLib.EngineTypes.stack <- {
31669 MenhirLib.EngineTypes.state = _menhir_s;
31670 MenhirLib.EngineTypes.semv = Obj.repr _v;
31671 MenhirLib.EngineTypes.startp = _startpos;
31672 MenhirLib.EngineTypes.endp = _endpos;
31673 MenhirLib.EngineTypes.next = _menhir_stack;
31674 });
31675 (fun _menhir_env ->
31676 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31677 let {
31678 MenhirLib.EngineTypes.semv = xs;
31679 MenhirLib.EngineTypes.startp = _startpos_xs_;
31680 MenhirLib.EngineTypes.endp = _endpos_xs_;
31681 MenhirLib.EngineTypes.next = {
31682 MenhirLib.EngineTypes.startp = _startpos__2_;
31683 MenhirLib.EngineTypes.endp = _endpos__2_;
31684 MenhirLib.EngineTypes.next = {
31685 MenhirLib.EngineTypes.state = _menhir_s;
31686 MenhirLib.EngineTypes.semv = x;
31687 MenhirLib.EngineTypes.startp = _startpos_x_;
31688 MenhirLib.EngineTypes.endp = _endpos_x_;
31689 MenhirLib.EngineTypes.next = _menhir_stack;
31690 };
31691 };
31692 } = _menhir_stack in
31693 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ = Obj.magic xs in
31694 let x : 'tv_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub_ = Obj.magic x in
31695 let _startpos = _startpos_x_ in
31696 let _endpos = _endpos_xs_ in
31697 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ =
31698 # 146 "standard.mly"
31699 ( x :: xs )
31700 # 31674 "parser_cocci_menhir.ml"
31701 in
31702 _menhir_env.MenhirLib.EngineTypes.stack <- {
31703 MenhirLib.EngineTypes.state = _menhir_s;
31704 MenhirLib.EngineTypes.semv = Obj.repr _v;
31705 MenhirLib.EngineTypes.startp = _startpos;
31706 MenhirLib.EngineTypes.endp = _endpos;
31707 MenhirLib.EngineTypes.next = _menhir_stack;
31708 });
31709 (fun _menhir_env ->
31710 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31711 let {
31712 MenhirLib.EngineTypes.state = _menhir_s;
31713 MenhirLib.EngineTypes.semv = x;
31714 MenhirLib.EngineTypes.startp = _startpos_x_;
31715 MenhirLib.EngineTypes.endp = _endpos_x_;
31716 MenhirLib.EngineTypes.next = _menhir_stack;
31717 } = _menhir_stack in
31718 let x : 'tv_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub_ = Obj.magic x in
31719 let _startpos = _startpos_x_ in
31720 let _endpos = _endpos_x_ in
31721 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ =
31722 # 144 "standard.mly"
31723 ( [ x ] )
31724 # 31698 "parser_cocci_menhir.ml"
31725 in
31726 _menhir_env.MenhirLib.EngineTypes.stack <- {
31727 MenhirLib.EngineTypes.state = _menhir_s;
31728 MenhirLib.EngineTypes.semv = Obj.repr _v;
31729 MenhirLib.EngineTypes.startp = _startpos;
31730 MenhirLib.EngineTypes.endp = _endpos;
31731 MenhirLib.EngineTypes.next = _menhir_stack;
31732 });
31733 (fun _menhir_env ->
31734 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31735 let {
31736 MenhirLib.EngineTypes.semv = xs;
31737 MenhirLib.EngineTypes.startp = _startpos_xs_;
31738 MenhirLib.EngineTypes.endp = _endpos_xs_;
31739 MenhirLib.EngineTypes.next = {
31740 MenhirLib.EngineTypes.startp = _startpos__2_;
31741 MenhirLib.EngineTypes.endp = _endpos__2_;
31742 MenhirLib.EngineTypes.next = {
31743 MenhirLib.EngineTypes.state = _menhir_s;
31744 MenhirLib.EngineTypes.semv = x;
31745 MenhirLib.EngineTypes.startp = _startpos_x_;
31746 MenhirLib.EngineTypes.endp = _endpos_x_;
31747 MenhirLib.EngineTypes.next = _menhir_stack;
31748 };
31749 };
31750 } = _menhir_stack in
31751 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic xs in
31752 let x : 'tv_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub_ = Obj.magic x in
31753 let _startpos = _startpos_x_ in
31754 let _endpos = _endpos_xs_ in
31755 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ =
31756 # 146 "standard.mly"
31757 ( x :: xs )
31758 # 31732 "parser_cocci_menhir.ml"
31759 in
31760 _menhir_env.MenhirLib.EngineTypes.stack <- {
31761 MenhirLib.EngineTypes.state = _menhir_s;
31762 MenhirLib.EngineTypes.semv = Obj.repr _v;
31763 MenhirLib.EngineTypes.startp = _startpos;
31764 MenhirLib.EngineTypes.endp = _endpos;
31765 MenhirLib.EngineTypes.next = _menhir_stack;
31766 });
31767 (fun _menhir_env ->
31768 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31769 let {
31770 MenhirLib.EngineTypes.state = _menhir_s;
31771 MenhirLib.EngineTypes.semv = x;
31772 MenhirLib.EngineTypes.startp = _startpos_x_;
31773 MenhirLib.EngineTypes.endp = _endpos_x_;
31774 MenhirLib.EngineTypes.next = _menhir_stack;
31775 } = _menhir_stack in
31776 let x : 'tv_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid_ = Obj.magic x in
31777 let _startpos = _startpos_x_ in
31778 let _endpos = _endpos_x_ in
31779 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ =
31780 # 144 "standard.mly"
31781 ( [ x ] )
31782 # 31756 "parser_cocci_menhir.ml"
31783 in
31784 _menhir_env.MenhirLib.EngineTypes.stack <- {
31785 MenhirLib.EngineTypes.state = _menhir_s;
31786 MenhirLib.EngineTypes.semv = Obj.repr _v;
31787 MenhirLib.EngineTypes.startp = _startpos;
31788 MenhirLib.EngineTypes.endp = _endpos;
31789 MenhirLib.EngineTypes.next = _menhir_stack;
31790 });
31791 (fun _menhir_env ->
31792 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31793 let {
31794 MenhirLib.EngineTypes.semv = xs;
31795 MenhirLib.EngineTypes.startp = _startpos_xs_;
31796 MenhirLib.EngineTypes.endp = _endpos_xs_;
31797 MenhirLib.EngineTypes.next = {
31798 MenhirLib.EngineTypes.startp = _startpos__2_;
31799 MenhirLib.EngineTypes.endp = _endpos__2_;
31800 MenhirLib.EngineTypes.next = {
31801 MenhirLib.EngineTypes.state = _menhir_s;
31802 MenhirLib.EngineTypes.semv = x;
31803 MenhirLib.EngineTypes.startp = _startpos_x_;
31804 MenhirLib.EngineTypes.endp = _endpos_x_;
31805 MenhirLib.EngineTypes.next = _menhir_stack;
31806 };
31807 };
31808 } = _menhir_stack in
31809 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic xs in
31810 let x : 'tv_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid_ = Obj.magic x in
31811 let _startpos = _startpos_x_ in
31812 let _endpos = _endpos_xs_ in
31813 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ =
31814 # 146 "standard.mly"
31815 ( x :: xs )
31816 # 31790 "parser_cocci_menhir.ml"
31817 in
31818 _menhir_env.MenhirLib.EngineTypes.stack <- {
31819 MenhirLib.EngineTypes.state = _menhir_s;
31820 MenhirLib.EngineTypes.semv = Obj.repr _v;
31821 MenhirLib.EngineTypes.startp = _startpos;
31822 MenhirLib.EngineTypes.endp = _endpos;
31823 MenhirLib.EngineTypes.next = _menhir_stack;
31824 });
31825 (fun _menhir_env ->
31826 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31827 let {
31828 MenhirLib.EngineTypes.state = _menhir_s;
31829 MenhirLib.EngineTypes.semv = x;
31830 MenhirLib.EngineTypes.startp = _startpos_x_;
31831 MenhirLib.EngineTypes.endp = _endpos_x_;
31832 MenhirLib.EngineTypes.next = _menhir_stack;
31833 } = _menhir_stack in
31834 let x : 'tv_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid_ = Obj.magic x in
31835 let _startpos = _startpos_x_ in
31836 let _endpos = _endpos_x_ in
31837 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ =
31838 # 144 "standard.mly"
31839 ( [ x ] )
31840 # 31814 "parser_cocci_menhir.ml"
31841 in
31842 _menhir_env.MenhirLib.EngineTypes.stack <- {
31843 MenhirLib.EngineTypes.state = _menhir_s;
31844 MenhirLib.EngineTypes.semv = Obj.repr _v;
31845 MenhirLib.EngineTypes.startp = _startpos;
31846 MenhirLib.EngineTypes.endp = _endpos;
31847 MenhirLib.EngineTypes.next = _menhir_stack;
31848 });
31849 (fun _menhir_env ->
31850 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31851 let {
31852 MenhirLib.EngineTypes.semv = xs;
31853 MenhirLib.EngineTypes.startp = _startpos_xs_;
31854 MenhirLib.EngineTypes.endp = _endpos_xs_;
31855 MenhirLib.EngineTypes.next = {
31856 MenhirLib.EngineTypes.startp = _startpos__2_;
31857 MenhirLib.EngineTypes.endp = _endpos__2_;
31858 MenhirLib.EngineTypes.next = {
31859 MenhirLib.EngineTypes.state = _menhir_s;
31860 MenhirLib.EngineTypes.semv = x;
31861 MenhirLib.EngineTypes.startp = _startpos_x_;
31862 MenhirLib.EngineTypes.endp = _endpos_x_;
31863 MenhirLib.EngineTypes.next = _menhir_stack;
31864 };
31865 };
31866 } = _menhir_stack in
31867 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ = Obj.magic xs in
31868 let x : 'tv_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid_ = Obj.magic x in
31869 let _startpos = _startpos_x_ in
31870 let _endpos = _endpos_xs_ in
31871 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ =
31872 # 146 "standard.mly"
31873 ( x :: xs )
31874 # 31848 "parser_cocci_menhir.ml"
31875 in
31876 _menhir_env.MenhirLib.EngineTypes.stack <- {
31877 MenhirLib.EngineTypes.state = _menhir_s;
31878 MenhirLib.EngineTypes.semv = Obj.repr _v;
31879 MenhirLib.EngineTypes.startp = _startpos;
31880 MenhirLib.EngineTypes.endp = _endpos;
31881 MenhirLib.EngineTypes.next = _menhir_stack;
31882 });
31883 (fun _menhir_env ->
31884 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31885 let {
31886 MenhirLib.EngineTypes.state = _menhir_s;
31887 MenhirLib.EngineTypes.semv = x;
31888 MenhirLib.EngineTypes.startp = _startpos_x_;
31889 MenhirLib.EngineTypes.endp = _endpos_x_;
31890 MenhirLib.EngineTypes.next = _menhir_stack;
31891 } = _menhir_stack in
31892 let x : 'tv_pure_ident_or_meta_ident_with_seed = Obj.magic x in
31893 let _startpos = _startpos_x_ in
31894 let _endpos = _endpos_x_ in
31895 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_seed_ =
31896 # 144 "standard.mly"
31897 ( [ x ] )
31898 # 31872 "parser_cocci_menhir.ml"
31899 in
31900 _menhir_env.MenhirLib.EngineTypes.stack <- {
31901 MenhirLib.EngineTypes.state = _menhir_s;
31902 MenhirLib.EngineTypes.semv = Obj.repr _v;
31903 MenhirLib.EngineTypes.startp = _startpos;
31904 MenhirLib.EngineTypes.endp = _endpos;
31905 MenhirLib.EngineTypes.next = _menhir_stack;
31906 });
31907 (fun _menhir_env ->
31908 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31909 let {
31910 MenhirLib.EngineTypes.semv = xs;
31911 MenhirLib.EngineTypes.startp = _startpos_xs_;
31912 MenhirLib.EngineTypes.endp = _endpos_xs_;
31913 MenhirLib.EngineTypes.next = {
31914 MenhirLib.EngineTypes.startp = _startpos__2_;
31915 MenhirLib.EngineTypes.endp = _endpos__2_;
31916 MenhirLib.EngineTypes.next = {
31917 MenhirLib.EngineTypes.state = _menhir_s;
31918 MenhirLib.EngineTypes.semv = x;
31919 MenhirLib.EngineTypes.startp = _startpos_x_;
31920 MenhirLib.EngineTypes.endp = _endpos_x_;
31921 MenhirLib.EngineTypes.next = _menhir_stack;
31922 };
31923 };
31924 } = _menhir_stack in
31925 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_seed_ = Obj.magic xs in
31926 let x : 'tv_pure_ident_or_meta_ident_with_seed = Obj.magic x in
31927 let _startpos = _startpos_x_ in
31928 let _endpos = _endpos_xs_ in
31929 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_seed_ =
31930 # 146 "standard.mly"
31931 ( x :: xs )
31932 # 31906 "parser_cocci_menhir.ml"
31933 in
31934 _menhir_env.MenhirLib.EngineTypes.stack <- {
31935 MenhirLib.EngineTypes.state = _menhir_s;
31936 MenhirLib.EngineTypes.semv = Obj.repr _v;
31937 MenhirLib.EngineTypes.startp = _startpos;
31938 MenhirLib.EngineTypes.endp = _endpos;
31939 MenhirLib.EngineTypes.next = _menhir_stack;
31940 });
31941 (fun _menhir_env ->
31942 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31943 let {
31944 MenhirLib.EngineTypes.state = _menhir_s;
31945 MenhirLib.EngineTypes.semv = x;
31946 MenhirLib.EngineTypes.startp = _startpos_x_;
31947 MenhirLib.EngineTypes.endp = _endpos_x_;
31948 MenhirLib.EngineTypes.next = _menhir_stack;
31949 } = _menhir_stack in
31950 let x : 'tv_pure_ident_or_meta_ident_with_x_eq_not_pos_ = Obj.magic x in
31951 let _startpos = _startpos_x_ in
31952 let _endpos = _endpos_x_ in
31953 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_x_eq_not_pos__ =
31954 # 144 "standard.mly"
31955 ( [ x ] )
31956 # 31930 "parser_cocci_menhir.ml"
31957 in
31958 _menhir_env.MenhirLib.EngineTypes.stack <- {
31959 MenhirLib.EngineTypes.state = _menhir_s;
31960 MenhirLib.EngineTypes.semv = Obj.repr _v;
31961 MenhirLib.EngineTypes.startp = _startpos;
31962 MenhirLib.EngineTypes.endp = _endpos;
31963 MenhirLib.EngineTypes.next = _menhir_stack;
31964 });
31965 (fun _menhir_env ->
31966 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
31967 let {
31968 MenhirLib.EngineTypes.semv = xs;
31969 MenhirLib.EngineTypes.startp = _startpos_xs_;
31970 MenhirLib.EngineTypes.endp = _endpos_xs_;
31971 MenhirLib.EngineTypes.next = {
31972 MenhirLib.EngineTypes.startp = _startpos__2_;
31973 MenhirLib.EngineTypes.endp = _endpos__2_;
31974 MenhirLib.EngineTypes.next = {
31975 MenhirLib.EngineTypes.state = _menhir_s;
31976 MenhirLib.EngineTypes.semv = x;
31977 MenhirLib.EngineTypes.startp = _startpos_x_;
31978 MenhirLib.EngineTypes.endp = _endpos_x_;
31979 MenhirLib.EngineTypes.next = _menhir_stack;
31980 };
31981 };
31982 } = _menhir_stack in
31983 let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_x_eq_not_pos__ = Obj.magic xs in
31984 let x : 'tv_pure_ident_or_meta_ident_with_x_eq_not_pos_ = Obj.magic x in
31985 let _startpos = _startpos_x_ in
31986 let _endpos = _endpos_xs_ in
31987 let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_x_eq_not_pos__ =
31988 # 146 "standard.mly"
31989 ( x :: xs )
31990 # 31964 "parser_cocci_menhir.ml"
31991 in
31992 _menhir_env.MenhirLib.EngineTypes.stack <- {
31993 MenhirLib.EngineTypes.state = _menhir_s;
31994 MenhirLib.EngineTypes.semv = Obj.repr _v;
31995 MenhirLib.EngineTypes.startp = _startpos;
31996 MenhirLib.EngineTypes.endp = _endpos;
31997 MenhirLib.EngineTypes.next = _menhir_stack;
31998 });
31999 (fun _menhir_env ->
32000 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32001 let {
32002 MenhirLib.EngineTypes.state = _menhir_s;
32003 MenhirLib.EngineTypes.semv = x;
32004 MenhirLib.EngineTypes.startp = _startpos_x_;
32005 MenhirLib.EngineTypes.endp = _endpos_x_;
32006 MenhirLib.EngineTypes.next = _menhir_stack;
32007 } = _menhir_stack in
32008 let x : 'tv_typedef_ident = Obj.magic x in
32009 let _startpos = _startpos_x_ in
32010 let _endpos = _endpos_x_ in
32011 let _v : 'tv_separated_nonempty_list_TComma_typedef_ident_ =
32012 # 144 "standard.mly"
32013 ( [ x ] )
32014 # 31988 "parser_cocci_menhir.ml"
32015 in
32016 _menhir_env.MenhirLib.EngineTypes.stack <- {
32017 MenhirLib.EngineTypes.state = _menhir_s;
32018 MenhirLib.EngineTypes.semv = Obj.repr _v;
32019 MenhirLib.EngineTypes.startp = _startpos;
32020 MenhirLib.EngineTypes.endp = _endpos;
32021 MenhirLib.EngineTypes.next = _menhir_stack;
32022 });
32023 (fun _menhir_env ->
32024 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32025 let {
32026 MenhirLib.EngineTypes.semv = xs;
32027 MenhirLib.EngineTypes.startp = _startpos_xs_;
32028 MenhirLib.EngineTypes.endp = _endpos_xs_;
32029 MenhirLib.EngineTypes.next = {
32030 MenhirLib.EngineTypes.startp = _startpos__2_;
32031 MenhirLib.EngineTypes.endp = _endpos__2_;
32032 MenhirLib.EngineTypes.next = {
32033 MenhirLib.EngineTypes.state = _menhir_s;
32034 MenhirLib.EngineTypes.semv = x;
32035 MenhirLib.EngineTypes.startp = _startpos_x_;
32036 MenhirLib.EngineTypes.endp = _endpos_x_;
32037 MenhirLib.EngineTypes.next = _menhir_stack;
32038 };
32039 };
32040 } = _menhir_stack in
32041 let xs : 'tv_separated_nonempty_list_TComma_typedef_ident_ = Obj.magic xs in
32042 let x : 'tv_typedef_ident = Obj.magic x in
32043 let _startpos = _startpos_x_ in
32044 let _endpos = _endpos_xs_ in
32045 let _v : 'tv_separated_nonempty_list_TComma_typedef_ident_ =
32046 # 146 "standard.mly"
32047 ( x :: xs )
32048 # 32022 "parser_cocci_menhir.ml"
32049 in
32050 _menhir_env.MenhirLib.EngineTypes.stack <- {
32051 MenhirLib.EngineTypes.state = _menhir_s;
32052 MenhirLib.EngineTypes.semv = Obj.repr _v;
32053 MenhirLib.EngineTypes.startp = _startpos;
32054 MenhirLib.EngineTypes.endp = _endpos;
32055 MenhirLib.EngineTypes.next = _menhir_stack;
32056 });
32057 (fun _menhir_env ->
32058 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32059 let {
32060 MenhirLib.EngineTypes.state = _menhir_s;
32061 MenhirLib.EngineTypes.semv = x;
32062 MenhirLib.EngineTypes.startp = _startpos_x_;
32063 MenhirLib.EngineTypes.endp = _endpos_x_;
32064 MenhirLib.EngineTypes.next = _menhir_stack;
32065 } = _menhir_stack in
32066 let x : 'tv_seed_elem = Obj.magic x in
32067 let _startpos = _startpos_x_ in
32068 let _endpos = _endpos_x_ in
32069 let _v : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ =
32070 # 144 "standard.mly"
32071 ( [ x ] )
32072 # 32046 "parser_cocci_menhir.ml"
32073 in
32074 _menhir_env.MenhirLib.EngineTypes.stack <- {
32075 MenhirLib.EngineTypes.state = _menhir_s;
32076 MenhirLib.EngineTypes.semv = Obj.repr _v;
32077 MenhirLib.EngineTypes.startp = _startpos;
32078 MenhirLib.EngineTypes.endp = _endpos;
32079 MenhirLib.EngineTypes.next = _menhir_stack;
32080 });
32081 (fun _menhir_env ->
32082 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32083 let {
32084 MenhirLib.EngineTypes.semv = xs;
32085 MenhirLib.EngineTypes.startp = _startpos_xs_;
32086 MenhirLib.EngineTypes.endp = _endpos_xs_;
32087 MenhirLib.EngineTypes.next = {
32088 MenhirLib.EngineTypes.startp = _startpos__2_;
32089 MenhirLib.EngineTypes.endp = _endpos__2_;
32090 MenhirLib.EngineTypes.next = {
32091 MenhirLib.EngineTypes.state = _menhir_s;
32092 MenhirLib.EngineTypes.semv = x;
32093 MenhirLib.EngineTypes.startp = _startpos_x_;
32094 MenhirLib.EngineTypes.endp = _endpos_x_;
32095 MenhirLib.EngineTypes.next = _menhir_stack;
32096 };
32097 };
32098 } = _menhir_stack in
32099 let xs : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ = Obj.magic xs in
32100 let x : 'tv_seed_elem = Obj.magic x in
32101 let _startpos = _startpos_x_ in
32102 let _endpos = _endpos_xs_ in
32103 let _v : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ =
32104 # 146 "standard.mly"
32105 ( x :: xs )
32106 # 32080 "parser_cocci_menhir.ml"
32107 in
32108 _menhir_env.MenhirLib.EngineTypes.stack <- {
32109 MenhirLib.EngineTypes.state = _menhir_s;
32110 MenhirLib.EngineTypes.semv = Obj.repr _v;
32111 MenhirLib.EngineTypes.startp = _startpos;
32112 MenhirLib.EngineTypes.endp = _endpos;
32113 MenhirLib.EngineTypes.next = _menhir_stack;
32114 });
32115 (fun _menhir_env ->
32116 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32117 let {
32118 MenhirLib.EngineTypes.state = _menhir_s;
32119 MenhirLib.EngineTypes.semv = ty;
32120 MenhirLib.EngineTypes.startp = _startpos_ty_;
32121 MenhirLib.EngineTypes.endp = _endpos_ty_;
32122 MenhirLib.EngineTypes.next = _menhir_stack;
32123 } = _menhir_stack in
32124 let ty : (
32125 # 90 "parser_cocci_menhir.mly"
32126 (Data.clt)
32127 # 32101 "parser_cocci_menhir.ml"
32128 ) = Obj.magic ty in
32129 let _startpos = _startpos_ty_ in
32130 let _endpos = _endpos_ty_ in
32131 let _v : 'tv_signable_types =
32132 # 626 "parser_cocci_menhir.mly"
32133 ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
32134 # 32108 "parser_cocci_menhir.ml"
32135 in
32136 _menhir_env.MenhirLib.EngineTypes.stack <- {
32137 MenhirLib.EngineTypes.state = _menhir_s;
32138 MenhirLib.EngineTypes.semv = Obj.repr _v;
32139 MenhirLib.EngineTypes.startp = _startpos;
32140 MenhirLib.EngineTypes.endp = _endpos;
32141 MenhirLib.EngineTypes.next = _menhir_stack;
32142 });
32143 (fun _menhir_env ->
32144 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32145 let {
32146 MenhirLib.EngineTypes.state = _menhir_s;
32147 MenhirLib.EngineTypes.semv = ty;
32148 MenhirLib.EngineTypes.startp = _startpos_ty_;
32149 MenhirLib.EngineTypes.endp = _endpos_ty_;
32150 MenhirLib.EngineTypes.next = _menhir_stack;
32151 } = _menhir_stack in
32152 let ty : (
32153 # 90 "parser_cocci_menhir.mly"
32154 (Data.clt)
32155 # 32129 "parser_cocci_menhir.ml"
32156 ) = Obj.magic ty in
32157 let _startpos = _startpos_ty_ in
32158 let _endpos = _endpos_ty_ in
32159 let _v : 'tv_signable_types =
32160 # 628 "parser_cocci_menhir.mly"
32161 ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
32162 # 32136 "parser_cocci_menhir.ml"
32163 in
32164 _menhir_env.MenhirLib.EngineTypes.stack <- {
32165 MenhirLib.EngineTypes.state = _menhir_s;
32166 MenhirLib.EngineTypes.semv = Obj.repr _v;
32167 MenhirLib.EngineTypes.startp = _startpos;
32168 MenhirLib.EngineTypes.endp = _endpos;
32169 MenhirLib.EngineTypes.next = _menhir_stack;
32170 });
32171 (fun _menhir_env ->
32172 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32173 let {
32174 MenhirLib.EngineTypes.semv = ty2;
32175 MenhirLib.EngineTypes.startp = _startpos_ty2_;
32176 MenhirLib.EngineTypes.endp = _endpos_ty2_;
32177 MenhirLib.EngineTypes.next = {
32178 MenhirLib.EngineTypes.state = _menhir_s;
32179 MenhirLib.EngineTypes.semv = ty1;
32180 MenhirLib.EngineTypes.startp = _startpos_ty1_;
32181 MenhirLib.EngineTypes.endp = _endpos_ty1_;
32182 MenhirLib.EngineTypes.next = _menhir_stack;
32183 };
32184 } = _menhir_stack in
32185 let ty2 : (
32186 # 90 "parser_cocci_menhir.mly"
32187 (Data.clt)
32188 # 32162 "parser_cocci_menhir.ml"
32189 ) = Obj.magic ty2 in
32190 let ty1 : (
32191 # 90 "parser_cocci_menhir.mly"
32192 (Data.clt)
32193 # 32167 "parser_cocci_menhir.ml"
32194 ) = Obj.magic ty1 in
32195 let _startpos = _startpos_ty1_ in
32196 let _endpos = _endpos_ty2_ in
32197 let _v : 'tv_signable_types =
32198 # 630 "parser_cocci_menhir.mly"
32199 ( Ast0.wrap
32200 (Ast0.BaseType
32201 (Ast.ShortIntType,[P.clt2mcode "short" ty1;P.clt2mcode "int" ty2])) )
32202 # 32176 "parser_cocci_menhir.ml"
32203 in
32204 _menhir_env.MenhirLib.EngineTypes.stack <- {
32205 MenhirLib.EngineTypes.state = _menhir_s;
32206 MenhirLib.EngineTypes.semv = Obj.repr _v;
32207 MenhirLib.EngineTypes.startp = _startpos;
32208 MenhirLib.EngineTypes.endp = _endpos;
32209 MenhirLib.EngineTypes.next = _menhir_stack;
32210 });
32211 (fun _menhir_env ->
32212 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32213 let {
32214 MenhirLib.EngineTypes.state = _menhir_s;
32215 MenhirLib.EngineTypes.semv = ty;
32216 MenhirLib.EngineTypes.startp = _startpos_ty_;
32217 MenhirLib.EngineTypes.endp = _endpos_ty_;
32218 MenhirLib.EngineTypes.next = _menhir_stack;
32219 } = _menhir_stack in
32220 let ty : (
32221 # 90 "parser_cocci_menhir.mly"
32222 (Data.clt)
32223 # 32197 "parser_cocci_menhir.ml"
32224 ) = Obj.magic ty in
32225 let _startpos = _startpos_ty_ in
32226 let _endpos = _endpos_ty_ in
32227 let _v : 'tv_signable_types =
32228 # 634 "parser_cocci_menhir.mly"
32229 ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
32230 # 32204 "parser_cocci_menhir.ml"
32231 in
32232 _menhir_env.MenhirLib.EngineTypes.stack <- {
32233 MenhirLib.EngineTypes.state = _menhir_s;
32234 MenhirLib.EngineTypes.semv = Obj.repr _v;
32235 MenhirLib.EngineTypes.startp = _startpos;
32236 MenhirLib.EngineTypes.endp = _endpos;
32237 MenhirLib.EngineTypes.next = _menhir_stack;
32238 });
32239 (fun _menhir_env ->
32240 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32241 let {
32242 MenhirLib.EngineTypes.state = _menhir_s;
32243 MenhirLib.EngineTypes.semv = p;
32244 MenhirLib.EngineTypes.startp = _startpos_p_;
32245 MenhirLib.EngineTypes.endp = _endpos_p_;
32246 MenhirLib.EngineTypes.next = _menhir_stack;
32247 } = _menhir_stack in
32248 let p : (
32249 # 108 "parser_cocci_menhir.mly"
32250 (Parse_aux.info)
32251 # 32225 "parser_cocci_menhir.ml"
32252 ) = Obj.magic p in
32253 let _startpos = _startpos_p_ in
32254 let _endpos = _endpos_p_ in
32255 let _v : 'tv_signable_types =
32256 # 636 "parser_cocci_menhir.mly"
32257 ( let (nm,pure,clt) = p in
32258 Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
32259 # 32233 "parser_cocci_menhir.ml"
32260 in
32261 _menhir_env.MenhirLib.EngineTypes.stack <- {
32262 MenhirLib.EngineTypes.state = _menhir_s;
32263 MenhirLib.EngineTypes.semv = Obj.repr _v;
32264 MenhirLib.EngineTypes.startp = _startpos;
32265 MenhirLib.EngineTypes.endp = _endpos;
32266 MenhirLib.EngineTypes.next = _menhir_stack;
32267 });
32268 (fun _menhir_env ->
32269 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32270 let {
32271 MenhirLib.EngineTypes.semv = p;
32272 MenhirLib.EngineTypes.startp = _startpos_p_;
32273 MenhirLib.EngineTypes.endp = _endpos_p_;
32274 MenhirLib.EngineTypes.next = {
32275 MenhirLib.EngineTypes.startp = _startpos__2_;
32276 MenhirLib.EngineTypes.endp = _endpos__2_;
32277 MenhirLib.EngineTypes.next = {
32278 MenhirLib.EngineTypes.state = _menhir_s;
32279 MenhirLib.EngineTypes.semv = r;
32280 MenhirLib.EngineTypes.startp = _startpos_r_;
32281 MenhirLib.EngineTypes.endp = _endpos_r_;
32282 MenhirLib.EngineTypes.next = _menhir_stack;
32283 };
32284 };
32285 } = _menhir_stack in
32286 let p : (
32287 # 101 "parser_cocci_menhir.mly"
32288 (string * Data.clt)
32289 # 32263 "parser_cocci_menhir.ml"
32290 ) = Obj.magic p in
32291 let r : (
32292 # 88 "parser_cocci_menhir.mly"
32293 (string)
32294 # 32268 "parser_cocci_menhir.ml"
32295 ) = Obj.magic r in
32296 let _startpos = _startpos_r_ in
32297 let _endpos = _endpos_p_ in
32298 let _v : 'tv_signable_types =
32299 # 639 "parser_cocci_menhir.mly"
32300 ( let nm = (r,P.id2name p) in
32301 (* this is only possible when we are in a metavar decl. Otherwise,
32302 it will be represented already as a MetaType *)
32303 let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
32304 Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
32305 Ast0.Impure (*will be ignored*))) )
32306 # 32280 "parser_cocci_menhir.ml"
32307 in
32308 _menhir_env.MenhirLib.EngineTypes.stack <- {
32309 MenhirLib.EngineTypes.state = _menhir_s;
32310 MenhirLib.EngineTypes.semv = Obj.repr _v;
32311 MenhirLib.EngineTypes.startp = _startpos;
32312 MenhirLib.EngineTypes.endp = _endpos;
32313 MenhirLib.EngineTypes.next = _menhir_stack;
32314 });
32315 (fun _menhir_env ->
32316 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32317 let {
32318 MenhirLib.EngineTypes.state = _menhir_s;
32319 MenhirLib.EngineTypes.semv = ty1;
32320 MenhirLib.EngineTypes.startp = _startpos_ty1_;
32321 MenhirLib.EngineTypes.endp = _endpos_ty1_;
32322 MenhirLib.EngineTypes.next = _menhir_stack;
32323 } = _menhir_stack in
32324 let ty1 : (
32325 # 90 "parser_cocci_menhir.mly"
32326 (Data.clt)
32327 # 32301 "parser_cocci_menhir.ml"
32328 ) = Obj.magic ty1 in
32329 let _startpos = _startpos_ty1_ in
32330 let _endpos = _endpos_ty1_ in
32331 let _v : 'tv_signable_types =
32332 # 646 "parser_cocci_menhir.mly"
32333 ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty1])) )
32334 # 32308 "parser_cocci_menhir.ml"
32335 in
32336 _menhir_env.MenhirLib.EngineTypes.stack <- {
32337 MenhirLib.EngineTypes.state = _menhir_s;
32338 MenhirLib.EngineTypes.semv = Obj.repr _v;
32339 MenhirLib.EngineTypes.startp = _startpos;
32340 MenhirLib.EngineTypes.endp = _endpos;
32341 MenhirLib.EngineTypes.next = _menhir_stack;
32342 });
32343 (fun _menhir_env ->
32344 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32345 let {
32346 MenhirLib.EngineTypes.semv = ty2;
32347 MenhirLib.EngineTypes.startp = _startpos_ty2_;
32348 MenhirLib.EngineTypes.endp = _endpos_ty2_;
32349 MenhirLib.EngineTypes.next = {
32350 MenhirLib.EngineTypes.state = _menhir_s;
32351 MenhirLib.EngineTypes.semv = ty1;
32352 MenhirLib.EngineTypes.startp = _startpos_ty1_;
32353 MenhirLib.EngineTypes.endp = _endpos_ty1_;
32354 MenhirLib.EngineTypes.next = _menhir_stack;
32355 };
32356 } = _menhir_stack in
32357 let ty2 : (
32358 # 90 "parser_cocci_menhir.mly"
32359 (Data.clt)
32360 # 32334 "parser_cocci_menhir.ml"
32361 ) = Obj.magic ty2 in
32362 let ty1 : (
32363 # 90 "parser_cocci_menhir.mly"
32364 (Data.clt)
32365 # 32339 "parser_cocci_menhir.ml"
32366 ) = Obj.magic ty1 in
32367 let _startpos = _startpos_ty1_ in
32368 let _endpos = _endpos_ty2_ in
32369 let _v : 'tv_signable_types =
32370 # 648 "parser_cocci_menhir.mly"
32371 ( Ast0.wrap
32372 (Ast0.BaseType
32373 (Ast.LongIntType,[P.clt2mcode "long" ty1;P.clt2mcode "int" ty2])) )
32374 # 32348 "parser_cocci_menhir.ml"
32375 in
32376 _menhir_env.MenhirLib.EngineTypes.stack <- {
32377 MenhirLib.EngineTypes.state = _menhir_s;
32378 MenhirLib.EngineTypes.semv = Obj.repr _v;
32379 MenhirLib.EngineTypes.startp = _startpos;
32380 MenhirLib.EngineTypes.endp = _endpos;
32381 MenhirLib.EngineTypes.next = _menhir_stack;
32382 });
32383 (fun _menhir_env ->
32384 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32385 let {
32386 MenhirLib.EngineTypes.semv = ty2;
32387 MenhirLib.EngineTypes.startp = _startpos_ty2_;
32388 MenhirLib.EngineTypes.endp = _endpos_ty2_;
32389 MenhirLib.EngineTypes.next = {
32390 MenhirLib.EngineTypes.state = _menhir_s;
32391 MenhirLib.EngineTypes.semv = ty1;
32392 MenhirLib.EngineTypes.startp = _startpos_ty1_;
32393 MenhirLib.EngineTypes.endp = _endpos_ty1_;
32394 MenhirLib.EngineTypes.next = _menhir_stack;
32395 };
32396 } = _menhir_stack in
32397 let ty2 : (
32398 # 90 "parser_cocci_menhir.mly"
32399 (Data.clt)
32400 # 32374 "parser_cocci_menhir.ml"
32401 ) = Obj.magic ty2 in
32402 let ty1 : (
32403 # 90 "parser_cocci_menhir.mly"
32404 (Data.clt)
32405 # 32379 "parser_cocci_menhir.ml"
32406 ) = Obj.magic ty1 in
32407 let _startpos = _startpos_ty1_ in
32408 let _endpos = _endpos_ty2_ in
32409 let _v : 'tv_signable_types =
32410 # 652 "parser_cocci_menhir.mly"
32411 ( Ast0.wrap
32412 (Ast0.BaseType
32413 (Ast.LongLongType,
32414 [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
32415 # 32389 "parser_cocci_menhir.ml"
32416 in
32417 _menhir_env.MenhirLib.EngineTypes.stack <- {
32418 MenhirLib.EngineTypes.state = _menhir_s;
32419 MenhirLib.EngineTypes.semv = Obj.repr _v;
32420 MenhirLib.EngineTypes.startp = _startpos;
32421 MenhirLib.EngineTypes.endp = _endpos;
32422 MenhirLib.EngineTypes.next = _menhir_stack;
32423 });
32424 (fun _menhir_env ->
32425 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32426 let {
32427 MenhirLib.EngineTypes.semv = ty3;
32428 MenhirLib.EngineTypes.startp = _startpos_ty3_;
32429 MenhirLib.EngineTypes.endp = _endpos_ty3_;
32430 MenhirLib.EngineTypes.next = {
32431 MenhirLib.EngineTypes.semv = ty2;
32432 MenhirLib.EngineTypes.startp = _startpos_ty2_;
32433 MenhirLib.EngineTypes.endp = _endpos_ty2_;
32434 MenhirLib.EngineTypes.next = {
32435 MenhirLib.EngineTypes.state = _menhir_s;
32436 MenhirLib.EngineTypes.semv = ty1;
32437 MenhirLib.EngineTypes.startp = _startpos_ty1_;
32438 MenhirLib.EngineTypes.endp = _endpos_ty1_;
32439 MenhirLib.EngineTypes.next = _menhir_stack;
32440 };
32441 };
32442 } = _menhir_stack in
32443 let ty3 : (
32444 # 90 "parser_cocci_menhir.mly"
32445 (Data.clt)
32446 # 32420 "parser_cocci_menhir.ml"
32447 ) = Obj.magic ty3 in
32448 let ty2 : (
32449 # 90 "parser_cocci_menhir.mly"
32450 (Data.clt)
32451 # 32425 "parser_cocci_menhir.ml"
32452 ) = Obj.magic ty2 in
32453 let ty1 : (
32454 # 90 "parser_cocci_menhir.mly"
32455 (Data.clt)
32456 # 32430 "parser_cocci_menhir.ml"
32457 ) = Obj.magic ty1 in
32458 let _startpos = _startpos_ty1_ in
32459 let _endpos = _endpos_ty3_ in
32460 let _v : 'tv_signable_types =
32461 # 657 "parser_cocci_menhir.mly"
32462 ( Ast0.wrap
32463 (Ast0.BaseType
32464 (Ast.LongLongIntType,
32465 [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2;
32466 P.clt2mcode "int" ty3])) )
32467 # 32441 "parser_cocci_menhir.ml"
32468 in
32469 _menhir_env.MenhirLib.EngineTypes.stack <- {
32470 MenhirLib.EngineTypes.state = _menhir_s;
32471 MenhirLib.EngineTypes.semv = Obj.repr _v;
32472 MenhirLib.EngineTypes.startp = _startpos;
32473 MenhirLib.EngineTypes.endp = _endpos;
32474 MenhirLib.EngineTypes.next = _menhir_stack;
32475 });
32476 (fun _menhir_env ->
32477 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32478 let {
32479 MenhirLib.EngineTypes.state = _menhir_s;
32480 MenhirLib.EngineTypes.semv = _1;
32481 MenhirLib.EngineTypes.startp = _startpos__1_;
32482 MenhirLib.EngineTypes.endp = _endpos__1_;
32483 MenhirLib.EngineTypes.next = _menhir_stack;
32484 } = _menhir_stack in
32485 let _1 : 'tv_statement = Obj.magic _1 in
32486 let _startpos = _startpos__1_ in
32487 let _endpos = _endpos__1_ in
32488 let _v : 'tv_single_statement =
32489 # 1172 "parser_cocci_menhir.mly"
32490 ( _1 )
32491 # 32465 "parser_cocci_menhir.ml"
32492 in
32493 _menhir_env.MenhirLib.EngineTypes.stack <- {
32494 MenhirLib.EngineTypes.state = _menhir_s;
32495 MenhirLib.EngineTypes.semv = Obj.repr _v;
32496 MenhirLib.EngineTypes.startp = _startpos;
32497 MenhirLib.EngineTypes.endp = _endpos;
32498 MenhirLib.EngineTypes.next = _menhir_stack;
32499 });
32500 (fun _menhir_env ->
32501 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32502 let {
32503 MenhirLib.EngineTypes.semv = _3;
32504 MenhirLib.EngineTypes.startp = _startpos__3_;
32505 MenhirLib.EngineTypes.endp = _endpos__3_;
32506 MenhirLib.EngineTypes.next = {
32507 MenhirLib.EngineTypes.semv = _2;
32508 MenhirLib.EngineTypes.startp = _startpos__2_;
32509 MenhirLib.EngineTypes.endp = _endpos__2_;
32510 MenhirLib.EngineTypes.next = {
32511 MenhirLib.EngineTypes.state = _menhir_s;
32512 MenhirLib.EngineTypes.semv = _1;
32513 MenhirLib.EngineTypes.startp = _startpos__1_;
32514 MenhirLib.EngineTypes.endp = _endpos__1_;
32515 MenhirLib.EngineTypes.next = _menhir_stack;
32516 };
32517 };
32518 } = _menhir_stack in
32519 let _3 : (
32520 # 123 "parser_cocci_menhir.mly"
32521 (Data.clt)
32522 # 32496 "parser_cocci_menhir.ml"
32523 ) = Obj.magic _3 in
32524 let _2 : 'tv_midzero_list_statement_statement_ = Obj.magic _2 in
32525 let _1 : (
32526 # 122 "parser_cocci_menhir.mly"
32527 (Data.clt)
32528 # 32502 "parser_cocci_menhir.ml"
32529 ) = Obj.magic _1 in
32530 let _startpos = _startpos__1_ in
32531 let _endpos = _endpos__3_ in
32532 let _v : 'tv_single_statement =
32533 # 1176 "parser_cocci_menhir.mly"
32534 ( let (mids,code) = _2 in
32535 Ast0.wrap
32536 (Ast0.Disj(P.clt2mcode "(" _1,
32537 List.map (function x -> Ast0.wrap(Ast0.DOTS([x]))) code,
32538 mids, P.clt2mcode ")" _3)) )
32539 # 32513 "parser_cocci_menhir.ml"
32540 in
32541 _menhir_env.MenhirLib.EngineTypes.stack <- {
32542 MenhirLib.EngineTypes.state = _menhir_s;
32543 MenhirLib.EngineTypes.semv = Obj.repr _v;
32544 MenhirLib.EngineTypes.startp = _startpos;
32545 MenhirLib.EngineTypes.endp = _endpos;
32546 MenhirLib.EngineTypes.next = _menhir_stack;
32547 });
32548 (fun _menhir_env ->
32549 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32550 let {
32551 MenhirLib.EngineTypes.state = _menhir_s;
32552 MenhirLib.EngineTypes.semv = _1;
32553 MenhirLib.EngineTypes.startp = _startpos__1_;
32554 MenhirLib.EngineTypes.endp = _endpos__1_;
32555 MenhirLib.EngineTypes.next = _menhir_stack;
32556 } = _menhir_stack in
32557 let _1 : 'tv_includes = Obj.magic _1 in
32558 let _startpos = _startpos__1_ in
32559 let _endpos = _endpos__1_ in
32560 let _v : 'tv_statement =
32561 # 1095 "parser_cocci_menhir.mly"
32562 ( _1 )
32563 # 32537 "parser_cocci_menhir.ml"
32564 in
32565 _menhir_env.MenhirLib.EngineTypes.stack <- {
32566 MenhirLib.EngineTypes.state = _menhir_s;
32567 MenhirLib.EngineTypes.semv = Obj.repr _v;
32568 MenhirLib.EngineTypes.startp = _startpos;
32569 MenhirLib.EngineTypes.endp = _endpos;
32570 MenhirLib.EngineTypes.next = _menhir_stack;
32571 });
32572 (fun _menhir_env ->
32573 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32574 let {
32575 MenhirLib.EngineTypes.state = _menhir_s;
32576 MenhirLib.EngineTypes.semv = _1;
32577 MenhirLib.EngineTypes.startp = _startpos__1_;
32578 MenhirLib.EngineTypes.endp = _endpos__1_;
32579 MenhirLib.EngineTypes.next = _menhir_stack;
32580 } = _menhir_stack in
32581 let _1 : (
32582 # 109 "parser_cocci_menhir.mly"
32583 (Parse_aux.info)
32584 # 32558 "parser_cocci_menhir.ml"
32585 ) = Obj.magic _1 in
32586 let _startpos = _startpos__1_ in
32587 let _endpos = _endpos__1_ in
32588 let _v : 'tv_statement =
32589 # 1096 "parser_cocci_menhir.mly"
32590 ( tmeta_to_statement _1)
32591 # 32565 "parser_cocci_menhir.ml"
32592 in
32593 _menhir_env.MenhirLib.EngineTypes.stack <- {
32594 MenhirLib.EngineTypes.state = _menhir_s;
32595 MenhirLib.EngineTypes.semv = Obj.repr _v;
32596 MenhirLib.EngineTypes.startp = _startpos;
32597 MenhirLib.EngineTypes.endp = _endpos;
32598 MenhirLib.EngineTypes.next = _menhir_stack;
32599 });
32600 (fun _menhir_env ->
32601 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32602 let {
32603 MenhirLib.EngineTypes.state = _menhir_s;
32604 MenhirLib.EngineTypes.semv = _1;
32605 MenhirLib.EngineTypes.startp = _startpos__1_;
32606 MenhirLib.EngineTypes.endp = _endpos__1_;
32607 MenhirLib.EngineTypes.next = _menhir_stack;
32608 } = _menhir_stack in
32609 let _1 : (
32610 # 108 "parser_cocci_menhir.mly"
32611 (Parse_aux.info)
32612 # 32586 "parser_cocci_menhir.ml"
32613 ) = Obj.magic _1 in
32614 let _startpos = _startpos__1_ in
32615 let _endpos = _endpos__1_ in
32616 let _v : 'tv_statement =
32617 # 1098 "parser_cocci_menhir.mly"
32618 ( P.meta_stm _1 )
32619 # 32593 "parser_cocci_menhir.ml"
32620 in
32621 _menhir_env.MenhirLib.EngineTypes.stack <- {
32622 MenhirLib.EngineTypes.state = _menhir_s;
32623 MenhirLib.EngineTypes.semv = Obj.repr _v;
32624 MenhirLib.EngineTypes.startp = _startpos;
32625 MenhirLib.EngineTypes.endp = _endpos;
32626 MenhirLib.EngineTypes.next = _menhir_stack;
32627 });
32628 (fun _menhir_env ->
32629 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32630 let {
32631 MenhirLib.EngineTypes.semv = _2;
32632 MenhirLib.EngineTypes.startp = _startpos__2_;
32633 MenhirLib.EngineTypes.endp = _endpos__2_;
32634 MenhirLib.EngineTypes.next = {
32635 MenhirLib.EngineTypes.state = _menhir_s;
32636 MenhirLib.EngineTypes.semv = _1;
32637 MenhirLib.EngineTypes.startp = _startpos__1_;
32638 MenhirLib.EngineTypes.endp = _endpos__1_;
32639 MenhirLib.EngineTypes.next = _menhir_stack;
32640 };
32641 } = _menhir_stack in
32642 let _2 : (
32643 # 153 "parser_cocci_menhir.mly"
32644 (Data.clt)
32645 # 32619 "parser_cocci_menhir.ml"
32646 ) = Obj.magic _2 in
32647 let _1 : 'tv_option_expr_ = Obj.magic _1 in
32648 let _startpos = _startpos__1_ in
32649 let _endpos = _endpos__2_ in
32650 let _v : 'tv_statement =
32651 # 1100 "parser_cocci_menhir.mly"
32652 ( P.exp_stm _1 _2 )
32653 # 32627 "parser_cocci_menhir.ml"
32654 in
32655 _menhir_env.MenhirLib.EngineTypes.stack <- {
32656 MenhirLib.EngineTypes.state = _menhir_s;
32657 MenhirLib.EngineTypes.semv = Obj.repr _v;
32658 MenhirLib.EngineTypes.startp = _startpos;
32659 MenhirLib.EngineTypes.endp = _endpos;
32660 MenhirLib.EngineTypes.next = _menhir_stack;
32661 });
32662 (fun _menhir_env ->
32663 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32664 let {
32665 MenhirLib.EngineTypes.semv = _5;
32666 MenhirLib.EngineTypes.startp = _startpos__5_;
32667 MenhirLib.EngineTypes.endp = _endpos__5_;
32668 MenhirLib.EngineTypes.next = {
32669 MenhirLib.EngineTypes.semv = _4;
32670 MenhirLib.EngineTypes.startp = _startpos__4_;
32671 MenhirLib.EngineTypes.endp = _endpos__4_;
32672 MenhirLib.EngineTypes.next = {
32673 MenhirLib.EngineTypes.semv = _3;
32674 MenhirLib.EngineTypes.startp = _startpos__3_;
32675 MenhirLib.EngineTypes.endp = _endpos__3_;
32676 MenhirLib.EngineTypes.next = {
32677 MenhirLib.EngineTypes.semv = _2;
32678 MenhirLib.EngineTypes.startp = _startpos__2_;
32679 MenhirLib.EngineTypes.endp = _endpos__2_;
32680 MenhirLib.EngineTypes.next = {
32681 MenhirLib.EngineTypes.state = _menhir_s;
32682 MenhirLib.EngineTypes.semv = _1;
32683 MenhirLib.EngineTypes.startp = _startpos__1_;
32684 MenhirLib.EngineTypes.endp = _endpos__1_;
32685 MenhirLib.EngineTypes.next = _menhir_stack;
32686 };
32687 };
32688 };
32689 };
32690 } = _menhir_stack in
32691 let _5 : 'tv_single_statement = Obj.magic _5 in
32692 let _4 : (
32693 # 123 "parser_cocci_menhir.mly"
32694 (Data.clt)
32695 # 32669 "parser_cocci_menhir.ml"
32696 ) = Obj.magic _4 in
32697 let _3 : 'tv_eexpr = Obj.magic _3 in
32698 let _2 : (
32699 # 122 "parser_cocci_menhir.mly"
32700 (Data.clt)
32701 # 32675 "parser_cocci_menhir.ml"
32702 ) = Obj.magic _2 in
32703 let _1 : (
32704 # 99 "parser_cocci_menhir.mly"
32705 (Data.clt)
32706 # 32680 "parser_cocci_menhir.ml"
32707 ) = Obj.magic _1 in
32708 let _startpos = _startpos__1_ in
32709 let _endpos = _endpos__5_ in
32710 let _v : 'tv_statement =
32711 # 1102 "parser_cocci_menhir.mly"
32712 ( P.ifthen _1 _2 _3 _4 _5 )
32713 # 32687 "parser_cocci_menhir.ml"
32714 in
32715 _menhir_env.MenhirLib.EngineTypes.stack <- {
32716 MenhirLib.EngineTypes.state = _menhir_s;
32717 MenhirLib.EngineTypes.semv = Obj.repr _v;
32718 MenhirLib.EngineTypes.startp = _startpos;
32719 MenhirLib.EngineTypes.endp = _endpos;
32720 MenhirLib.EngineTypes.next = _menhir_stack;
32721 });
32722 (fun _menhir_env ->
32723 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32724 let {
32725 MenhirLib.EngineTypes.semv = _7;
32726 MenhirLib.EngineTypes.startp = _startpos__7_;
32727 MenhirLib.EngineTypes.endp = _endpos__7_;
32728 MenhirLib.EngineTypes.next = {
32729 MenhirLib.EngineTypes.semv = _6;
32730 MenhirLib.EngineTypes.startp = _startpos__6_;
32731 MenhirLib.EngineTypes.endp = _endpos__6_;
32732 MenhirLib.EngineTypes.next = {
32733 MenhirLib.EngineTypes.semv = _5;
32734 MenhirLib.EngineTypes.startp = _startpos__5_;
32735 MenhirLib.EngineTypes.endp = _endpos__5_;
32736 MenhirLib.EngineTypes.next = {
32737 MenhirLib.EngineTypes.semv = _4;
32738 MenhirLib.EngineTypes.startp = _startpos__4_;
32739 MenhirLib.EngineTypes.endp = _endpos__4_;
32740 MenhirLib.EngineTypes.next = {
32741 MenhirLib.EngineTypes.semv = _3;
32742 MenhirLib.EngineTypes.startp = _startpos__3_;
32743 MenhirLib.EngineTypes.endp = _endpos__3_;
32744 MenhirLib.EngineTypes.next = {
32745 MenhirLib.EngineTypes.semv = _2;
32746 MenhirLib.EngineTypes.startp = _startpos__2_;
32747 MenhirLib.EngineTypes.endp = _endpos__2_;
32748 MenhirLib.EngineTypes.next = {
32749 MenhirLib.EngineTypes.state = _menhir_s;
32750 MenhirLib.EngineTypes.semv = _1;
32751 MenhirLib.EngineTypes.startp = _startpos__1_;
32752 MenhirLib.EngineTypes.endp = _endpos__1_;
32753 MenhirLib.EngineTypes.next = _menhir_stack;
32754 };
32755 };
32756 };
32757 };
32758 };
32759 };
32760 } = _menhir_stack in
32761 let _7 : 'tv_single_statement = Obj.magic _7 in
32762 let _6 : (
32763 # 99 "parser_cocci_menhir.mly"
32764 (Data.clt)
32765 # 32739 "parser_cocci_menhir.ml"
32766 ) = Obj.magic _6 in
32767 let _5 : 'tv_single_statement = Obj.magic _5 in
32768 let _4 : (
32769 # 123 "parser_cocci_menhir.mly"
32770 (Data.clt)
32771 # 32745 "parser_cocci_menhir.ml"
32772 ) = Obj.magic _4 in
32773 let _3 : 'tv_eexpr = Obj.magic _3 in
32774 let _2 : (
32775 # 122 "parser_cocci_menhir.mly"
32776 (Data.clt)
32777 # 32751 "parser_cocci_menhir.ml"
32778 ) = Obj.magic _2 in
32779 let _1 : (
32780 # 99 "parser_cocci_menhir.mly"
32781 (Data.clt)
32782 # 32756 "parser_cocci_menhir.ml"
32783 ) = Obj.magic _1 in
32784 let _startpos = _startpos__1_ in
32785 let _endpos = _endpos__7_ in
32786 let _v : 'tv_statement =
32787 # 1104 "parser_cocci_menhir.mly"
32788 ( P.ifthenelse _1 _2 _3 _4 _5 _6 _7 )
32789 # 32763 "parser_cocci_menhir.ml"
32790 in
32791 _menhir_env.MenhirLib.EngineTypes.stack <- {
32792 MenhirLib.EngineTypes.state = _menhir_s;
32793 MenhirLib.EngineTypes.semv = Obj.repr _v;
32794 MenhirLib.EngineTypes.startp = _startpos;
32795 MenhirLib.EngineTypes.endp = _endpos;
32796 MenhirLib.EngineTypes.next = _menhir_stack;
32797 });
32798 (fun _menhir_env ->
32799 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32800 let {
32801 MenhirLib.EngineTypes.semv = _9;
32802 MenhirLib.EngineTypes.startp = _startpos__9_;
32803 MenhirLib.EngineTypes.endp = _endpos__9_;
32804 MenhirLib.EngineTypes.next = {
32805 MenhirLib.EngineTypes.semv = _8;
32806 MenhirLib.EngineTypes.startp = _startpos__8_;
32807 MenhirLib.EngineTypes.endp = _endpos__8_;
32808 MenhirLib.EngineTypes.next = {
32809 MenhirLib.EngineTypes.semv = _7;
32810 MenhirLib.EngineTypes.startp = _startpos__7_;
32811 MenhirLib.EngineTypes.endp = _endpos__7_;
32812 MenhirLib.EngineTypes.next = {
32813 MenhirLib.EngineTypes.semv = _6;
32814 MenhirLib.EngineTypes.startp = _startpos__6_;
32815 MenhirLib.EngineTypes.endp = _endpos__6_;
32816 MenhirLib.EngineTypes.next = {
32817 MenhirLib.EngineTypes.semv = _5;
32818 MenhirLib.EngineTypes.startp = _startpos__5_;
32819 MenhirLib.EngineTypes.endp = _endpos__5_;
32820 MenhirLib.EngineTypes.next = {
32821 MenhirLib.EngineTypes.semv = _4;
32822 MenhirLib.EngineTypes.startp = _startpos__4_;
32823 MenhirLib.EngineTypes.endp = _endpos__4_;
32824 MenhirLib.EngineTypes.next = {
32825 MenhirLib.EngineTypes.semv = _3;
32826 MenhirLib.EngineTypes.startp = _startpos__3_;
32827 MenhirLib.EngineTypes.endp = _endpos__3_;
32828 MenhirLib.EngineTypes.next = {
32829 MenhirLib.EngineTypes.semv = _2;
32830 MenhirLib.EngineTypes.startp = _startpos__2_;
32831 MenhirLib.EngineTypes.endp = _endpos__2_;
32832 MenhirLib.EngineTypes.next = {
32833 MenhirLib.EngineTypes.state = _menhir_s;
32834 MenhirLib.EngineTypes.semv = _1;
32835 MenhirLib.EngineTypes.startp = _startpos__1_;
32836 MenhirLib.EngineTypes.endp = _endpos__1_;
32837 MenhirLib.EngineTypes.next = _menhir_stack;
32838 };
32839 };
32840 };
32841 };
32842 };
32843 };
32844 };
32845 };
32846 } = _menhir_stack in
32847 let _9 : 'tv_single_statement = Obj.magic _9 in
32848 let _8 : (
32849 # 123 "parser_cocci_menhir.mly"
32850 (Data.clt)
32851 # 32825 "parser_cocci_menhir.ml"
32852 ) = Obj.magic _8 in
32853 let _7 : 'tv_option_eexpr_ = Obj.magic _7 in
32854 let _6 : (
32855 # 153 "parser_cocci_menhir.mly"
32856 (Data.clt)
32857 # 32831 "parser_cocci_menhir.ml"
32858 ) = Obj.magic _6 in
32859 let _5 : 'tv_option_eexpr_ = Obj.magic _5 in
32860 let _4 : (
32861 # 153 "parser_cocci_menhir.mly"
32862 (Data.clt)
32863 # 32837 "parser_cocci_menhir.ml"
32864 ) = Obj.magic _4 in
32865 let _3 : 'tv_option_eexpr_ = Obj.magic _3 in
32866 let _2 : (
32867 # 122 "parser_cocci_menhir.mly"
32868 (Data.clt)
32869 # 32843 "parser_cocci_menhir.ml"
32870 ) = Obj.magic _2 in
32871 let _1 : (
32872 # 99 "parser_cocci_menhir.mly"
32873 (Data.clt)
32874 # 32848 "parser_cocci_menhir.ml"
32875 ) = Obj.magic _1 in
32876 let _startpos = _startpos__1_ in
32877 let _endpos = _endpos__9_ in
32878 let _v : 'tv_statement =
32879 # 1107 "parser_cocci_menhir.mly"
32880 ( P.forloop _1 _2 _3 _4 _5 _6 _7 _8 _9 )
32881 # 32855 "parser_cocci_menhir.ml"
32882 in
32883 _menhir_env.MenhirLib.EngineTypes.stack <- {
32884 MenhirLib.EngineTypes.state = _menhir_s;
32885 MenhirLib.EngineTypes.semv = Obj.repr _v;
32886 MenhirLib.EngineTypes.startp = _startpos;
32887 MenhirLib.EngineTypes.endp = _endpos;
32888 MenhirLib.EngineTypes.next = _menhir_stack;
32889 });
32890 (fun _menhir_env ->
32891 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32892 let {
32893 MenhirLib.EngineTypes.semv = _8;
32894 MenhirLib.EngineTypes.startp = _startpos__8_;
32895 MenhirLib.EngineTypes.endp = _endpos__8_;
32896 MenhirLib.EngineTypes.next = {
32897 MenhirLib.EngineTypes.semv = _7;
32898 MenhirLib.EngineTypes.startp = _startpos__7_;
32899 MenhirLib.EngineTypes.endp = _endpos__7_;
32900 MenhirLib.EngineTypes.next = {
32901 MenhirLib.EngineTypes.semv = _6;
32902 MenhirLib.EngineTypes.startp = _startpos__6_;
32903 MenhirLib.EngineTypes.endp = _endpos__6_;
32904 MenhirLib.EngineTypes.next = {
32905 MenhirLib.EngineTypes.semv = _5;
32906 MenhirLib.EngineTypes.startp = _startpos__5_;
32907 MenhirLib.EngineTypes.endp = _endpos__5_;
32908 MenhirLib.EngineTypes.next = {
32909 MenhirLib.EngineTypes.semv = _4;
32910 MenhirLib.EngineTypes.startp = _startpos__4_;
32911 MenhirLib.EngineTypes.endp = _endpos__4_;
32912 MenhirLib.EngineTypes.next = {
32913 MenhirLib.EngineTypes.semv = _3;
32914 MenhirLib.EngineTypes.startp = _startpos__3_;
32915 MenhirLib.EngineTypes.endp = _endpos__3_;
32916 MenhirLib.EngineTypes.next = {
32917 MenhirLib.EngineTypes.semv = _2;
32918 MenhirLib.EngineTypes.startp = _startpos__2_;
32919 MenhirLib.EngineTypes.endp = _endpos__2_;
32920 MenhirLib.EngineTypes.next = {
32921 MenhirLib.EngineTypes.state = _menhir_s;
32922 MenhirLib.EngineTypes.semv = _1;
32923 MenhirLib.EngineTypes.startp = _startpos__1_;
32924 MenhirLib.EngineTypes.endp = _endpos__1_;
32925 MenhirLib.EngineTypes.next = _menhir_stack;
32926 };
32927 };
32928 };
32929 };
32930 };
32931 };
32932 };
32933 } = _menhir_stack in
32934 let _8 : 'tv_single_statement = Obj.magic _8 in
32935 let _7 : (
32936 # 123 "parser_cocci_menhir.mly"
32937 (Data.clt)
32938 # 32912 "parser_cocci_menhir.ml"
32939 ) = Obj.magic _7 in
32940 let _6 : 'tv_option_eexpr_ = Obj.magic _6 in
32941 let _5 : (
32942 # 153 "parser_cocci_menhir.mly"
32943 (Data.clt)
32944 # 32918 "parser_cocci_menhir.ml"
32945 ) = Obj.magic _5 in
32946 let _4 : 'tv_option_eexpr_ = Obj.magic _4 in
32947 let _3 : 'tv_one_decl_var = Obj.magic _3 in
32948 let _2 : (
32949 # 122 "parser_cocci_menhir.mly"
32950 (Data.clt)
32951 # 32925 "parser_cocci_menhir.ml"
32952 ) = Obj.magic _2 in
32953 let _1 : (
32954 # 99 "parser_cocci_menhir.mly"
32955 (Data.clt)
32956 # 32930 "parser_cocci_menhir.ml"
32957 ) = Obj.magic _1 in
32958 let _startpos = _startpos__1_ in
32959 let _endpos = _endpos__8_ in
32960 let _v : 'tv_statement =
32961 # 1110 "parser_cocci_menhir.mly"
32962 ( P.forloop2 _1 _2 _3 _4 _5 _6 _7 _8 )
32963 # 32937 "parser_cocci_menhir.ml"
32964 in
32965 _menhir_env.MenhirLib.EngineTypes.stack <- {
32966 MenhirLib.EngineTypes.state = _menhir_s;
32967 MenhirLib.EngineTypes.semv = Obj.repr _v;
32968 MenhirLib.EngineTypes.startp = _startpos;
32969 MenhirLib.EngineTypes.endp = _endpos;
32970 MenhirLib.EngineTypes.next = _menhir_stack;
32971 });
32972 (fun _menhir_env ->
32973 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
32974 let {
32975 MenhirLib.EngineTypes.semv = _5;
32976 MenhirLib.EngineTypes.startp = _startpos__5_;
32977 MenhirLib.EngineTypes.endp = _endpos__5_;
32978 MenhirLib.EngineTypes.next = {
32979 MenhirLib.EngineTypes.semv = _4;
32980 MenhirLib.EngineTypes.startp = _startpos__4_;
32981 MenhirLib.EngineTypes.endp = _endpos__4_;
32982 MenhirLib.EngineTypes.next = {
32983 MenhirLib.EngineTypes.semv = _3;
32984 MenhirLib.EngineTypes.startp = _startpos__3_;
32985 MenhirLib.EngineTypes.endp = _endpos__3_;
32986 MenhirLib.EngineTypes.next = {
32987 MenhirLib.EngineTypes.semv = _2;
32988 MenhirLib.EngineTypes.startp = _startpos__2_;
32989 MenhirLib.EngineTypes.endp = _endpos__2_;
32990 MenhirLib.EngineTypes.next = {
32991 MenhirLib.EngineTypes.state = _menhir_s;
32992 MenhirLib.EngineTypes.semv = _1;
32993 MenhirLib.EngineTypes.startp = _startpos__1_;
32994 MenhirLib.EngineTypes.endp = _endpos__1_;
32995 MenhirLib.EngineTypes.next = _menhir_stack;
32996 };
32997 };
32998 };
32999 };
33000 } = _menhir_stack in
33001 let _5 : 'tv_single_statement = Obj.magic _5 in
33002 let _4 : (
33003 # 123 "parser_cocci_menhir.mly"
33004 (Data.clt)
33005 # 32979 "parser_cocci_menhir.ml"
33006 ) = Obj.magic _4 in
33007 let _3 : 'tv_eexpr = Obj.magic _3 in
33008 let _2 : (
33009 # 122 "parser_cocci_menhir.mly"
33010 (Data.clt)
33011 # 32985 "parser_cocci_menhir.ml"
33012 ) = Obj.magic _2 in
33013 let _1 : (
33014 # 99 "parser_cocci_menhir.mly"
33015 (Data.clt)
33016 # 32990 "parser_cocci_menhir.ml"
33017 ) = Obj.magic _1 in
33018 let _startpos = _startpos__1_ in
33019 let _endpos = _endpos__5_ in
33020 let _v : 'tv_statement =
33021 # 1112 "parser_cocci_menhir.mly"
33022 ( P.whileloop _1 _2 _3 _4 _5 )
33023 # 32997 "parser_cocci_menhir.ml"
33024 in
33025 _menhir_env.MenhirLib.EngineTypes.stack <- {
33026 MenhirLib.EngineTypes.state = _menhir_s;
33027 MenhirLib.EngineTypes.semv = Obj.repr _v;
33028 MenhirLib.EngineTypes.startp = _startpos;
33029 MenhirLib.EngineTypes.endp = _endpos;
33030 MenhirLib.EngineTypes.next = _menhir_stack;
33031 });
33032 (fun _menhir_env ->
33033 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33034 let {
33035 MenhirLib.EngineTypes.semv = _7;
33036 MenhirLib.EngineTypes.startp = _startpos__7_;
33037 MenhirLib.EngineTypes.endp = _endpos__7_;
33038 MenhirLib.EngineTypes.next = {
33039 MenhirLib.EngineTypes.semv = _6;
33040 MenhirLib.EngineTypes.startp = _startpos__6_;
33041 MenhirLib.EngineTypes.endp = _endpos__6_;
33042 MenhirLib.EngineTypes.next = {
33043 MenhirLib.EngineTypes.semv = _5;
33044 MenhirLib.EngineTypes.startp = _startpos__5_;
33045 MenhirLib.EngineTypes.endp = _endpos__5_;
33046 MenhirLib.EngineTypes.next = {
33047 MenhirLib.EngineTypes.semv = _4;
33048 MenhirLib.EngineTypes.startp = _startpos__4_;
33049 MenhirLib.EngineTypes.endp = _endpos__4_;
33050 MenhirLib.EngineTypes.next = {
33051 MenhirLib.EngineTypes.semv = _3;
33052 MenhirLib.EngineTypes.startp = _startpos__3_;
33053 MenhirLib.EngineTypes.endp = _endpos__3_;
33054 MenhirLib.EngineTypes.next = {
33055 MenhirLib.EngineTypes.semv = _2;
33056 MenhirLib.EngineTypes.startp = _startpos__2_;
33057 MenhirLib.EngineTypes.endp = _endpos__2_;
33058 MenhirLib.EngineTypes.next = {
33059 MenhirLib.EngineTypes.state = _menhir_s;
33060 MenhirLib.EngineTypes.semv = _1;
33061 MenhirLib.EngineTypes.startp = _startpos__1_;
33062 MenhirLib.EngineTypes.endp = _endpos__1_;
33063 MenhirLib.EngineTypes.next = _menhir_stack;
33064 };
33065 };
33066 };
33067 };
33068 };
33069 };
33070 } = _menhir_stack in
33071 let _7 : (
33072 # 153 "parser_cocci_menhir.mly"
33073 (Data.clt)
33074 # 33048 "parser_cocci_menhir.ml"
33075 ) = Obj.magic _7 in
33076 let _6 : (
33077 # 123 "parser_cocci_menhir.mly"
33078 (Data.clt)
33079 # 33053 "parser_cocci_menhir.ml"
33080 ) = Obj.magic _6 in
33081 let _5 : 'tv_eexpr = Obj.magic _5 in
33082 let _4 : (
33083 # 122 "parser_cocci_menhir.mly"
33084 (Data.clt)
33085 # 33059 "parser_cocci_menhir.ml"
33086 ) = Obj.magic _4 in
33087 let _3 : (
33088 # 99 "parser_cocci_menhir.mly"
33089 (Data.clt)
33090 # 33064 "parser_cocci_menhir.ml"
33091 ) = Obj.magic _3 in
33092 let _2 : 'tv_single_statement = Obj.magic _2 in
33093 let _1 : (
33094 # 99 "parser_cocci_menhir.mly"
33095 (Data.clt)
33096 # 33070 "parser_cocci_menhir.ml"
33097 ) = Obj.magic _1 in
33098 let _startpos = _startpos__1_ in
33099 let _endpos = _endpos__7_ in
33100 let _v : 'tv_statement =
33101 # 1114 "parser_cocci_menhir.mly"
33102 ( P.doloop _1 _2 _3 _4 _5 _6 _7 )
33103 # 33077 "parser_cocci_menhir.ml"
33104 in
33105 _menhir_env.MenhirLib.EngineTypes.stack <- {
33106 MenhirLib.EngineTypes.state = _menhir_s;
33107 MenhirLib.EngineTypes.semv = Obj.repr _v;
33108 MenhirLib.EngineTypes.startp = _startpos;
33109 MenhirLib.EngineTypes.endp = _endpos;
33110 MenhirLib.EngineTypes.next = _menhir_stack;
33111 });
33112 (fun _menhir_env ->
33113 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33114 let {
33115 MenhirLib.EngineTypes.semv = _5;
33116 MenhirLib.EngineTypes.startp = _startpos__5_;
33117 MenhirLib.EngineTypes.endp = _endpos__5_;
33118 MenhirLib.EngineTypes.next = {
33119 MenhirLib.EngineTypes.semv = _4;
33120 MenhirLib.EngineTypes.startp = _startpos__4_;
33121 MenhirLib.EngineTypes.endp = _endpos__4_;
33122 MenhirLib.EngineTypes.next = {
33123 MenhirLib.EngineTypes.semv = _3;
33124 MenhirLib.EngineTypes.startp = _startpos__3_;
33125 MenhirLib.EngineTypes.endp = _endpos__3_;
33126 MenhirLib.EngineTypes.next = {
33127 MenhirLib.EngineTypes.semv = _2;
33128 MenhirLib.EngineTypes.startp = _startpos__2_;
33129 MenhirLib.EngineTypes.endp = _endpos__2_;
33130 MenhirLib.EngineTypes.next = {
33131 MenhirLib.EngineTypes.state = _menhir_s;
33132 MenhirLib.EngineTypes.semv = _1;
33133 MenhirLib.EngineTypes.startp = _startpos__1_;
33134 MenhirLib.EngineTypes.endp = _endpos__1_;
33135 MenhirLib.EngineTypes.next = _menhir_stack;
33136 };
33137 };
33138 };
33139 };
33140 } = _menhir_stack in
33141 let _5 : 'tv_single_statement = Obj.magic _5 in
33142 let _4 : (
33143 # 123 "parser_cocci_menhir.mly"
33144 (Data.clt)
33145 # 33119 "parser_cocci_menhir.ml"
33146 ) = Obj.magic _4 in
33147 let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
33148 let _2 : (
33149 # 122 "parser_cocci_menhir.mly"
33150 (Data.clt)
33151 # 33125 "parser_cocci_menhir.ml"
33152 ) = Obj.magic _2 in
33153 let _1 : 'tv_iter_ident = Obj.magic _1 in
33154 let _startpos = _startpos__1_ in
33155 let _endpos = _endpos__5_ in
33156 let _v : 'tv_statement =
33157 # 1116 "parser_cocci_menhir.mly"
33158 ( P.iterator _1 _2 _3 _4 _5 )
33159 # 33133 "parser_cocci_menhir.ml"
33160 in
33161 _menhir_env.MenhirLib.EngineTypes.stack <- {
33162 MenhirLib.EngineTypes.state = _menhir_s;
33163 MenhirLib.EngineTypes.semv = Obj.repr _v;
33164 MenhirLib.EngineTypes.startp = _startpos;
33165 MenhirLib.EngineTypes.endp = _endpos;
33166 MenhirLib.EngineTypes.next = _menhir_stack;
33167 });
33168 (fun _menhir_env ->
33169 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33170 let {
33171 MenhirLib.EngineTypes.semv = _8;
33172 MenhirLib.EngineTypes.startp = _startpos__8_;
33173 MenhirLib.EngineTypes.endp = _endpos__8_;
33174 MenhirLib.EngineTypes.next = {
33175 MenhirLib.EngineTypes.semv = _7;
33176 MenhirLib.EngineTypes.startp = _startpos__7_;
33177 MenhirLib.EngineTypes.endp = _endpos__7_;
33178 MenhirLib.EngineTypes.next = {
33179 MenhirLib.EngineTypes.semv = _6;
33180 MenhirLib.EngineTypes.startp = _startpos__6_;
33181 MenhirLib.EngineTypes.endp = _endpos__6_;
33182 MenhirLib.EngineTypes.next = {
33183 MenhirLib.EngineTypes.semv = _5;
33184 MenhirLib.EngineTypes.startp = _startpos__5_;
33185 MenhirLib.EngineTypes.endp = _endpos__5_;
33186 MenhirLib.EngineTypes.next = {
33187 MenhirLib.EngineTypes.semv = _4;
33188 MenhirLib.EngineTypes.startp = _startpos__4_;
33189 MenhirLib.EngineTypes.endp = _endpos__4_;
33190 MenhirLib.EngineTypes.next = {
33191 MenhirLib.EngineTypes.semv = _3;
33192 MenhirLib.EngineTypes.startp = _startpos__3_;
33193 MenhirLib.EngineTypes.endp = _endpos__3_;
33194 MenhirLib.EngineTypes.next = {
33195 MenhirLib.EngineTypes.semv = _2;
33196 MenhirLib.EngineTypes.startp = _startpos__2_;
33197 MenhirLib.EngineTypes.endp = _endpos__2_;
33198 MenhirLib.EngineTypes.next = {
33199 MenhirLib.EngineTypes.state = _menhir_s;
33200 MenhirLib.EngineTypes.semv = _1;
33201 MenhirLib.EngineTypes.startp = _startpos__1_;
33202 MenhirLib.EngineTypes.endp = _endpos__1_;
33203 MenhirLib.EngineTypes.next = _menhir_stack;
33204 };
33205 };
33206 };
33207 };
33208 };
33209 };
33210 };
33211 } = _menhir_stack in
33212 let _8 : (
33213 # 147 "parser_cocci_menhir.mly"
33214 (Data.clt)
33215 # 33189 "parser_cocci_menhir.ml"
33216 ) = Obj.magic _8 in
33217 let _7 : 'tv_list_case_line_ = Obj.magic _7 in
33218 let _6 : 'tv_list_decl_var_ = Obj.magic _6 in
33219 let _5 : (
33220 # 147 "parser_cocci_menhir.mly"
33221 (Data.clt)
33222 # 33196 "parser_cocci_menhir.ml"
33223 ) = Obj.magic _5 in
33224 let _4 : (
33225 # 123 "parser_cocci_menhir.mly"
33226 (Data.clt)
33227 # 33201 "parser_cocci_menhir.ml"
33228 ) = Obj.magic _4 in
33229 let _3 : 'tv_eexpr = Obj.magic _3 in
33230 let _2 : (
33231 # 122 "parser_cocci_menhir.mly"
33232 (Data.clt)
33233 # 33207 "parser_cocci_menhir.ml"
33234 ) = Obj.magic _2 in
33235 let _1 : (
33236 # 99 "parser_cocci_menhir.mly"
33237 (Data.clt)
33238 # 33212 "parser_cocci_menhir.ml"
33239 ) = Obj.magic _1 in
33240 let _startpos = _startpos__1_ in
33241 let _endpos = _endpos__8_ in
33242 let _v : 'tv_statement =
33243 # 1118 "parser_cocci_menhir.mly"
33244 ( P.switch _1 _2 _3 _4 _5 (List.concat _6) _7 _8 )
33245 # 33219 "parser_cocci_menhir.ml"
33246 in
33247 _menhir_env.MenhirLib.EngineTypes.stack <- {
33248 MenhirLib.EngineTypes.state = _menhir_s;
33249 MenhirLib.EngineTypes.semv = Obj.repr _v;
33250 MenhirLib.EngineTypes.startp = _startpos;
33251 MenhirLib.EngineTypes.endp = _endpos;
33252 MenhirLib.EngineTypes.next = _menhir_stack;
33253 });
33254 (fun _menhir_env ->
33255 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33256 let {
33257 MenhirLib.EngineTypes.semv = _3;
33258 MenhirLib.EngineTypes.startp = _startpos__3_;
33259 MenhirLib.EngineTypes.endp = _endpos__3_;
33260 MenhirLib.EngineTypes.next = {
33261 MenhirLib.EngineTypes.semv = _2;
33262 MenhirLib.EngineTypes.startp = _startpos__2_;
33263 MenhirLib.EngineTypes.endp = _endpos__2_;
33264 MenhirLib.EngineTypes.next = {
33265 MenhirLib.EngineTypes.state = _menhir_s;
33266 MenhirLib.EngineTypes.semv = _1;
33267 MenhirLib.EngineTypes.startp = _startpos__1_;
33268 MenhirLib.EngineTypes.endp = _endpos__1_;
33269 MenhirLib.EngineTypes.next = _menhir_stack;
33270 };
33271 };
33272 } = _menhir_stack in
33273 let _3 : (
33274 # 153 "parser_cocci_menhir.mly"
33275 (Data.clt)
33276 # 33250 "parser_cocci_menhir.ml"
33277 ) = Obj.magic _3 in
33278 let _2 : 'tv_eexpr = Obj.magic _2 in
33279 let _1 : (
33280 # 99 "parser_cocci_menhir.mly"
33281 (Data.clt)
33282 # 33256 "parser_cocci_menhir.ml"
33283 ) = Obj.magic _1 in
33284 let _startpos = _startpos__1_ in
33285 let _endpos = _endpos__3_ in
33286 let _v : 'tv_statement =
33287 # 1119 "parser_cocci_menhir.mly"
33288 ( P.ret_exp _1 _2 _3 )
33289 # 33263 "parser_cocci_menhir.ml"
33290 in
33291 _menhir_env.MenhirLib.EngineTypes.stack <- {
33292 MenhirLib.EngineTypes.state = _menhir_s;
33293 MenhirLib.EngineTypes.semv = Obj.repr _v;
33294 MenhirLib.EngineTypes.startp = _startpos;
33295 MenhirLib.EngineTypes.endp = _endpos;
33296 MenhirLib.EngineTypes.next = _menhir_stack;
33297 });
33298 (fun _menhir_env ->
33299 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33300 let {
33301 MenhirLib.EngineTypes.semv = _2;
33302 MenhirLib.EngineTypes.startp = _startpos__2_;
33303 MenhirLib.EngineTypes.endp = _endpos__2_;
33304 MenhirLib.EngineTypes.next = {
33305 MenhirLib.EngineTypes.state = _menhir_s;
33306 MenhirLib.EngineTypes.semv = _1;
33307 MenhirLib.EngineTypes.startp = _startpos__1_;
33308 MenhirLib.EngineTypes.endp = _endpos__1_;
33309 MenhirLib.EngineTypes.next = _menhir_stack;
33310 };
33311 } = _menhir_stack in
33312 let _2 : (
33313 # 153 "parser_cocci_menhir.mly"
33314 (Data.clt)
33315 # 33289 "parser_cocci_menhir.ml"
33316 ) = Obj.magic _2 in
33317 let _1 : (
33318 # 99 "parser_cocci_menhir.mly"
33319 (Data.clt)
33320 # 33294 "parser_cocci_menhir.ml"
33321 ) = Obj.magic _1 in
33322 let _startpos = _startpos__1_ in
33323 let _endpos = _endpos__2_ in
33324 let _v : 'tv_statement =
33325 # 1120 "parser_cocci_menhir.mly"
33326 ( P.ret _1 _2 )
33327 # 33301 "parser_cocci_menhir.ml"
33328 in
33329 _menhir_env.MenhirLib.EngineTypes.stack <- {
33330 MenhirLib.EngineTypes.state = _menhir_s;
33331 MenhirLib.EngineTypes.semv = Obj.repr _v;
33332 MenhirLib.EngineTypes.startp = _startpos;
33333 MenhirLib.EngineTypes.endp = _endpos;
33334 MenhirLib.EngineTypes.next = _menhir_stack;
33335 });
33336 (fun _menhir_env ->
33337 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33338 let {
33339 MenhirLib.EngineTypes.semv = _2;
33340 MenhirLib.EngineTypes.startp = _startpos__2_;
33341 MenhirLib.EngineTypes.endp = _endpos__2_;
33342 MenhirLib.EngineTypes.next = {
33343 MenhirLib.EngineTypes.state = _menhir_s;
33344 MenhirLib.EngineTypes.semv = _1;
33345 MenhirLib.EngineTypes.startp = _startpos__1_;
33346 MenhirLib.EngineTypes.endp = _endpos__1_;
33347 MenhirLib.EngineTypes.next = _menhir_stack;
33348 };
33349 } = _menhir_stack in
33350 let _2 : (
33351 # 153 "parser_cocci_menhir.mly"
33352 (Data.clt)
33353 # 33327 "parser_cocci_menhir.ml"
33354 ) = Obj.magic _2 in
33355 let _1 : (
33356 # 100 "parser_cocci_menhir.mly"
33357 (Data.clt)
33358 # 33332 "parser_cocci_menhir.ml"
33359 ) = Obj.magic _1 in
33360 let _startpos = _startpos__1_ in
33361 let _endpos = _endpos__2_ in
33362 let _v : 'tv_statement =
33363 # 1121 "parser_cocci_menhir.mly"
33364 ( P.break _1 _2 )
33365 # 33339 "parser_cocci_menhir.ml"
33366 in
33367 _menhir_env.MenhirLib.EngineTypes.stack <- {
33368 MenhirLib.EngineTypes.state = _menhir_s;
33369 MenhirLib.EngineTypes.semv = Obj.repr _v;
33370 MenhirLib.EngineTypes.startp = _startpos;
33371 MenhirLib.EngineTypes.endp = _endpos;
33372 MenhirLib.EngineTypes.next = _menhir_stack;
33373 });
33374 (fun _menhir_env ->
33375 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33376 let {
33377 MenhirLib.EngineTypes.semv = _2;
33378 MenhirLib.EngineTypes.startp = _startpos__2_;
33379 MenhirLib.EngineTypes.endp = _endpos__2_;
33380 MenhirLib.EngineTypes.next = {
33381 MenhirLib.EngineTypes.state = _menhir_s;
33382 MenhirLib.EngineTypes.semv = _1;
33383 MenhirLib.EngineTypes.startp = _startpos__1_;
33384 MenhirLib.EngineTypes.endp = _endpos__1_;
33385 MenhirLib.EngineTypes.next = _menhir_stack;
33386 };
33387 } = _menhir_stack in
33388 let _2 : (
33389 # 153 "parser_cocci_menhir.mly"
33390 (Data.clt)
33391 # 33365 "parser_cocci_menhir.ml"
33392 ) = Obj.magic _2 in
33393 let _1 : (
33394 # 100 "parser_cocci_menhir.mly"
33395 (Data.clt)
33396 # 33370 "parser_cocci_menhir.ml"
33397 ) = Obj.magic _1 in
33398 let _startpos = _startpos__1_ in
33399 let _endpos = _endpos__2_ in
33400 let _v : 'tv_statement =
33401 # 1122 "parser_cocci_menhir.mly"
33402 ( P.cont _1 _2 )
33403 # 33377 "parser_cocci_menhir.ml"
33404 in
33405 _menhir_env.MenhirLib.EngineTypes.stack <- {
33406 MenhirLib.EngineTypes.state = _menhir_s;
33407 MenhirLib.EngineTypes.semv = Obj.repr _v;
33408 MenhirLib.EngineTypes.startp = _startpos;
33409 MenhirLib.EngineTypes.endp = _endpos;
33410 MenhirLib.EngineTypes.next = _menhir_stack;
33411 });
33412 (fun _menhir_env ->
33413 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33414 let {
33415 MenhirLib.EngineTypes.semv = _2;
33416 MenhirLib.EngineTypes.startp = _startpos__2_;
33417 MenhirLib.EngineTypes.endp = _endpos__2_;
33418 MenhirLib.EngineTypes.next = {
33419 MenhirLib.EngineTypes.state = _menhir_s;
33420 MenhirLib.EngineTypes.semv = _1;
33421 MenhirLib.EngineTypes.startp = _startpos__1_;
33422 MenhirLib.EngineTypes.endp = _endpos__1_;
33423 MenhirLib.EngineTypes.next = _menhir_stack;
33424 };
33425 } = _menhir_stack in
33426 let _2 : (
33427 # 122 "parser_cocci_menhir.mly"
33428 (Data.clt)
33429 # 33403 "parser_cocci_menhir.ml"
33430 ) = Obj.magic _2 in
33431 let _1 : 'tv_mident = Obj.magic _1 in
33432 let _startpos = _startpos__1_ in
33433 let _endpos = _endpos__2_ in
33434 let _v : 'tv_statement =
33435 # 1123 "parser_cocci_menhir.mly"
33436 ( P.label _1 _2 )
33437 # 33411 "parser_cocci_menhir.ml"
33438 in
33439 _menhir_env.MenhirLib.EngineTypes.stack <- {
33440 MenhirLib.EngineTypes.state = _menhir_s;
33441 MenhirLib.EngineTypes.semv = Obj.repr _v;
33442 MenhirLib.EngineTypes.startp = _startpos;
33443 MenhirLib.EngineTypes.endp = _endpos;
33444 MenhirLib.EngineTypes.next = _menhir_stack;
33445 });
33446 (fun _menhir_env ->
33447 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33448 let {
33449 MenhirLib.EngineTypes.semv = _3;
33450 MenhirLib.EngineTypes.startp = _startpos__3_;
33451 MenhirLib.EngineTypes.endp = _endpos__3_;
33452 MenhirLib.EngineTypes.next = {
33453 MenhirLib.EngineTypes.semv = _2;
33454 MenhirLib.EngineTypes.startp = _startpos__2_;
33455 MenhirLib.EngineTypes.endp = _endpos__2_;
33456 MenhirLib.EngineTypes.next = {
33457 MenhirLib.EngineTypes.state = _menhir_s;
33458 MenhirLib.EngineTypes.semv = _1;
33459 MenhirLib.EngineTypes.startp = _startpos__1_;
33460 MenhirLib.EngineTypes.endp = _endpos__1_;
33461 MenhirLib.EngineTypes.next = _menhir_stack;
33462 };
33463 };
33464 } = _menhir_stack in
33465 let _3 : (
33466 # 153 "parser_cocci_menhir.mly"
33467 (Data.clt)
33468 # 33442 "parser_cocci_menhir.ml"
33469 ) = Obj.magic _3 in
33470 let _2 : 'tv_disj_ident = Obj.magic _2 in
33471 let _1 : (
33472 # 100 "parser_cocci_menhir.mly"
33473 (Data.clt)
33474 # 33448 "parser_cocci_menhir.ml"
33475 ) = Obj.magic _1 in
33476 let _startpos = _startpos__1_ in
33477 let _endpos = _endpos__3_ in
33478 let _v : 'tv_statement =
33479 # 1124 "parser_cocci_menhir.mly"
33480 ( P.goto _1 _2 _3 )
33481 # 33455 "parser_cocci_menhir.ml"
33482 in
33483 _menhir_env.MenhirLib.EngineTypes.stack <- {
33484 MenhirLib.EngineTypes.state = _menhir_s;
33485 MenhirLib.EngineTypes.semv = Obj.repr _v;
33486 MenhirLib.EngineTypes.startp = _startpos;
33487 MenhirLib.EngineTypes.endp = _endpos;
33488 MenhirLib.EngineTypes.next = _menhir_stack;
33489 });
33490 (fun _menhir_env ->
33491 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33492 let {
33493 MenhirLib.EngineTypes.semv = _3;
33494 MenhirLib.EngineTypes.startp = _startpos__3_;
33495 MenhirLib.EngineTypes.endp = _endpos__3_;
33496 MenhirLib.EngineTypes.next = {
33497 MenhirLib.EngineTypes.semv = _2;
33498 MenhirLib.EngineTypes.startp = _startpos__2_;
33499 MenhirLib.EngineTypes.endp = _endpos__2_;
33500 MenhirLib.EngineTypes.next = {
33501 MenhirLib.EngineTypes.state = _menhir_s;
33502 MenhirLib.EngineTypes.semv = _1;
33503 MenhirLib.EngineTypes.startp = _startpos__1_;
33504 MenhirLib.EngineTypes.endp = _endpos__1_;
33505 MenhirLib.EngineTypes.next = _menhir_stack;
33506 };
33507 };
33508 } = _menhir_stack in
33509 let _3 : (
33510 # 147 "parser_cocci_menhir.mly"
33511 (Data.clt)
33512 # 33486 "parser_cocci_menhir.ml"
33513 ) = Obj.magic _3 in
33514 let _2 : 'tv_fun_start = Obj.magic _2 in
33515 let _1 : (
33516 # 147 "parser_cocci_menhir.mly"
33517 (Data.clt)
33518 # 33492 "parser_cocci_menhir.ml"
33519 ) = Obj.magic _1 in
33520 let _startpos = _startpos__1_ in
33521 let _endpos = _endpos__3_ in
33522 let _v : 'tv_statement =
33523 # 1126 "parser_cocci_menhir.mly"
33524 ( P.seq _1 _2 _3 )
33525 # 33499 "parser_cocci_menhir.ml"
33526 in
33527 _menhir_env.MenhirLib.EngineTypes.stack <- {
33528 MenhirLib.EngineTypes.state = _menhir_s;
33529 MenhirLib.EngineTypes.semv = Obj.repr _v;
33530 MenhirLib.EngineTypes.startp = _startpos;
33531 MenhirLib.EngineTypes.endp = _endpos;
33532 MenhirLib.EngineTypes.next = _menhir_stack;
33533 });
33534 (fun _menhir_env ->
33535 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33536 let {
33537 MenhirLib.EngineTypes.semv = w;
33538 MenhirLib.EngineTypes.startp = _startpos_w_;
33539 MenhirLib.EngineTypes.endp = _endpos_w_;
33540 MenhirLib.EngineTypes.next = {
33541 MenhirLib.EngineTypes.state = _menhir_s;
33542 MenhirLib.EngineTypes.semv = _1;
33543 MenhirLib.EngineTypes.startp = _startpos__1_;
33544 MenhirLib.EngineTypes.endp = _endpos__1_;
33545 MenhirLib.EngineTypes.next = _menhir_stack;
33546 };
33547 } = _menhir_stack in
33548 let w : 'tv_list_whenppdecs_ = Obj.magic w in
33549 let _1 : (
33550 # 119 "parser_cocci_menhir.mly"
33551 (Data.clt)
33552 # 33526 "parser_cocci_menhir.ml"
33553 ) = Obj.magic _1 in
33554 let _startpos = _startpos__1_ in
33555 let _endpos = _endpos_w_ in
33556 let _v : 'tv_stm_dots =
33557 # 1130 "parser_cocci_menhir.mly"
33558 ( Ast0.wrap(Ast0.Dots(P.clt2mcode "..." _1, List.concat w)) )
33559 # 33533 "parser_cocci_menhir.ml"
33560 in
33561 _menhir_env.MenhirLib.EngineTypes.stack <- {
33562 MenhirLib.EngineTypes.state = _menhir_s;
33563 MenhirLib.EngineTypes.semv = Obj.repr _v;
33564 MenhirLib.EngineTypes.startp = _startpos;
33565 MenhirLib.EngineTypes.endp = _endpos;
33566 MenhirLib.EngineTypes.next = _menhir_stack;
33567 });
33568 (fun _menhir_env ->
33569 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33570 let {
33571 MenhirLib.EngineTypes.semv = c;
33572 MenhirLib.EngineTypes.startp = _startpos_c_;
33573 MenhirLib.EngineTypes.endp = _endpos_c_;
33574 MenhirLib.EngineTypes.next = {
33575 MenhirLib.EngineTypes.semv = b;
33576 MenhirLib.EngineTypes.startp = _startpos_b_;
33577 MenhirLib.EngineTypes.endp = _endpos_b_;
33578 MenhirLib.EngineTypes.next = {
33579 MenhirLib.EngineTypes.semv = w;
33580 MenhirLib.EngineTypes.startp = _startpos_w_;
33581 MenhirLib.EngineTypes.endp = _endpos_w_;
33582 MenhirLib.EngineTypes.next = {
33583 MenhirLib.EngineTypes.state = _menhir_s;
33584 MenhirLib.EngineTypes.semv = _1;
33585 MenhirLib.EngineTypes.startp = _startpos__1_;
33586 MenhirLib.EngineTypes.endp = _endpos__1_;
33587 MenhirLib.EngineTypes.next = _menhir_stack;
33588 };
33589 };
33590 };
33591 } = _menhir_stack in
33592 let c : (
33593 # 119 "parser_cocci_menhir.mly"
33594 (Data.clt)
33595 # 33569 "parser_cocci_menhir.ml"
33596 ) = Obj.magic c in
33597 let b : 'tv_nest_start = Obj.magic b in
33598 let w : 'tv_list_whenppdecs_ = Obj.magic w in
33599 let _1 : (
33600 # 119 "parser_cocci_menhir.mly"
33601 (Data.clt)
33602 # 33576 "parser_cocci_menhir.ml"
33603 ) = Obj.magic _1 in
33604 let _startpos = _startpos__1_ in
33605 let _endpos = _endpos_c_ in
33606 let _v : 'tv_stm_dots =
33607 # 1132 "parser_cocci_menhir.mly"
33608 ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." _1, b,
33609 P.clt2mcode "...>" c, List.concat w, false)) )
33610 # 33584 "parser_cocci_menhir.ml"
33611 in
33612 _menhir_env.MenhirLib.EngineTypes.stack <- {
33613 MenhirLib.EngineTypes.state = _menhir_s;
33614 MenhirLib.EngineTypes.semv = Obj.repr _v;
33615 MenhirLib.EngineTypes.startp = _startpos;
33616 MenhirLib.EngineTypes.endp = _endpos;
33617 MenhirLib.EngineTypes.next = _menhir_stack;
33618 });
33619 (fun _menhir_env ->
33620 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33621 let {
33622 MenhirLib.EngineTypes.semv = c;
33623 MenhirLib.EngineTypes.startp = _startpos_c_;
33624 MenhirLib.EngineTypes.endp = _endpos_c_;
33625 MenhirLib.EngineTypes.next = {
33626 MenhirLib.EngineTypes.semv = b;
33627 MenhirLib.EngineTypes.startp = _startpos_b_;
33628 MenhirLib.EngineTypes.endp = _endpos_b_;
33629 MenhirLib.EngineTypes.next = {
33630 MenhirLib.EngineTypes.semv = w;
33631 MenhirLib.EngineTypes.startp = _startpos_w_;
33632 MenhirLib.EngineTypes.endp = _endpos_w_;
33633 MenhirLib.EngineTypes.next = {
33634 MenhirLib.EngineTypes.state = _menhir_s;
33635 MenhirLib.EngineTypes.semv = _1;
33636 MenhirLib.EngineTypes.startp = _startpos__1_;
33637 MenhirLib.EngineTypes.endp = _endpos__1_;
33638 MenhirLib.EngineTypes.next = _menhir_stack;
33639 };
33640 };
33641 };
33642 } = _menhir_stack in
33643 let c : (
33644 # 119 "parser_cocci_menhir.mly"
33645 (Data.clt)
33646 # 33620 "parser_cocci_menhir.ml"
33647 ) = Obj.magic c in
33648 let b : 'tv_nest_start = Obj.magic b in
33649 let w : 'tv_list_whenppdecs_ = Obj.magic w in
33650 let _1 : (
33651 # 119 "parser_cocci_menhir.mly"
33652 (Data.clt)
33653 # 33627 "parser_cocci_menhir.ml"
33654 ) = Obj.magic _1 in
33655 let _startpos = _startpos__1_ in
33656 let _endpos = _endpos_c_ in
33657 let _v : 'tv_stm_dots =
33658 # 1135 "parser_cocci_menhir.mly"
33659 ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." _1, b,
33660 P.clt2mcode "...+>" c, List.concat w, true)) )
33661 # 33635 "parser_cocci_menhir.ml"
33662 in
33663 _menhir_env.MenhirLib.EngineTypes.stack <- {
33664 MenhirLib.EngineTypes.state = _menhir_s;
33665 MenhirLib.EngineTypes.semv = Obj.repr _v;
33666 MenhirLib.EngineTypes.startp = _startpos;
33667 MenhirLib.EngineTypes.endp = _endpos;
33668 MenhirLib.EngineTypes.next = _menhir_stack;
33669 });
33670 (fun _menhir_env ->
33671 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33672 let {
33673 MenhirLib.EngineTypes.state = _menhir_s;
33674 MenhirLib.EngineTypes.semv = s;
33675 MenhirLib.EngineTypes.startp = _startpos_s_;
33676 MenhirLib.EngineTypes.endp = _endpos_s_;
33677 MenhirLib.EngineTypes.next = _menhir_stack;
33678 } = _menhir_stack in
33679 let s : (
33680 # 95 "parser_cocci_menhir.mly"
33681 (Data.clt)
33682 # 33656 "parser_cocci_menhir.ml"
33683 ) = Obj.magic s in
33684 let _startpos = _startpos_s_ in
33685 let _endpos = _endpos_s_ in
33686 let _v : 'tv_storage =
33687 # 1056 "parser_cocci_menhir.mly"
33688 ( P.clt2mcode Ast.Static s )
33689 # 33663 "parser_cocci_menhir.ml"
33690 in
33691 _menhir_env.MenhirLib.EngineTypes.stack <- {
33692 MenhirLib.EngineTypes.state = _menhir_s;
33693 MenhirLib.EngineTypes.semv = Obj.repr _v;
33694 MenhirLib.EngineTypes.startp = _startpos;
33695 MenhirLib.EngineTypes.endp = _endpos;
33696 MenhirLib.EngineTypes.next = _menhir_stack;
33697 });
33698 (fun _menhir_env ->
33699 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33700 let {
33701 MenhirLib.EngineTypes.state = _menhir_s;
33702 MenhirLib.EngineTypes.semv = s;
33703 MenhirLib.EngineTypes.startp = _startpos_s_;
33704 MenhirLib.EngineTypes.endp = _endpos_s_;
33705 MenhirLib.EngineTypes.next = _menhir_stack;
33706 } = _menhir_stack in
33707 let s : (
33708 # 95 "parser_cocci_menhir.mly"
33709 (Data.clt)
33710 # 33684 "parser_cocci_menhir.ml"
33711 ) = Obj.magic s in
33712 let _startpos = _startpos_s_ in
33713 let _endpos = _endpos_s_ in
33714 let _v : 'tv_storage =
33715 # 1057 "parser_cocci_menhir.mly"
33716 ( P.clt2mcode Ast.Auto s )
33717 # 33691 "parser_cocci_menhir.ml"
33718 in
33719 _menhir_env.MenhirLib.EngineTypes.stack <- {
33720 MenhirLib.EngineTypes.state = _menhir_s;
33721 MenhirLib.EngineTypes.semv = Obj.repr _v;
33722 MenhirLib.EngineTypes.startp = _startpos;
33723 MenhirLib.EngineTypes.endp = _endpos;
33724 MenhirLib.EngineTypes.next = _menhir_stack;
33725 });
33726 (fun _menhir_env ->
33727 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33728 let {
33729 MenhirLib.EngineTypes.state = _menhir_s;
33730 MenhirLib.EngineTypes.semv = s;
33731 MenhirLib.EngineTypes.startp = _startpos_s_;
33732 MenhirLib.EngineTypes.endp = _endpos_s_;
33733 MenhirLib.EngineTypes.next = _menhir_stack;
33734 } = _menhir_stack in
33735 let s : (
33736 # 95 "parser_cocci_menhir.mly"
33737 (Data.clt)
33738 # 33712 "parser_cocci_menhir.ml"
33739 ) = Obj.magic s in
33740 let _startpos = _startpos_s_ in
33741 let _endpos = _endpos_s_ in
33742 let _v : 'tv_storage =
33743 # 1058 "parser_cocci_menhir.mly"
33744 ( P.clt2mcode Ast.Register s )
33745 # 33719 "parser_cocci_menhir.ml"
33746 in
33747 _menhir_env.MenhirLib.EngineTypes.stack <- {
33748 MenhirLib.EngineTypes.state = _menhir_s;
33749 MenhirLib.EngineTypes.semv = Obj.repr _v;
33750 MenhirLib.EngineTypes.startp = _startpos;
33751 MenhirLib.EngineTypes.endp = _endpos;
33752 MenhirLib.EngineTypes.next = _menhir_stack;
33753 });
33754 (fun _menhir_env ->
33755 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33756 let {
33757 MenhirLib.EngineTypes.state = _menhir_s;
33758 MenhirLib.EngineTypes.semv = s;
33759 MenhirLib.EngineTypes.startp = _startpos_s_;
33760 MenhirLib.EngineTypes.endp = _endpos_s_;
33761 MenhirLib.EngineTypes.next = _menhir_stack;
33762 } = _menhir_stack in
33763 let s : (
33764 # 95 "parser_cocci_menhir.mly"
33765 (Data.clt)
33766 # 33740 "parser_cocci_menhir.ml"
33767 ) = Obj.magic s in
33768 let _startpos = _startpos_s_ in
33769 let _endpos = _endpos_s_ in
33770 let _v : 'tv_storage =
33771 # 1059 "parser_cocci_menhir.mly"
33772 ( P.clt2mcode Ast.Extern s )
33773 # 33747 "parser_cocci_menhir.ml"
33774 in
33775 _menhir_env.MenhirLib.EngineTypes.stack <- {
33776 MenhirLib.EngineTypes.state = _menhir_s;
33777 MenhirLib.EngineTypes.semv = Obj.repr _v;
33778 MenhirLib.EngineTypes.startp = _startpos;
33779 MenhirLib.EngineTypes.endp = _endpos;
33780 MenhirLib.EngineTypes.next = _menhir_stack;
33781 });
33782 (fun _menhir_env ->
33783 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33784 let {
33785 MenhirLib.EngineTypes.state = _menhir_s;
33786 MenhirLib.EngineTypes.startp = _startpos__1_;
33787 MenhirLib.EngineTypes.endp = _endpos__1_;
33788 MenhirLib.EngineTypes.next = _menhir_stack;
33789 } = _menhir_stack in
33790 let _startpos = _startpos__1_ in
33791 let _endpos = _endpos__1_ in
33792 let _v : 'tv_struct_decl =
33793 # 751 "parser_cocci_menhir.mly"
33794 ( [] )
33795 # 33769 "parser_cocci_menhir.ml"
33796 in
33797 _menhir_env.MenhirLib.EngineTypes.stack <- {
33798 MenhirLib.EngineTypes.state = _menhir_s;
33799 MenhirLib.EngineTypes.semv = Obj.repr _v;
33800 MenhirLib.EngineTypes.startp = _startpos;
33801 MenhirLib.EngineTypes.endp = _endpos;
33802 MenhirLib.EngineTypes.next = _menhir_stack;
33803 });
33804 (fun _menhir_env ->
33805 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33806 let {
33807 MenhirLib.EngineTypes.state = _menhir_s;
33808 MenhirLib.EngineTypes.semv = _1;
33809 MenhirLib.EngineTypes.startp = _startpos__1_;
33810 MenhirLib.EngineTypes.endp = _endpos__1_;
33811 MenhirLib.EngineTypes.next = _menhir_stack;
33812 } = _menhir_stack in
33813 let _1 : 'tv_struct_decl_one = Obj.magic _1 in
33814 let _startpos = _startpos__1_ in
33815 let _endpos = _endpos__1_ in
33816 let _v : 'tv_struct_decl =
33817 # 752 "parser_cocci_menhir.mly"
33818 ( [_1] )
33819 # 33793 "parser_cocci_menhir.ml"
33820 in
33821 _menhir_env.MenhirLib.EngineTypes.stack <- {
33822 MenhirLib.EngineTypes.state = _menhir_s;
33823 MenhirLib.EngineTypes.semv = Obj.repr _v;
33824 MenhirLib.EngineTypes.startp = _startpos;
33825 MenhirLib.EngineTypes.endp = _endpos;
33826 MenhirLib.EngineTypes.next = _menhir_stack;
33827 });
33828 (fun _menhir_env ->
33829 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33830 let {
33831 MenhirLib.EngineTypes.state = _menhir_s;
33832 MenhirLib.EngineTypes.semv = _1;
33833 MenhirLib.EngineTypes.startp = _startpos__1_;
33834 MenhirLib.EngineTypes.endp = _endpos__1_;
33835 MenhirLib.EngineTypes.next = _menhir_stack;
33836 } = _menhir_stack in
33837 let _1 : 'tv_struct_decl_list_start = Obj.magic _1 in
33838 let _startpos = _startpos__1_ in
33839 let _endpos = _endpos__1_ in
33840 let _v : 'tv_struct_decl_list =
33841 # 780 "parser_cocci_menhir.mly"
33842 ( Ast0.wrap(Ast0.DOTS(_1)) )
33843 # 33817 "parser_cocci_menhir.ml"
33844 in
33845 _menhir_env.MenhirLib.EngineTypes.stack <- {
33846 MenhirLib.EngineTypes.state = _menhir_s;
33847 MenhirLib.EngineTypes.semv = Obj.repr _v;
33848 MenhirLib.EngineTypes.startp = _startpos;
33849 MenhirLib.EngineTypes.endp = _endpos;
33850 MenhirLib.EngineTypes.next = _menhir_stack;
33851 });
33852 (fun _menhir_env ->
33853 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33854 let {
33855 MenhirLib.EngineTypes.state = _menhir_s;
33856 MenhirLib.EngineTypes.semv = _1;
33857 MenhirLib.EngineTypes.startp = _startpos__1_;
33858 MenhirLib.EngineTypes.endp = _endpos__1_;
33859 MenhirLib.EngineTypes.next = _menhir_stack;
33860 } = _menhir_stack in
33861 let _1 : 'tv_struct_decl = Obj.magic _1 in
33862 let _startpos = _startpos__1_ in
33863 let _endpos = _endpos__1_ in
33864 let _v : 'tv_struct_decl_list_start =
33865 # 783 "parser_cocci_menhir.mly"
33866 ( _1 )
33867 # 33841 "parser_cocci_menhir.ml"
33868 in
33869 _menhir_env.MenhirLib.EngineTypes.stack <- {
33870 MenhirLib.EngineTypes.state = _menhir_s;
33871 MenhirLib.EngineTypes.semv = Obj.repr _v;
33872 MenhirLib.EngineTypes.startp = _startpos;
33873 MenhirLib.EngineTypes.endp = _endpos;
33874 MenhirLib.EngineTypes.next = _menhir_stack;
33875 });
33876 (fun _menhir_env ->
33877 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33878 let {
33879 MenhirLib.EngineTypes.semv = _2;
33880 MenhirLib.EngineTypes.startp = _startpos__2_;
33881 MenhirLib.EngineTypes.endp = _endpos__2_;
33882 MenhirLib.EngineTypes.next = {
33883 MenhirLib.EngineTypes.state = _menhir_s;
33884 MenhirLib.EngineTypes.semv = _1;
33885 MenhirLib.EngineTypes.startp = _startpos__1_;
33886 MenhirLib.EngineTypes.endp = _endpos__1_;
33887 MenhirLib.EngineTypes.next = _menhir_stack;
33888 };
33889 } = _menhir_stack in
33890 let _2 : 'tv_struct_decl_list_start = Obj.magic _2 in
33891 let _1 : 'tv_struct_decl = Obj.magic _1 in
33892 let _startpos = _startpos__1_ in
33893 let _endpos = _endpos__2_ in
33894 let _v : 'tv_struct_decl_list_start =
33895 # 784 "parser_cocci_menhir.mly"
33896 ( _1@_2 )
33897 # 33871 "parser_cocci_menhir.ml"
33898 in
33899 _menhir_env.MenhirLib.EngineTypes.stack <- {
33900 MenhirLib.EngineTypes.state = _menhir_s;
33901 MenhirLib.EngineTypes.semv = Obj.repr _v;
33902 MenhirLib.EngineTypes.startp = _startpos;
33903 MenhirLib.EngineTypes.endp = _endpos;
33904 MenhirLib.EngineTypes.next = _menhir_stack;
33905 });
33906 (fun _menhir_env ->
33907 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33908 let {
33909 MenhirLib.EngineTypes.semv = r;
33910 MenhirLib.EngineTypes.startp = _startpos_r_;
33911 MenhirLib.EngineTypes.endp = _endpos_r_;
33912 MenhirLib.EngineTypes.next = {
33913 MenhirLib.EngineTypes.state = _menhir_s;
33914 MenhirLib.EngineTypes.semv = d;
33915 MenhirLib.EngineTypes.startp = _startpos_d_;
33916 MenhirLib.EngineTypes.endp = _endpos_d_;
33917 MenhirLib.EngineTypes.next = _menhir_stack;
33918 };
33919 } = _menhir_stack in
33920 let r : 'tv_continue_struct_decl_list = Obj.magic r in
33921 let d : 'tv_edots_when_TEllipsis_struct_decl_one_ = Obj.magic d in
33922 let _startpos = _startpos_d_ in
33923 let _endpos = _endpos_r_ in
33924 let _v : 'tv_struct_decl_list_start =
33925 # 786 "parser_cocci_menhir.mly"
33926 ( (P.mkddots_one "..." d)::r )
33927 # 33901 "parser_cocci_menhir.ml"
33928 in
33929 _menhir_env.MenhirLib.EngineTypes.stack <- {
33930 MenhirLib.EngineTypes.state = _menhir_s;
33931 MenhirLib.EngineTypes.semv = Obj.repr _v;
33932 MenhirLib.EngineTypes.startp = _startpos;
33933 MenhirLib.EngineTypes.endp = _endpos;
33934 MenhirLib.EngineTypes.next = _menhir_stack;
33935 });
33936 (fun _menhir_env ->
33937 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33938 let {
33939 MenhirLib.EngineTypes.state = _menhir_s;
33940 MenhirLib.EngineTypes.semv = _1;
33941 MenhirLib.EngineTypes.startp = _startpos__1_;
33942 MenhirLib.EngineTypes.endp = _endpos__1_;
33943 MenhirLib.EngineTypes.next = _menhir_stack;
33944 } = _menhir_stack in
33945 let _1 : (
33946 # 109 "parser_cocci_menhir.mly"
33947 (Parse_aux.info)
33948 # 33922 "parser_cocci_menhir.ml"
33949 ) = Obj.magic _1 in
33950 let _startpos = _startpos__1_ in
33951 let _endpos = _endpos__1_ in
33952 let _v : 'tv_struct_decl_one =
33953 # 755 "parser_cocci_menhir.mly"
33954 ( P.meta_field _1 )
33955 # 33929 "parser_cocci_menhir.ml"
33956 in
33957 _menhir_env.MenhirLib.EngineTypes.stack <- {
33958 MenhirLib.EngineTypes.state = _menhir_s;
33959 MenhirLib.EngineTypes.semv = Obj.repr _v;
33960 MenhirLib.EngineTypes.startp = _startpos;
33961 MenhirLib.EngineTypes.endp = _endpos;
33962 MenhirLib.EngineTypes.next = _menhir_stack;
33963 });
33964 (fun _menhir_env ->
33965 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33966 let {
33967 MenhirLib.EngineTypes.state = _menhir_s;
33968 MenhirLib.EngineTypes.semv = _1;
33969 MenhirLib.EngineTypes.startp = _startpos__1_;
33970 MenhirLib.EngineTypes.endp = _endpos__1_;
33971 MenhirLib.EngineTypes.next = _menhir_stack;
33972 } = _menhir_stack in
33973 let _1 : (
33974 # 111 "parser_cocci_menhir.mly"
33975 (Parse_aux.list_info)
33976 # 33950 "parser_cocci_menhir.ml"
33977 ) = Obj.magic _1 in
33978 let _startpos = _startpos__1_ in
33979 let _endpos = _endpos__1_ in
33980 let _v : 'tv_struct_decl_one =
33981 # 756 "parser_cocci_menhir.mly"
33982 ( P.meta_field_list _1 )
33983 # 33957 "parser_cocci_menhir.ml"
33984 in
33985 _menhir_env.MenhirLib.EngineTypes.stack <- {
33986 MenhirLib.EngineTypes.state = _menhir_s;
33987 MenhirLib.EngineTypes.semv = Obj.repr _v;
33988 MenhirLib.EngineTypes.startp = _startpos;
33989 MenhirLib.EngineTypes.endp = _endpos;
33990 MenhirLib.EngineTypes.next = _menhir_stack;
33991 });
33992 (fun _menhir_env ->
33993 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
33994 let {
33995 MenhirLib.EngineTypes.state = _menhir_s;
33996 MenhirLib.EngineTypes.semv = _1;
33997 MenhirLib.EngineTypes.startp = _startpos__1_;
33998 MenhirLib.EngineTypes.endp = _endpos__1_;
33999 MenhirLib.EngineTypes.next = _menhir_stack;
34000 } = _menhir_stack in
34001 let _1 : (
34002 # 109 "parser_cocci_menhir.mly"
34003 (Parse_aux.info)
34004 # 33978 "parser_cocci_menhir.ml"
34005 ) = Obj.magic _1 in
34006 let _startpos = _startpos__1_ in
34007 let _endpos = _endpos__1_ in
34008 let _v : 'tv_struct_decl_one =
34009 # 757 "parser_cocci_menhir.mly"
34010 ( tmeta_to_field _1 )
34011 # 33985 "parser_cocci_menhir.ml"
34012 in
34013 _menhir_env.MenhirLib.EngineTypes.stack <- {
34014 MenhirLib.EngineTypes.state = _menhir_s;
34015 MenhirLib.EngineTypes.semv = Obj.repr _v;
34016 MenhirLib.EngineTypes.startp = _startpos;
34017 MenhirLib.EngineTypes.endp = _endpos;
34018 MenhirLib.EngineTypes.next = _menhir_stack;
34019 });
34020 (fun _menhir_env ->
34021 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34022 let {
34023 MenhirLib.EngineTypes.semv = rp;
34024 MenhirLib.EngineTypes.startp = _startpos_rp_;
34025 MenhirLib.EngineTypes.endp = _endpos_rp_;
34026 MenhirLib.EngineTypes.next = {
34027 MenhirLib.EngineTypes.semv = t;
34028 MenhirLib.EngineTypes.startp = _startpos_t_;
34029 MenhirLib.EngineTypes.endp = _endpos_t_;
34030 MenhirLib.EngineTypes.next = {
34031 MenhirLib.EngineTypes.state = _menhir_s;
34032 MenhirLib.EngineTypes.semv = lp;
34033 MenhirLib.EngineTypes.startp = _startpos_lp_;
34034 MenhirLib.EngineTypes.endp = _endpos_lp_;
34035 MenhirLib.EngineTypes.next = _menhir_stack;
34036 };
34037 };
34038 } = _menhir_stack in
34039 let rp : (
34040 # 123 "parser_cocci_menhir.mly"
34041 (Data.clt)
34042 # 34016 "parser_cocci_menhir.ml"
34043 ) = Obj.magic rp in
34044 let t : 'tv_midzero_list_struct_decl_one_struct_decl_one_ = Obj.magic t in
34045 let lp : (
34046 # 122 "parser_cocci_menhir.mly"
34047 (Data.clt)
34048 # 34022 "parser_cocci_menhir.ml"
34049 ) = Obj.magic lp in
34050 let _startpos = _startpos_lp_ in
34051 let _endpos = _endpos_rp_ in
34052 let _v : 'tv_struct_decl_one =
34053 # 759 "parser_cocci_menhir.mly"
34054 ( let (mids,code) = t in
34055 Ast0.wrap
34056 (Ast0.DisjDecl(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) )
34057 # 34031 "parser_cocci_menhir.ml"
34058 in
34059 _menhir_env.MenhirLib.EngineTypes.stack <- {
34060 MenhirLib.EngineTypes.state = _menhir_s;
34061 MenhirLib.EngineTypes.semv = Obj.repr _v;
34062 MenhirLib.EngineTypes.startp = _startpos;
34063 MenhirLib.EngineTypes.endp = _endpos;
34064 MenhirLib.EngineTypes.next = _menhir_stack;
34065 });
34066 (fun _menhir_env ->
34067 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34068 let {
34069 MenhirLib.EngineTypes.semv = pv;
34070 MenhirLib.EngineTypes.startp = _startpos_pv_;
34071 MenhirLib.EngineTypes.endp = _endpos_pv_;
34072 MenhirLib.EngineTypes.next = {
34073 MenhirLib.EngineTypes.semv = d;
34074 MenhirLib.EngineTypes.startp = _startpos_d_;
34075 MenhirLib.EngineTypes.endp = _endpos_d_;
34076 MenhirLib.EngineTypes.next = {
34077 MenhirLib.EngineTypes.state = _menhir_s;
34078 MenhirLib.EngineTypes.semv = t;
34079 MenhirLib.EngineTypes.startp = _startpos_t_;
34080 MenhirLib.EngineTypes.endp = _endpos_t_;
34081 MenhirLib.EngineTypes.next = _menhir_stack;
34082 };
34083 };
34084 } = _menhir_stack in
34085 let pv : (
34086 # 153 "parser_cocci_menhir.mly"
34087 (Data.clt)
34088 # 34062 "parser_cocci_menhir.ml"
34089 ) = Obj.magic pv in
34090 let d : 'tv_d_ident = Obj.magic d in
34091 let t : 'tv_ctype = Obj.magic t in
34092 let _startpos = _startpos_t_ in
34093 let _endpos = _endpos_pv_ in
34094 let _v : 'tv_struct_decl_one =
34095 # 763 "parser_cocci_menhir.mly"
34096 ( let (id,fn) = d in
34097 Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv)) )
34098 # 34072 "parser_cocci_menhir.ml"
34099 in
34100 _menhir_env.MenhirLib.EngineTypes.stack <- {
34101 MenhirLib.EngineTypes.state = _menhir_s;
34102 MenhirLib.EngineTypes.semv = Obj.repr _v;
34103 MenhirLib.EngineTypes.startp = _startpos;
34104 MenhirLib.EngineTypes.endp = _endpos;
34105 MenhirLib.EngineTypes.next = _menhir_stack;
34106 });
34107 (fun _menhir_env ->
34108 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34109 let {
34110 MenhirLib.EngineTypes.semv = pv;
34111 MenhirLib.EngineTypes.startp = _startpos_pv_;
34112 MenhirLib.EngineTypes.endp = _endpos_pv_;
34113 MenhirLib.EngineTypes.next = {
34114 MenhirLib.EngineTypes.semv = rp2;
34115 MenhirLib.EngineTypes.startp = _startpos_rp2_;
34116 MenhirLib.EngineTypes.endp = _endpos_rp2_;
34117 MenhirLib.EngineTypes.next = {
34118 MenhirLib.EngineTypes.semv = p;
34119 MenhirLib.EngineTypes.startp = _startpos_p_;
34120 MenhirLib.EngineTypes.endp = _endpos_p_;
34121 MenhirLib.EngineTypes.next = {
34122 MenhirLib.EngineTypes.semv = lp2;
34123 MenhirLib.EngineTypes.startp = _startpos_lp2_;
34124 MenhirLib.EngineTypes.endp = _endpos_lp2_;
34125 MenhirLib.EngineTypes.next = {
34126 MenhirLib.EngineTypes.semv = rp1;
34127 MenhirLib.EngineTypes.startp = _startpos_rp1_;
34128 MenhirLib.EngineTypes.endp = _endpos_rp1_;
34129 MenhirLib.EngineTypes.next = {
34130 MenhirLib.EngineTypes.semv = d;
34131 MenhirLib.EngineTypes.startp = _startpos_d_;
34132 MenhirLib.EngineTypes.endp = _endpos_d_;
34133 MenhirLib.EngineTypes.next = {
34134 MenhirLib.EngineTypes.semv = st;
34135 MenhirLib.EngineTypes.startp = _startpos_st_;
34136 MenhirLib.EngineTypes.endp = _endpos_st_;
34137 MenhirLib.EngineTypes.next = {
34138 MenhirLib.EngineTypes.semv = lp1;
34139 MenhirLib.EngineTypes.startp = _startpos_lp1_;
34140 MenhirLib.EngineTypes.endp = _endpos_lp1_;
34141 MenhirLib.EngineTypes.next = {
34142 MenhirLib.EngineTypes.state = _menhir_s;
34143 MenhirLib.EngineTypes.semv = t;
34144 MenhirLib.EngineTypes.startp = _startpos_t_;
34145 MenhirLib.EngineTypes.endp = _endpos_t_;
34146 MenhirLib.EngineTypes.next = _menhir_stack;
34147 };
34148 };
34149 };
34150 };
34151 };
34152 };
34153 };
34154 };
34155 } = _menhir_stack in
34156 let pv : (
34157 # 153 "parser_cocci_menhir.mly"
34158 (Data.clt)
34159 # 34133 "parser_cocci_menhir.ml"
34160 ) = Obj.magic pv in
34161 let rp2 : (
34162 # 123 "parser_cocci_menhir.mly"
34163 (Data.clt)
34164 # 34138 "parser_cocci_menhir.ml"
34165 ) = Obj.magic rp2 in
34166 let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
34167 let lp2 : (
34168 # 122 "parser_cocci_menhir.mly"
34169 (Data.clt)
34170 # 34144 "parser_cocci_menhir.ml"
34171 ) = Obj.magic lp2 in
34172 let rp1 : (
34173 # 123 "parser_cocci_menhir.mly"
34174 (Data.clt)
34175 # 34149 "parser_cocci_menhir.ml"
34176 ) = Obj.magic rp1 in
34177 let d : 'tv_d_ident = Obj.magic d in
34178 let st : (
34179 # 145 "parser_cocci_menhir.mly"
34180 (Data.clt)
34181 # 34155 "parser_cocci_menhir.ml"
34182 ) = Obj.magic st in
34183 let lp1 : (
34184 # 122 "parser_cocci_menhir.mly"
34185 (Data.clt)
34186 # 34160 "parser_cocci_menhir.ml"
34187 ) = Obj.magic lp1 in
34188 let t : 'tv_ctype = Obj.magic t in
34189 let _startpos = _startpos_t_ in
34190 let _endpos = _endpos_pv_ in
34191 let _v : 'tv_struct_decl_one =
34192 # 767 "parser_cocci_menhir.mly"
34193 ( let (id,fn) = d in
34194 let t =
34195 Ast0.wrap
34196 (Ast0.FunctionPointer
34197 (t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
34198 P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
34199 Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv)) )
34200 # 34174 "parser_cocci_menhir.ml"
34201 in
34202 _menhir_env.MenhirLib.EngineTypes.stack <- {
34203 MenhirLib.EngineTypes.state = _menhir_s;
34204 MenhirLib.EngineTypes.semv = Obj.repr _v;
34205 MenhirLib.EngineTypes.startp = _startpos;
34206 MenhirLib.EngineTypes.endp = _endpos;
34207 MenhirLib.EngineTypes.next = _menhir_stack;
34208 });
34209 (fun _menhir_env ->
34210 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34211 let {
34212 MenhirLib.EngineTypes.semv = pv;
34213 MenhirLib.EngineTypes.startp = _startpos_pv_;
34214 MenhirLib.EngineTypes.endp = _endpos_pv_;
34215 MenhirLib.EngineTypes.next = {
34216 MenhirLib.EngineTypes.semv = d;
34217 MenhirLib.EngineTypes.startp = _startpos_d_;
34218 MenhirLib.EngineTypes.endp = _endpos_d_;
34219 MenhirLib.EngineTypes.next = {
34220 MenhirLib.EngineTypes.state = _menhir_s;
34221 MenhirLib.EngineTypes.semv = i;
34222 MenhirLib.EngineTypes.startp = _startpos_i_;
34223 MenhirLib.EngineTypes.endp = _endpos_i_;
34224 MenhirLib.EngineTypes.next = _menhir_stack;
34225 };
34226 };
34227 } = _menhir_stack in
34228 let pv : (
34229 # 153 "parser_cocci_menhir.mly"
34230 (Data.clt)
34231 # 34205 "parser_cocci_menhir.ml"
34232 ) = Obj.magic pv in
34233 let d : 'tv_d_ident = Obj.magic d in
34234 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
34235 let _startpos = _startpos_i_ in
34236 let _endpos = _endpos_pv_ in
34237 let _v : 'tv_struct_decl_one = let cv =
34238
34239 # 39 "standard.mly"
34240 ( None )
34241 # 34215 "parser_cocci_menhir.ml"
34242
34243 in
34244
34245 # 775 "parser_cocci_menhir.mly"
34246 ( let (id,fn) = d in
34247 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
34248 Ast0.wrap(Ast0.UnInit(None,fn idtype,id,P.clt2mcode ";" pv)) )
34249 # 34223 "parser_cocci_menhir.ml"
34250 in
34251 _menhir_env.MenhirLib.EngineTypes.stack <- {
34252 MenhirLib.EngineTypes.state = _menhir_s;
34253 MenhirLib.EngineTypes.semv = Obj.repr _v;
34254 MenhirLib.EngineTypes.startp = _startpos;
34255 MenhirLib.EngineTypes.endp = _endpos;
34256 MenhirLib.EngineTypes.next = _menhir_stack;
34257 });
34258 (fun _menhir_env ->
34259 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34260 let {
34261 MenhirLib.EngineTypes.semv = pv;
34262 MenhirLib.EngineTypes.startp = _startpos_pv_;
34263 MenhirLib.EngineTypes.endp = _endpos_pv_;
34264 MenhirLib.EngineTypes.next = {
34265 MenhirLib.EngineTypes.semv = d;
34266 MenhirLib.EngineTypes.startp = _startpos_d_;
34267 MenhirLib.EngineTypes.endp = _endpos_d_;
34268 MenhirLib.EngineTypes.next = {
34269 MenhirLib.EngineTypes.semv = i;
34270 MenhirLib.EngineTypes.startp = _startpos_i_;
34271 MenhirLib.EngineTypes.endp = _endpos_i_;
34272 MenhirLib.EngineTypes.next = {
34273 MenhirLib.EngineTypes.state = _menhir_s;
34274 MenhirLib.EngineTypes.semv = x0;
34275 MenhirLib.EngineTypes.startp = _startpos_x0_;
34276 MenhirLib.EngineTypes.endp = _endpos_x0_;
34277 MenhirLib.EngineTypes.next = _menhir_stack;
34278 };
34279 };
34280 };
34281 } = _menhir_stack in
34282 let pv : (
34283 # 153 "parser_cocci_menhir.mly"
34284 (Data.clt)
34285 # 34259 "parser_cocci_menhir.ml"
34286 ) = Obj.magic pv in
34287 let d : 'tv_d_ident = Obj.magic d in
34288 let i : 'tv_pure_ident_or_symbol = Obj.magic i in
34289 let x0 : 'tv_const_vol = Obj.magic x0 in
34290 let _startpos = _startpos_x0_ in
34291 let _endpos = _endpos_pv_ in
34292 let _v : 'tv_struct_decl_one = let cv =
34293 let x = x0 in
34294
34295 # 41 "standard.mly"
34296 ( Some x )
34297 # 34271 "parser_cocci_menhir.ml"
34298
34299 in
34300
34301 # 775 "parser_cocci_menhir.mly"
34302 ( let (id,fn) = d in
34303 let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
34304 Ast0.wrap(Ast0.UnInit(None,fn idtype,id,P.clt2mcode ";" pv)) )
34305 # 34279 "parser_cocci_menhir.ml"
34306 in
34307 _menhir_env.MenhirLib.EngineTypes.stack <- {
34308 MenhirLib.EngineTypes.state = _menhir_s;
34309 MenhirLib.EngineTypes.semv = Obj.repr _v;
34310 MenhirLib.EngineTypes.startp = _startpos;
34311 MenhirLib.EngineTypes.endp = _endpos;
34312 MenhirLib.EngineTypes.next = _menhir_stack;
34313 });
34314 (fun _menhir_env ->
34315 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34316 let {
34317 MenhirLib.EngineTypes.state = _menhir_s;
34318 MenhirLib.EngineTypes.semv = s;
34319 MenhirLib.EngineTypes.startp = _startpos_s_;
34320 MenhirLib.EngineTypes.endp = _endpos_s_;
34321 MenhirLib.EngineTypes.next = _menhir_stack;
34322 } = _menhir_stack in
34323 let s : (
34324 # 92 "parser_cocci_menhir.mly"
34325 (Data.clt)
34326 # 34300 "parser_cocci_menhir.ml"
34327 ) = Obj.magic s in
34328 let _startpos = _startpos_s_ in
34329 let _endpos = _endpos_s_ in
34330 let _v : 'tv_struct_or_union =
34331 # 747 "parser_cocci_menhir.mly"
34332 ( P.clt2mcode Ast.Struct s )
34333 # 34307 "parser_cocci_menhir.ml"
34334 in
34335 _menhir_env.MenhirLib.EngineTypes.stack <- {
34336 MenhirLib.EngineTypes.state = _menhir_s;
34337 MenhirLib.EngineTypes.semv = Obj.repr _v;
34338 MenhirLib.EngineTypes.startp = _startpos;
34339 MenhirLib.EngineTypes.endp = _endpos;
34340 MenhirLib.EngineTypes.next = _menhir_stack;
34341 });
34342 (fun _menhir_env ->
34343 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34344 let {
34345 MenhirLib.EngineTypes.state = _menhir_s;
34346 MenhirLib.EngineTypes.semv = u;
34347 MenhirLib.EngineTypes.startp = _startpos_u_;
34348 MenhirLib.EngineTypes.endp = _endpos_u_;
34349 MenhirLib.EngineTypes.next = _menhir_stack;
34350 } = _menhir_stack in
34351 let u : (
34352 # 92 "parser_cocci_menhir.mly"
34353 (Data.clt)
34354 # 34328 "parser_cocci_menhir.ml"
34355 ) = Obj.magic u in
34356 let _startpos = _startpos_u_ in
34357 let _endpos = _endpos_u_ in
34358 let _v : 'tv_struct_or_union =
34359 # 748 "parser_cocci_menhir.mly"
34360 ( P.clt2mcode Ast.Union u )
34361 # 34335 "parser_cocci_menhir.ml"
34362 in
34363 _menhir_env.MenhirLib.EngineTypes.stack <- {
34364 MenhirLib.EngineTypes.state = _menhir_s;
34365 MenhirLib.EngineTypes.semv = Obj.repr _v;
34366 MenhirLib.EngineTypes.startp = _startpos;
34367 MenhirLib.EngineTypes.endp = _endpos;
34368 MenhirLib.EngineTypes.next = _menhir_stack;
34369 });
34370 (fun _menhir_env ->
34371 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34372 let {
34373 MenhirLib.EngineTypes.semv = i;
34374 MenhirLib.EngineTypes.startp = _startpos_i_;
34375 MenhirLib.EngineTypes.endp = _endpos_i_;
34376 MenhirLib.EngineTypes.next = {
34377 MenhirLib.EngineTypes.state = _menhir_s;
34378 MenhirLib.EngineTypes.startp = _startpos__1_;
34379 MenhirLib.EngineTypes.endp = _endpos__1_;
34380 MenhirLib.EngineTypes.next = _menhir_stack;
34381 };
34382 } = _menhir_stack in
34383 let i : 'tv_meta_ident = Obj.magic i in
34384 let _startpos = _startpos__1_ in
34385 let _endpos = _endpos_i_ in
34386 let _v : 'tv_sub =
34387 # 1957 "parser_cocci_menhir.mly"
34388 ( (if !Data.in_iso
34389 then failwith "constraints not allowed in iso file");
34390 (if !Data.in_generating
34391 then failwith "constraints not allowed in a generated rule file");
34392 let i =
34393 P.check_inherited_constraint i
34394 (function mv -> Ast.MetaExpDecl(Ast.NONE,mv,None)) in
34395 [i] )
34396 # 34370 "parser_cocci_menhir.ml"
34397 in
34398 _menhir_env.MenhirLib.EngineTypes.stack <- {
34399 MenhirLib.EngineTypes.state = _menhir_s;
34400 MenhirLib.EngineTypes.semv = Obj.repr _v;
34401 MenhirLib.EngineTypes.startp = _startpos;
34402 MenhirLib.EngineTypes.endp = _endpos;
34403 MenhirLib.EngineTypes.next = _menhir_stack;
34404 });
34405 (fun _menhir_env ->
34406 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34407 let {
34408 MenhirLib.EngineTypes.startp = _startpos__4_;
34409 MenhirLib.EngineTypes.endp = _endpos__4_;
34410 MenhirLib.EngineTypes.next = {
34411 MenhirLib.EngineTypes.semv = l;
34412 MenhirLib.EngineTypes.startp = _startpos_l_;
34413 MenhirLib.EngineTypes.endp = _endpos_l_;
34414 MenhirLib.EngineTypes.next = {
34415 MenhirLib.EngineTypes.startp = _startpos__2_;
34416 MenhirLib.EngineTypes.endp = _endpos__2_;
34417 MenhirLib.EngineTypes.next = {
34418 MenhirLib.EngineTypes.state = _menhir_s;
34419 MenhirLib.EngineTypes.startp = _startpos__1_;
34420 MenhirLib.EngineTypes.endp = _endpos__1_;
34421 MenhirLib.EngineTypes.next = _menhir_stack;
34422 };
34423 };
34424 };
34425 } = _menhir_stack in
34426 let l : 'tv_comma_list_meta_ident_ = Obj.magic l in
34427 let _startpos = _startpos__1_ in
34428 let _endpos = _endpos__4_ in
34429 let _v : 'tv_sub =
34430 # 1966 "parser_cocci_menhir.mly"
34431 ( (if !Data.in_iso
34432 then failwith "constraints not allowed in iso file");
34433 (if !Data.in_generating
34434 then failwith "constraints not allowed in a generated rule file");
34435 List.map
34436 (function i ->
34437 P.check_inherited_constraint i
34438 (function mv -> Ast.MetaExpDecl(Ast.NONE,mv,None)))
34439 l)
34440 # 34414 "parser_cocci_menhir.ml"
34441 in
34442 _menhir_env.MenhirLib.EngineTypes.stack <- {
34443 MenhirLib.EngineTypes.state = _menhir_s;
34444 MenhirLib.EngineTypes.semv = Obj.repr _v;
34445 MenhirLib.EngineTypes.startp = _startpos;
34446 MenhirLib.EngineTypes.endp = _endpos;
34447 MenhirLib.EngineTypes.next = _menhir_stack;
34448 });
34449 (fun _menhir_env ->
34450 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34451 let {
34452 MenhirLib.EngineTypes.state = _menhir_s;
34453 MenhirLib.EngineTypes.semv = _1;
34454 MenhirLib.EngineTypes.startp = _startpos__1_;
34455 MenhirLib.EngineTypes.endp = _endpos__1_;
34456 MenhirLib.EngineTypes.next = _menhir_stack;
34457 } = _menhir_stack in
34458 let _1 : 'tv_eexpr = Obj.magic _1 in
34459 let _startpos = _startpos__1_ in
34460 let _endpos = _endpos__1_ in
34461 let _v : 'tv_top_eexpr =
34462 # 1475 "parser_cocci_menhir.mly"
34463 ( Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))) )
34464 # 34438 "parser_cocci_menhir.ml"
34465 in
34466 _menhir_env.MenhirLib.EngineTypes.stack <- {
34467 MenhirLib.EngineTypes.state = _menhir_s;
34468 MenhirLib.EngineTypes.semv = Obj.repr _v;
34469 MenhirLib.EngineTypes.startp = _startpos;
34470 MenhirLib.EngineTypes.endp = _endpos;
34471 MenhirLib.EngineTypes.next = _menhir_stack;
34472 });
34473 (fun _menhir_env ->
34474 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34475 let {
34476 MenhirLib.EngineTypes.semv = _3;
34477 MenhirLib.EngineTypes.startp = _startpos__3_;
34478 MenhirLib.EngineTypes.endp = _endpos__3_;
34479 MenhirLib.EngineTypes.next = {
34480 MenhirLib.EngineTypes.semv = _2;
34481 MenhirLib.EngineTypes.startp = _startpos__2_;
34482 MenhirLib.EngineTypes.endp = _endpos__2_;
34483 MenhirLib.EngineTypes.next = {
34484 MenhirLib.EngineTypes.state = _menhir_s;
34485 MenhirLib.EngineTypes.semv = _1;
34486 MenhirLib.EngineTypes.startp = _startpos__1_;
34487 MenhirLib.EngineTypes.endp = _endpos__1_;
34488 MenhirLib.EngineTypes.next = _menhir_stack;
34489 };
34490 };
34491 } = _menhir_stack in
34492 let _3 : (
34493 # 147 "parser_cocci_menhir.mly"
34494 (Data.clt)
34495 # 34469 "parser_cocci_menhir.ml"
34496 ) = Obj.magic _3 in
34497 let _2 : 'tv_initialize_list = Obj.magic _2 in
34498 let _1 : (
34499 # 147 "parser_cocci_menhir.mly"
34500 (Data.clt)
34501 # 34475 "parser_cocci_menhir.ml"
34502 ) = Obj.magic _1 in
34503 let _startpos = _startpos__1_ in
34504 let _endpos = _endpos__3_ in
34505 let _v : 'tv_top_init =
34506 # 2220 "parser_cocci_menhir.mly"
34507 ( if P.struct_initializer _2
34508 then
34509 let il = P.drop_dot_commas _2 in
34510 Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,il,P.clt2mcode "}" _3,false))
34511 else
34512 Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3,true)) )
34513 # 34487 "parser_cocci_menhir.ml"
34514 in
34515 _menhir_env.MenhirLib.EngineTypes.stack <- {
34516 MenhirLib.EngineTypes.state = _menhir_s;
34517 MenhirLib.EngineTypes.semv = Obj.repr _v;
34518 MenhirLib.EngineTypes.startp = _startpos;
34519 MenhirLib.EngineTypes.endp = _endpos;
34520 MenhirLib.EngineTypes.next = _menhir_stack;
34521 });
34522 (fun _menhir_env ->
34523 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34524 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
34525 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
34526 let _endpos = _startpos in
34527 let _v : 'tv_toplevel_after_dots =
34528 # 2208 "parser_cocci_menhir.mly"
34529 ([])
34530 # 34504 "parser_cocci_menhir.ml"
34531 in
34532 _menhir_env.MenhirLib.EngineTypes.stack <- {
34533 MenhirLib.EngineTypes.state = _menhir_s;
34534 MenhirLib.EngineTypes.semv = Obj.repr _v;
34535 MenhirLib.EngineTypes.startp = _startpos;
34536 MenhirLib.EngineTypes.endp = _endpos;
34537 MenhirLib.EngineTypes.next = _menhir_stack;
34538 });
34539 (fun _menhir_env ->
34540 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34541 let {
34542 MenhirLib.EngineTypes.semv = _2;
34543 MenhirLib.EngineTypes.startp = _startpos__2_;
34544 MenhirLib.EngineTypes.endp = _endpos__2_;
34545 MenhirLib.EngineTypes.next = {
34546 MenhirLib.EngineTypes.state = _menhir_s;
34547 MenhirLib.EngineTypes.startp = _startpos__1_;
34548 MenhirLib.EngineTypes.endp = _endpos__1_;
34549 MenhirLib.EngineTypes.next = _menhir_stack;
34550 };
34551 } = _menhir_stack in
34552 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
34553 let _startpos = _startpos__1_ in
34554 let _endpos = _endpos__2_ in
34555 let _v : 'tv_toplevel_after_dots =
34556 # 2209 "parser_cocci_menhir.mly"
34557 (_2)
34558 # 34532 "parser_cocci_menhir.ml"
34559 in
34560 _menhir_env.MenhirLib.EngineTypes.stack <- {
34561 MenhirLib.EngineTypes.state = _menhir_s;
34562 MenhirLib.EngineTypes.semv = Obj.repr _v;
34563 MenhirLib.EngineTypes.startp = _startpos;
34564 MenhirLib.EngineTypes.endp = _endpos;
34565 MenhirLib.EngineTypes.next = _menhir_stack;
34566 });
34567 (fun _menhir_env ->
34568 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34569 let {
34570 MenhirLib.EngineTypes.semv = _2;
34571 MenhirLib.EngineTypes.startp = _startpos__2_;
34572 MenhirLib.EngineTypes.endp = _endpos__2_;
34573 MenhirLib.EngineTypes.next = {
34574 MenhirLib.EngineTypes.state = _menhir_s;
34575 MenhirLib.EngineTypes.semv = _1;
34576 MenhirLib.EngineTypes.startp = _startpos__1_;
34577 MenhirLib.EngineTypes.endp = _endpos__1_;
34578 MenhirLib.EngineTypes.next = _menhir_stack;
34579 };
34580 } = _menhir_stack in
34581 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
34582 let _1 : 'tv_expr = Obj.magic _1 in
34583 let _startpos = _startpos__1_ in
34584 let _endpos = _endpos__2_ in
34585 let _v : 'tv_toplevel_after_dots =
34586 # 2210 "parser_cocci_menhir.mly"
34587 ((Ast0.wrap(Ast0.Exp(_1)))::_2)
34588 # 34562 "parser_cocci_menhir.ml"
34589 in
34590 _menhir_env.MenhirLib.EngineTypes.stack <- {
34591 MenhirLib.EngineTypes.state = _menhir_s;
34592 MenhirLib.EngineTypes.semv = Obj.repr _v;
34593 MenhirLib.EngineTypes.startp = _startpos;
34594 MenhirLib.EngineTypes.endp = _endpos;
34595 MenhirLib.EngineTypes.next = _menhir_stack;
34596 });
34597 (fun _menhir_env ->
34598 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34599 let {
34600 MenhirLib.EngineTypes.semv = _2;
34601 MenhirLib.EngineTypes.startp = _startpos__2_;
34602 MenhirLib.EngineTypes.endp = _endpos__2_;
34603 MenhirLib.EngineTypes.next = {
34604 MenhirLib.EngineTypes.state = _menhir_s;
34605 MenhirLib.EngineTypes.semv = _1;
34606 MenhirLib.EngineTypes.startp = _startpos__1_;
34607 MenhirLib.EngineTypes.endp = _endpos__1_;
34608 MenhirLib.EngineTypes.next = _menhir_stack;
34609 };
34610 } = _menhir_stack in
34611 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
34612 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
34613 let _startpos = _startpos__1_ in
34614 let _endpos = _endpos__2_ in
34615 let _v : 'tv_toplevel_after_dots =
34616 # 2211 "parser_cocci_menhir.mly"
34617 (_1@_2)
34618 # 34592 "parser_cocci_menhir.ml"
34619 in
34620 _menhir_env.MenhirLib.EngineTypes.stack <- {
34621 MenhirLib.EngineTypes.state = _menhir_s;
34622 MenhirLib.EngineTypes.semv = Obj.repr _v;
34623 MenhirLib.EngineTypes.startp = _startpos;
34624 MenhirLib.EngineTypes.endp = _endpos;
34625 MenhirLib.EngineTypes.next = _menhir_stack;
34626 });
34627 (fun _menhir_env ->
34628 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34629 let {
34630 MenhirLib.EngineTypes.semv = _2;
34631 MenhirLib.EngineTypes.startp = _startpos__2_;
34632 MenhirLib.EngineTypes.endp = _endpos__2_;
34633 MenhirLib.EngineTypes.next = {
34634 MenhirLib.EngineTypes.state = _menhir_s;
34635 MenhirLib.EngineTypes.startp = _startpos__1_;
34636 MenhirLib.EngineTypes.endp = _endpos__1_;
34637 MenhirLib.EngineTypes.next = _menhir_stack;
34638 };
34639 } = _menhir_stack in
34640 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
34641 let _startpos = _startpos__1_ in
34642 let _endpos = _endpos__2_ in
34643 let _v : 'tv_toplevel_after_dots_init =
34644 # 2199 "parser_cocci_menhir.mly"
34645 (_2)
34646 # 34620 "parser_cocci_menhir.ml"
34647 in
34648 _menhir_env.MenhirLib.EngineTypes.stack <- {
34649 MenhirLib.EngineTypes.state = _menhir_s;
34650 MenhirLib.EngineTypes.semv = Obj.repr _v;
34651 MenhirLib.EngineTypes.startp = _startpos;
34652 MenhirLib.EngineTypes.endp = _endpos;
34653 MenhirLib.EngineTypes.next = _menhir_stack;
34654 });
34655 (fun _menhir_env ->
34656 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34657 let {
34658 MenhirLib.EngineTypes.semv = _2;
34659 MenhirLib.EngineTypes.startp = _startpos__2_;
34660 MenhirLib.EngineTypes.endp = _endpos__2_;
34661 MenhirLib.EngineTypes.next = {
34662 MenhirLib.EngineTypes.state = _menhir_s;
34663 MenhirLib.EngineTypes.semv = _1;
34664 MenhirLib.EngineTypes.startp = _startpos__1_;
34665 MenhirLib.EngineTypes.endp = _endpos__1_;
34666 MenhirLib.EngineTypes.next = _menhir_stack;
34667 };
34668 } = _menhir_stack in
34669 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
34670 let _1 : 'tv_expr = Obj.magic _1 in
34671 let _startpos = _startpos__1_ in
34672 let _endpos = _endpos__2_ in
34673 let _v : 'tv_toplevel_after_dots_init =
34674 # 2200 "parser_cocci_menhir.mly"
34675 ((Ast0.wrap(Ast0.Exp(_1)))::_2)
34676 # 34650 "parser_cocci_menhir.ml"
34677 in
34678 _menhir_env.MenhirLib.EngineTypes.stack <- {
34679 MenhirLib.EngineTypes.state = _menhir_s;
34680 MenhirLib.EngineTypes.semv = Obj.repr _v;
34681 MenhirLib.EngineTypes.startp = _startpos;
34682 MenhirLib.EngineTypes.endp = _endpos;
34683 MenhirLib.EngineTypes.next = _menhir_stack;
34684 });
34685 (fun _menhir_env ->
34686 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34687 let {
34688 MenhirLib.EngineTypes.semv = _2;
34689 MenhirLib.EngineTypes.startp = _startpos__2_;
34690 MenhirLib.EngineTypes.endp = _endpos__2_;
34691 MenhirLib.EngineTypes.next = {
34692 MenhirLib.EngineTypes.state = _menhir_s;
34693 MenhirLib.EngineTypes.semv = _1;
34694 MenhirLib.EngineTypes.startp = _startpos__1_;
34695 MenhirLib.EngineTypes.endp = _endpos__1_;
34696 MenhirLib.EngineTypes.next = _menhir_stack;
34697 };
34698 } = _menhir_stack in
34699 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
34700 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
34701 let _startpos = _startpos__1_ in
34702 let _endpos = _endpos__2_ in
34703 let _v : 'tv_toplevel_after_dots_init =
34704 # 2201 "parser_cocci_menhir.mly"
34705 (_1@_2)
34706 # 34680 "parser_cocci_menhir.ml"
34707 in
34708 _menhir_env.MenhirLib.EngineTypes.stack <- {
34709 MenhirLib.EngineTypes.state = _menhir_s;
34710 MenhirLib.EngineTypes.semv = Obj.repr _v;
34711 MenhirLib.EngineTypes.startp = _startpos;
34712 MenhirLib.EngineTypes.endp = _endpos;
34713 MenhirLib.EngineTypes.next = _menhir_stack;
34714 });
34715 (fun _menhir_env ->
34716 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34717 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
34718 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
34719 let _endpos = _startpos in
34720 let _v : 'tv_toplevel_after_exp =
34721 # 2204 "parser_cocci_menhir.mly"
34722 ([])
34723 # 34697 "parser_cocci_menhir.ml"
34724 in
34725 _menhir_env.MenhirLib.EngineTypes.stack <- {
34726 MenhirLib.EngineTypes.state = _menhir_s;
34727 MenhirLib.EngineTypes.semv = Obj.repr _v;
34728 MenhirLib.EngineTypes.startp = _startpos;
34729 MenhirLib.EngineTypes.endp = _endpos;
34730 MenhirLib.EngineTypes.next = _menhir_stack;
34731 });
34732 (fun _menhir_env ->
34733 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34734 let {
34735 MenhirLib.EngineTypes.semv = _2;
34736 MenhirLib.EngineTypes.startp = _startpos__2_;
34737 MenhirLib.EngineTypes.endp = _endpos__2_;
34738 MenhirLib.EngineTypes.next = {
34739 MenhirLib.EngineTypes.state = _menhir_s;
34740 MenhirLib.EngineTypes.semv = _1;
34741 MenhirLib.EngineTypes.startp = _startpos__1_;
34742 MenhirLib.EngineTypes.endp = _endpos__1_;
34743 MenhirLib.EngineTypes.next = _menhir_stack;
34744 };
34745 } = _menhir_stack in
34746 let _2 : 'tv_toplevel_after_dots = Obj.magic _2 in
34747 let _1 : 'tv_stm_dots = Obj.magic _1 in
34748 let _startpos = _startpos__1_ in
34749 let _endpos = _endpos__2_ in
34750 let _v : 'tv_toplevel_after_exp =
34751 # 2205 "parser_cocci_menhir.mly"
34752 (_1::_2)
34753 # 34727 "parser_cocci_menhir.ml"
34754 in
34755 _menhir_env.MenhirLib.EngineTypes.stack <- {
34756 MenhirLib.EngineTypes.state = _menhir_s;
34757 MenhirLib.EngineTypes.semv = Obj.repr _v;
34758 MenhirLib.EngineTypes.startp = _startpos;
34759 MenhirLib.EngineTypes.endp = _endpos;
34760 MenhirLib.EngineTypes.next = _menhir_stack;
34761 });
34762 (fun _menhir_env ->
34763 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34764 let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
34765 let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
34766 let _endpos = _startpos in
34767 let _v : 'tv_toplevel_after_stm =
34768 # 2214 "parser_cocci_menhir.mly"
34769 ([])
34770 # 34744 "parser_cocci_menhir.ml"
34771 in
34772 _menhir_env.MenhirLib.EngineTypes.stack <- {
34773 MenhirLib.EngineTypes.state = _menhir_s;
34774 MenhirLib.EngineTypes.semv = Obj.repr _v;
34775 MenhirLib.EngineTypes.startp = _startpos;
34776 MenhirLib.EngineTypes.endp = _endpos;
34777 MenhirLib.EngineTypes.next = _menhir_stack;
34778 });
34779 (fun _menhir_env ->
34780 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34781 let {
34782 MenhirLib.EngineTypes.semv = _2;
34783 MenhirLib.EngineTypes.startp = _startpos__2_;
34784 MenhirLib.EngineTypes.endp = _endpos__2_;
34785 MenhirLib.EngineTypes.next = {
34786 MenhirLib.EngineTypes.state = _menhir_s;
34787 MenhirLib.EngineTypes.semv = _1;
34788 MenhirLib.EngineTypes.startp = _startpos__1_;
34789 MenhirLib.EngineTypes.endp = _endpos__1_;
34790 MenhirLib.EngineTypes.next = _menhir_stack;
34791 };
34792 } = _menhir_stack in
34793 let _2 : 'tv_toplevel_after_dots = Obj.magic _2 in
34794 let _1 : 'tv_stm_dots = Obj.magic _1 in
34795 let _startpos = _startpos__1_ in
34796 let _endpos = _endpos__2_ in
34797 let _v : 'tv_toplevel_after_stm =
34798 # 2215 "parser_cocci_menhir.mly"
34799 (_1::_2)
34800 # 34774 "parser_cocci_menhir.ml"
34801 in
34802 _menhir_env.MenhirLib.EngineTypes.stack <- {
34803 MenhirLib.EngineTypes.state = _menhir_s;
34804 MenhirLib.EngineTypes.semv = Obj.repr _v;
34805 MenhirLib.EngineTypes.startp = _startpos;
34806 MenhirLib.EngineTypes.endp = _endpos;
34807 MenhirLib.EngineTypes.next = _menhir_stack;
34808 });
34809 (fun _menhir_env ->
34810 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34811 let {
34812 MenhirLib.EngineTypes.semv = _2;
34813 MenhirLib.EngineTypes.startp = _startpos__2_;
34814 MenhirLib.EngineTypes.endp = _endpos__2_;
34815 MenhirLib.EngineTypes.next = {
34816 MenhirLib.EngineTypes.state = _menhir_s;
34817 MenhirLib.EngineTypes.semv = _1;
34818 MenhirLib.EngineTypes.startp = _startpos__1_;
34819 MenhirLib.EngineTypes.endp = _endpos__1_;
34820 MenhirLib.EngineTypes.next = _menhir_stack;
34821 };
34822 } = _menhir_stack in
34823 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
34824 let _1 : 'tv_decl_statement = Obj.magic _1 in
34825 let _startpos = _startpos__1_ in
34826 let _endpos = _endpos__2_ in
34827 let _v : 'tv_toplevel_after_stm =
34828 # 2216 "parser_cocci_menhir.mly"
34829 (_1@_2)
34830 # 34804 "parser_cocci_menhir.ml"
34831 in
34832 _menhir_env.MenhirLib.EngineTypes.stack <- {
34833 MenhirLib.EngineTypes.state = _menhir_s;
34834 MenhirLib.EngineTypes.semv = Obj.repr _v;
34835 MenhirLib.EngineTypes.startp = _startpos;
34836 MenhirLib.EngineTypes.endp = _endpos;
34837 MenhirLib.EngineTypes.next = _menhir_stack;
34838 });
34839 (fun _menhir_env ->
34840 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34841 let {
34842 MenhirLib.EngineTypes.semv = _2;
34843 MenhirLib.EngineTypes.startp = _startpos__2_;
34844 MenhirLib.EngineTypes.endp = _endpos__2_;
34845 MenhirLib.EngineTypes.next = {
34846 MenhirLib.EngineTypes.state = _menhir_s;
34847 MenhirLib.EngineTypes.semv = _1;
34848 MenhirLib.EngineTypes.startp = _startpos__1_;
34849 MenhirLib.EngineTypes.endp = _endpos__1_;
34850 MenhirLib.EngineTypes.next = _menhir_stack;
34851 };
34852 } = _menhir_stack in
34853 let _2 : 'tv_toplevel_after_dots = Obj.magic _2 in
34854 let _1 : 'tv_stm_dots = Obj.magic _1 in
34855 let _startpos = _startpos__1_ in
34856 let _endpos = _endpos__2_ in
34857 let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ =
34858 # 2194 "parser_cocci_menhir.mly"
34859 ( _1::_2 )
34860 # 34834 "parser_cocci_menhir.ml"
34861 in
34862 _menhir_env.MenhirLib.EngineTypes.stack <- {
34863 MenhirLib.EngineTypes.state = _menhir_s;
34864 MenhirLib.EngineTypes.semv = Obj.repr _v;
34865 MenhirLib.EngineTypes.startp = _startpos;
34866 MenhirLib.EngineTypes.endp = _endpos;
34867 MenhirLib.EngineTypes.next = _menhir_stack;
34868 });
34869 (fun _menhir_env ->
34870 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34871 let {
34872 MenhirLib.EngineTypes.semv = _2;
34873 MenhirLib.EngineTypes.startp = _startpos__2_;
34874 MenhirLib.EngineTypes.endp = _endpos__2_;
34875 MenhirLib.EngineTypes.next = {
34876 MenhirLib.EngineTypes.state = _menhir_s;
34877 MenhirLib.EngineTypes.semv = _1;
34878 MenhirLib.EngineTypes.startp = _startpos__1_;
34879 MenhirLib.EngineTypes.endp = _endpos__1_;
34880 MenhirLib.EngineTypes.next = _menhir_stack;
34881 };
34882 } = _menhir_stack in
34883 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
34884 let _1 : 'tv_expr = Obj.magic _1 in
34885 let _startpos = _startpos__1_ in
34886 let _endpos = _endpos__2_ in
34887 let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ =
34888 # 2195 "parser_cocci_menhir.mly"
34889 ( (Ast0.wrap(Ast0.Exp(_1)))::_2 )
34890 # 34864 "parser_cocci_menhir.ml"
34891 in
34892 _menhir_env.MenhirLib.EngineTypes.stack <- {
34893 MenhirLib.EngineTypes.state = _menhir_s;
34894 MenhirLib.EngineTypes.semv = Obj.repr _v;
34895 MenhirLib.EngineTypes.startp = _startpos;
34896 MenhirLib.EngineTypes.endp = _endpos;
34897 MenhirLib.EngineTypes.next = _menhir_stack;
34898 });
34899 (fun _menhir_env ->
34900 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34901 let {
34902 MenhirLib.EngineTypes.semv = _2;
34903 MenhirLib.EngineTypes.startp = _startpos__2_;
34904 MenhirLib.EngineTypes.endp = _endpos__2_;
34905 MenhirLib.EngineTypes.next = {
34906 MenhirLib.EngineTypes.state = _menhir_s;
34907 MenhirLib.EngineTypes.semv = _1;
34908 MenhirLib.EngineTypes.startp = _startpos__1_;
34909 MenhirLib.EngineTypes.endp = _endpos__1_;
34910 MenhirLib.EngineTypes.next = _menhir_stack;
34911 };
34912 } = _menhir_stack in
34913 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
34914 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
34915 let _startpos = _startpos__1_ in
34916 let _endpos = _endpos__2_ in
34917 let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ =
34918 # 2196 "parser_cocci_menhir.mly"
34919 ( _1@_2 )
34920 # 34894 "parser_cocci_menhir.ml"
34921 in
34922 _menhir_env.MenhirLib.EngineTypes.stack <- {
34923 MenhirLib.EngineTypes.state = _menhir_s;
34924 MenhirLib.EngineTypes.semv = Obj.repr _v;
34925 MenhirLib.EngineTypes.startp = _startpos;
34926 MenhirLib.EngineTypes.endp = _endpos;
34927 MenhirLib.EngineTypes.next = _menhir_stack;
34928 });
34929 (fun _menhir_env ->
34930 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34931 let {
34932 MenhirLib.EngineTypes.semv = b;
34933 MenhirLib.EngineTypes.startp = _startpos_b_;
34934 MenhirLib.EngineTypes.endp = _endpos_b_;
34935 MenhirLib.EngineTypes.next = {
34936 MenhirLib.EngineTypes.semv = w0;
34937 MenhirLib.EngineTypes.startp = _startpos_w0_;
34938 MenhirLib.EngineTypes.endp = _endpos_w0_;
34939 MenhirLib.EngineTypes.next = {
34940 MenhirLib.EngineTypes.state = _menhir_s;
34941 MenhirLib.EngineTypes.semv = a0;
34942 MenhirLib.EngineTypes.startp = _startpos_a0_;
34943 MenhirLib.EngineTypes.endp = _endpos_a0_;
34944 MenhirLib.EngineTypes.next = _menhir_stack;
34945 };
34946 };
34947 } = _menhir_stack in
34948 let b : 'tv_toplevel_after_dots_init = Obj.magic b in
34949 let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
34950 let a0 : (
34951 # 119 "parser_cocci_menhir.mly"
34952 (Data.clt)
34953 # 34927 "parser_cocci_menhir.ml"
34954 ) = Obj.magic a0 in
34955 let _startpos = _startpos_a0_ in
34956 let _endpos = _endpos_b_ in
34957 let _v : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ = let a =
34958 let w = w0 in
34959 let a = a0 in
34960
34961 # 1140 "parser_cocci_menhir.mly"
34962 ( Ast0.wrap(Ast0.Dots(P.clt2mcode "..." a, List.concat w)) )
34963 # 34937 "parser_cocci_menhir.ml"
34964
34965 in
34966
34967 # 2187 "parser_cocci_menhir.mly"
34968 ( a::b )
34969 # 34943 "parser_cocci_menhir.ml"
34970 in
34971 _menhir_env.MenhirLib.EngineTypes.stack <- {
34972 MenhirLib.EngineTypes.state = _menhir_s;
34973 MenhirLib.EngineTypes.semv = Obj.repr _v;
34974 MenhirLib.EngineTypes.startp = _startpos;
34975 MenhirLib.EngineTypes.endp = _endpos;
34976 MenhirLib.EngineTypes.next = _menhir_stack;
34977 });
34978 (fun _menhir_env ->
34979 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
34980 let {
34981 MenhirLib.EngineTypes.semv = b;
34982 MenhirLib.EngineTypes.startp = _startpos_b_;
34983 MenhirLib.EngineTypes.endp = _endpos_b_;
34984 MenhirLib.EngineTypes.next = {
34985 MenhirLib.EngineTypes.semv = c0;
34986 MenhirLib.EngineTypes.startp = _startpos_c0_;
34987 MenhirLib.EngineTypes.endp = _endpos_c0_;
34988 MenhirLib.EngineTypes.next = {
34989 MenhirLib.EngineTypes.semv = b0;
34990 MenhirLib.EngineTypes.startp = _startpos_b0_;
34991 MenhirLib.EngineTypes.endp = _endpos_b0_;
34992 MenhirLib.EngineTypes.next = {
34993 MenhirLib.EngineTypes.semv = w0;
34994 MenhirLib.EngineTypes.startp = _startpos_w0_;
34995 MenhirLib.EngineTypes.endp = _endpos_w0_;
34996 MenhirLib.EngineTypes.next = {
34997 MenhirLib.EngineTypes.state = _menhir_s;
34998 MenhirLib.EngineTypes.semv = a0;
34999 MenhirLib.EngineTypes.startp = _startpos_a0_;
35000 MenhirLib.EngineTypes.endp = _endpos_a0_;
35001 MenhirLib.EngineTypes.next = _menhir_stack;
35002 };
35003 };
35004 };
35005 };
35006 } = _menhir_stack in
35007 let b : 'tv_toplevel_after_dots_init = Obj.magic b in
35008 let c0 : (
35009 # 119 "parser_cocci_menhir.mly"
35010 (Data.clt)
35011 # 34985 "parser_cocci_menhir.ml"
35012 ) = Obj.magic c0 in
35013 let b0 : 'tv_nest_start = Obj.magic b0 in
35014 let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
35015 let a0 : (
35016 # 119 "parser_cocci_menhir.mly"
35017 (Data.clt)
35018 # 34992 "parser_cocci_menhir.ml"
35019 ) = Obj.magic a0 in
35020 let _startpos = _startpos_a0_ in
35021 let _endpos = _endpos_b_ in
35022 let _v : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ = let a =
35023 let c = c0 in
35024 let b = b0 in
35025 let w = w0 in
35026 let a = a0 in
35027
35028 # 1144 "parser_cocci_menhir.mly"
35029 ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." a, b,
35030 P.clt2mcode "...>" c, List.concat w, false)) )
35031 # 35005 "parser_cocci_menhir.ml"
35032
35033 in
35034
35035 # 2188 "parser_cocci_menhir.mly"
35036 ( a::b )
35037 # 35011 "parser_cocci_menhir.ml"
35038 in
35039 _menhir_env.MenhirLib.EngineTypes.stack <- {
35040 MenhirLib.EngineTypes.state = _menhir_s;
35041 MenhirLib.EngineTypes.semv = Obj.repr _v;
35042 MenhirLib.EngineTypes.startp = _startpos;
35043 MenhirLib.EngineTypes.endp = _endpos;
35044 MenhirLib.EngineTypes.next = _menhir_stack;
35045 });
35046 (fun _menhir_env ->
35047 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35048 let {
35049 MenhirLib.EngineTypes.semv = b;
35050 MenhirLib.EngineTypes.startp = _startpos_b_;
35051 MenhirLib.EngineTypes.endp = _endpos_b_;
35052 MenhirLib.EngineTypes.next = {
35053 MenhirLib.EngineTypes.semv = c0;
35054 MenhirLib.EngineTypes.startp = _startpos_c0_;
35055 MenhirLib.EngineTypes.endp = _endpos_c0_;
35056 MenhirLib.EngineTypes.next = {
35057 MenhirLib.EngineTypes.semv = b0;
35058 MenhirLib.EngineTypes.startp = _startpos_b0_;
35059 MenhirLib.EngineTypes.endp = _endpos_b0_;
35060 MenhirLib.EngineTypes.next = {
35061 MenhirLib.EngineTypes.semv = w0;
35062 MenhirLib.EngineTypes.startp = _startpos_w0_;
35063 MenhirLib.EngineTypes.endp = _endpos_w0_;
35064 MenhirLib.EngineTypes.next = {
35065 MenhirLib.EngineTypes.state = _menhir_s;
35066 MenhirLib.EngineTypes.semv = a0;
35067 MenhirLib.EngineTypes.startp = _startpos_a0_;
35068 MenhirLib.EngineTypes.endp = _endpos_a0_;
35069 MenhirLib.EngineTypes.next = _menhir_stack;
35070 };
35071 };
35072 };
35073 };
35074 } = _menhir_stack in
35075 let b : 'tv_toplevel_after_dots_init = Obj.magic b in
35076 let c0 : (
35077 # 119 "parser_cocci_menhir.mly"
35078 (Data.clt)
35079 # 35053 "parser_cocci_menhir.ml"
35080 ) = Obj.magic c0 in
35081 let b0 : 'tv_nest_start = Obj.magic b0 in
35082 let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
35083 let a0 : (
35084 # 119 "parser_cocci_menhir.mly"
35085 (Data.clt)
35086 # 35060 "parser_cocci_menhir.ml"
35087 ) = Obj.magic a0 in
35088 let _startpos = _startpos_a0_ in
35089 let _endpos = _endpos_b_ in
35090 let _v : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ = let a =
35091 let c = c0 in
35092 let b = b0 in
35093 let w = w0 in
35094 let a = a0 in
35095
35096 # 1147 "parser_cocci_menhir.mly"
35097 ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." a, b,
35098 P.clt2mcode "...+>" c, List.concat w, true)) )
35099 # 35073 "parser_cocci_menhir.ml"
35100
35101 in
35102
35103 # 2188 "parser_cocci_menhir.mly"
35104 ( a::b )
35105 # 35079 "parser_cocci_menhir.ml"
35106 in
35107 _menhir_env.MenhirLib.EngineTypes.stack <- {
35108 MenhirLib.EngineTypes.state = _menhir_s;
35109 MenhirLib.EngineTypes.semv = Obj.repr _v;
35110 MenhirLib.EngineTypes.startp = _startpos;
35111 MenhirLib.EngineTypes.endp = _endpos;
35112 MenhirLib.EngineTypes.next = _menhir_stack;
35113 });
35114 (fun _menhir_env ->
35115 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35116 let {
35117 MenhirLib.EngineTypes.semv = c0;
35118 MenhirLib.EngineTypes.startp = _startpos_c0_;
35119 MenhirLib.EngineTypes.endp = _endpos_c0_;
35120 MenhirLib.EngineTypes.next = {
35121 MenhirLib.EngineTypes.semv = b0;
35122 MenhirLib.EngineTypes.startp = _startpos_b0_;
35123 MenhirLib.EngineTypes.endp = _endpos_b0_;
35124 MenhirLib.EngineTypes.next = {
35125 MenhirLib.EngineTypes.semv = w0;
35126 MenhirLib.EngineTypes.startp = _startpos_w0_;
35127 MenhirLib.EngineTypes.endp = _endpos_w0_;
35128 MenhirLib.EngineTypes.next = {
35129 MenhirLib.EngineTypes.state = _menhir_s;
35130 MenhirLib.EngineTypes.semv = a0;
35131 MenhirLib.EngineTypes.startp = _startpos_a0_;
35132 MenhirLib.EngineTypes.endp = _endpos_a0_;
35133 MenhirLib.EngineTypes.next = _menhir_stack;
35134 };
35135 };
35136 };
35137 } = _menhir_stack in
35138 let c0 : (
35139 # 119 "parser_cocci_menhir.mly"
35140 (Data.clt)
35141 # 35115 "parser_cocci_menhir.ml"
35142 ) = Obj.magic c0 in
35143 let b0 : 'tv_nest_start = Obj.magic b0 in
35144 let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
35145 let a0 : (
35146 # 119 "parser_cocci_menhir.mly"
35147 (Data.clt)
35148 # 35122 "parser_cocci_menhir.ml"
35149 ) = Obj.magic a0 in
35150 let _startpos = _startpos_a0_ in
35151 let _endpos = _endpos_c0_ in
35152 let _v : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ = let a =
35153 let c = c0 in
35154 let b = b0 in
35155 let w = w0 in
35156 let a = a0 in
35157
35158 # 1144 "parser_cocci_menhir.mly"
35159 ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." a, b,
35160 P.clt2mcode "...>" c, List.concat w, false)) )
35161 # 35135 "parser_cocci_menhir.ml"
35162
35163 in
35164
35165 # 2189 "parser_cocci_menhir.mly"
35166 ( [a] )
35167 # 35141 "parser_cocci_menhir.ml"
35168 in
35169 _menhir_env.MenhirLib.EngineTypes.stack <- {
35170 MenhirLib.EngineTypes.state = _menhir_s;
35171 MenhirLib.EngineTypes.semv = Obj.repr _v;
35172 MenhirLib.EngineTypes.startp = _startpos;
35173 MenhirLib.EngineTypes.endp = _endpos;
35174 MenhirLib.EngineTypes.next = _menhir_stack;
35175 });
35176 (fun _menhir_env ->
35177 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35178 let {
35179 MenhirLib.EngineTypes.semv = c0;
35180 MenhirLib.EngineTypes.startp = _startpos_c0_;
35181 MenhirLib.EngineTypes.endp = _endpos_c0_;
35182 MenhirLib.EngineTypes.next = {
35183 MenhirLib.EngineTypes.semv = b0;
35184 MenhirLib.EngineTypes.startp = _startpos_b0_;
35185 MenhirLib.EngineTypes.endp = _endpos_b0_;
35186 MenhirLib.EngineTypes.next = {
35187 MenhirLib.EngineTypes.semv = w0;
35188 MenhirLib.EngineTypes.startp = _startpos_w0_;
35189 MenhirLib.EngineTypes.endp = _endpos_w0_;
35190 MenhirLib.EngineTypes.next = {
35191 MenhirLib.EngineTypes.state = _menhir_s;
35192 MenhirLib.EngineTypes.semv = a0;
35193 MenhirLib.EngineTypes.startp = _startpos_a0_;
35194 MenhirLib.EngineTypes.endp = _endpos_a0_;
35195 MenhirLib.EngineTypes.next = _menhir_stack;
35196 };
35197 };
35198 };
35199 } = _menhir_stack in
35200 let c0 : (
35201 # 119 "parser_cocci_menhir.mly"
35202 (Data.clt)
35203 # 35177 "parser_cocci_menhir.ml"
35204 ) = Obj.magic c0 in
35205 let b0 : 'tv_nest_start = Obj.magic b0 in
35206 let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
35207 let a0 : (
35208 # 119 "parser_cocci_menhir.mly"
35209 (Data.clt)
35210 # 35184 "parser_cocci_menhir.ml"
35211 ) = Obj.magic a0 in
35212 let _startpos = _startpos_a0_ in
35213 let _endpos = _endpos_c0_ in
35214 let _v : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ = let a =
35215 let c = c0 in
35216 let b = b0 in
35217 let w = w0 in
35218 let a = a0 in
35219
35220 # 1147 "parser_cocci_menhir.mly"
35221 ( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." a, b,
35222 P.clt2mcode "...+>" c, List.concat w, true)) )
35223 # 35197 "parser_cocci_menhir.ml"
35224
35225 in
35226
35227 # 2189 "parser_cocci_menhir.mly"
35228 ( [a] )
35229 # 35203 "parser_cocci_menhir.ml"
35230 in
35231 _menhir_env.MenhirLib.EngineTypes.stack <- {
35232 MenhirLib.EngineTypes.state = _menhir_s;
35233 MenhirLib.EngineTypes.semv = Obj.repr _v;
35234 MenhirLib.EngineTypes.startp = _startpos;
35235 MenhirLib.EngineTypes.endp = _endpos;
35236 MenhirLib.EngineTypes.next = _menhir_stack;
35237 });
35238 (fun _menhir_env ->
35239 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35240 let {
35241 MenhirLib.EngineTypes.semv = _2;
35242 MenhirLib.EngineTypes.startp = _startpos__2_;
35243 MenhirLib.EngineTypes.endp = _endpos__2_;
35244 MenhirLib.EngineTypes.next = {
35245 MenhirLib.EngineTypes.state = _menhir_s;
35246 MenhirLib.EngineTypes.semv = _1;
35247 MenhirLib.EngineTypes.startp = _startpos__1_;
35248 MenhirLib.EngineTypes.endp = _endpos__1_;
35249 MenhirLib.EngineTypes.next = _menhir_stack;
35250 };
35251 } = _menhir_stack in
35252 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
35253 let _1 : 'tv_expr = Obj.magic _1 in
35254 let _startpos = _startpos__1_ in
35255 let _endpos = _endpos__2_ in
35256 let _v : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ =
35257 # 2190 "parser_cocci_menhir.mly"
35258 ( (Ast0.wrap(Ast0.Exp(_1)))::_2 )
35259 # 35233 "parser_cocci_menhir.ml"
35260 in
35261 _menhir_env.MenhirLib.EngineTypes.stack <- {
35262 MenhirLib.EngineTypes.state = _menhir_s;
35263 MenhirLib.EngineTypes.semv = Obj.repr _v;
35264 MenhirLib.EngineTypes.startp = _startpos;
35265 MenhirLib.EngineTypes.endp = _endpos;
35266 MenhirLib.EngineTypes.next = _menhir_stack;
35267 });
35268 (fun _menhir_env ->
35269 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35270 let {
35271 MenhirLib.EngineTypes.semv = _2;
35272 MenhirLib.EngineTypes.startp = _startpos__2_;
35273 MenhirLib.EngineTypes.endp = _endpos__2_;
35274 MenhirLib.EngineTypes.next = {
35275 MenhirLib.EngineTypes.state = _menhir_s;
35276 MenhirLib.EngineTypes.semv = _1;
35277 MenhirLib.EngineTypes.startp = _startpos__1_;
35278 MenhirLib.EngineTypes.endp = _endpos__1_;
35279 MenhirLib.EngineTypes.next = _menhir_stack;
35280 };
35281 } = _menhir_stack in
35282 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
35283 let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
35284 let _startpos = _startpos__1_ in
35285 let _endpos = _endpos__2_ in
35286 let _v : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ =
35287 # 2191 "parser_cocci_menhir.mly"
35288 ( _1@_2 )
35289 # 35263 "parser_cocci_menhir.ml"
35290 in
35291 _menhir_env.MenhirLib.EngineTypes.stack <- {
35292 MenhirLib.EngineTypes.state = _menhir_s;
35293 MenhirLib.EngineTypes.semv = Obj.repr _v;
35294 MenhirLib.EngineTypes.startp = _startpos;
35295 MenhirLib.EngineTypes.endp = _endpos;
35296 MenhirLib.EngineTypes.next = _menhir_stack;
35297 });
35298 (fun _menhir_env ->
35299 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35300 let {
35301 MenhirLib.EngineTypes.state = _menhir_s;
35302 MenhirLib.EngineTypes.semv = _1;
35303 MenhirLib.EngineTypes.startp = _startpos__1_;
35304 MenhirLib.EngineTypes.endp = _endpos__1_;
35305 MenhirLib.EngineTypes.next = _menhir_stack;
35306 } = _menhir_stack in
35307 let _1 : 'tv_disj_ident = Obj.magic _1 in
35308 let _startpos = _startpos__1_ in
35309 let _endpos = _endpos__1_ in
35310 let _v : 'tv_type_ident =
35311 # 2045 "parser_cocci_menhir.mly"
35312 ( _1 )
35313 # 35287 "parser_cocci_menhir.ml"
35314 in
35315 _menhir_env.MenhirLib.EngineTypes.stack <- {
35316 MenhirLib.EngineTypes.state = _menhir_s;
35317 MenhirLib.EngineTypes.semv = Obj.repr _v;
35318 MenhirLib.EngineTypes.startp = _startpos;
35319 MenhirLib.EngineTypes.endp = _endpos;
35320 MenhirLib.EngineTypes.next = _menhir_stack;
35321 });
35322 (fun _menhir_env ->
35323 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35324 let {
35325 MenhirLib.EngineTypes.state = _menhir_s;
35326 MenhirLib.EngineTypes.semv = _1;
35327 MenhirLib.EngineTypes.startp = _startpos__1_;
35328 MenhirLib.EngineTypes.endp = _endpos__1_;
35329 MenhirLib.EngineTypes.next = _menhir_stack;
35330 } = _menhir_stack in
35331 let _1 : (
35332 # 101 "parser_cocci_menhir.mly"
35333 (string * Data.clt)
35334 # 35308 "parser_cocci_menhir.ml"
35335 ) = Obj.magic _1 in
35336 let _startpos = _startpos__1_ in
35337 let _endpos = _endpos__1_ in
35338 let _v : 'tv_type_ident =
35339 # 2047 "parser_cocci_menhir.mly"
35340 ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
35341 # 35315 "parser_cocci_menhir.ml"
35342 in
35343 _menhir_env.MenhirLib.EngineTypes.stack <- {
35344 MenhirLib.EngineTypes.state = _menhir_s;
35345 MenhirLib.EngineTypes.semv = Obj.repr _v;
35346 MenhirLib.EngineTypes.startp = _startpos;
35347 MenhirLib.EngineTypes.endp = _endpos;
35348 MenhirLib.EngineTypes.next = _menhir_stack;
35349 });
35350 (fun _menhir_env ->
35351 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35352 let {
35353 MenhirLib.EngineTypes.semv = m;
35354 MenhirLib.EngineTypes.startp = _startpos_m_;
35355 MenhirLib.EngineTypes.endp = _endpos_m_;
35356 MenhirLib.EngineTypes.next = {
35357 MenhirLib.EngineTypes.state = _menhir_s;
35358 MenhirLib.EngineTypes.semv = ty;
35359 MenhirLib.EngineTypes.startp = _startpos_ty_;
35360 MenhirLib.EngineTypes.endp = _endpos_ty_;
35361 MenhirLib.EngineTypes.next = _menhir_stack;
35362 };
35363 } = _menhir_stack in
35364 let m : 'tv_list_TMul_ = Obj.magic m in
35365 let ty : 'tv_all_basic_types = Obj.magic ty in
35366 let _startpos = _startpos_ty_ in
35367 let _endpos = _endpos_m_ in
35368 let _v : 'tv_typedef_ctype = let cv =
35369
35370 # 39 "standard.mly"
35371 ( None )
35372 # 35346 "parser_cocci_menhir.ml"
35373
35374 in
35375
35376 # 737 "parser_cocci_menhir.mly"
35377 ( P.pointerify (P.make_cv cv ty) m )
35378 # 35352 "parser_cocci_menhir.ml"
35379 in
35380 _menhir_env.MenhirLib.EngineTypes.stack <- {
35381 MenhirLib.EngineTypes.state = _menhir_s;
35382 MenhirLib.EngineTypes.semv = Obj.repr _v;
35383 MenhirLib.EngineTypes.startp = _startpos;
35384 MenhirLib.EngineTypes.endp = _endpos;
35385 MenhirLib.EngineTypes.next = _menhir_stack;
35386 });
35387 (fun _menhir_env ->
35388 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35389 let {
35390 MenhirLib.EngineTypes.semv = m;
35391 MenhirLib.EngineTypes.startp = _startpos_m_;
35392 MenhirLib.EngineTypes.endp = _endpos_m_;
35393 MenhirLib.EngineTypes.next = {
35394 MenhirLib.EngineTypes.semv = ty;
35395 MenhirLib.EngineTypes.startp = _startpos_ty_;
35396 MenhirLib.EngineTypes.endp = _endpos_ty_;
35397 MenhirLib.EngineTypes.next = {
35398 MenhirLib.EngineTypes.state = _menhir_s;
35399 MenhirLib.EngineTypes.semv = x0;
35400 MenhirLib.EngineTypes.startp = _startpos_x0_;
35401 MenhirLib.EngineTypes.endp = _endpos_x0_;
35402 MenhirLib.EngineTypes.next = _menhir_stack;
35403 };
35404 };
35405 } = _menhir_stack in
35406 let m : 'tv_list_TMul_ = Obj.magic m in
35407 let ty : 'tv_all_basic_types = Obj.magic ty in
35408 let x0 : 'tv_const_vol = Obj.magic x0 in
35409 let _startpos = _startpos_x0_ in
35410 let _endpos = _endpos_m_ in
35411 let _v : 'tv_typedef_ctype = let cv =
35412 let x = x0 in
35413
35414 # 41 "standard.mly"
35415 ( Some x )
35416 # 35390 "parser_cocci_menhir.ml"
35417
35418 in
35419
35420 # 737 "parser_cocci_menhir.mly"
35421 ( P.pointerify (P.make_cv cv ty) m )
35422 # 35396 "parser_cocci_menhir.ml"
35423 in
35424 _menhir_env.MenhirLib.EngineTypes.stack <- {
35425 MenhirLib.EngineTypes.state = _menhir_s;
35426 MenhirLib.EngineTypes.semv = Obj.repr _v;
35427 MenhirLib.EngineTypes.startp = _startpos;
35428 MenhirLib.EngineTypes.endp = _endpos;
35429 MenhirLib.EngineTypes.next = _menhir_stack;
35430 });
35431 (fun _menhir_env ->
35432 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35433 let {
35434 MenhirLib.EngineTypes.semv = rp;
35435 MenhirLib.EngineTypes.startp = _startpos_rp_;
35436 MenhirLib.EngineTypes.endp = _endpos_rp_;
35437 MenhirLib.EngineTypes.next = {
35438 MenhirLib.EngineTypes.semv = t;
35439 MenhirLib.EngineTypes.startp = _startpos_t_;
35440 MenhirLib.EngineTypes.endp = _endpos_t_;
35441 MenhirLib.EngineTypes.next = {
35442 MenhirLib.EngineTypes.state = _menhir_s;
35443 MenhirLib.EngineTypes.semv = lp;
35444 MenhirLib.EngineTypes.startp = _startpos_lp_;
35445 MenhirLib.EngineTypes.endp = _endpos_lp_;
35446 MenhirLib.EngineTypes.next = _menhir_stack;
35447 };
35448 };
35449 } = _menhir_stack in
35450 let rp : (
35451 # 123 "parser_cocci_menhir.mly"
35452 (Data.clt)
35453 # 35427 "parser_cocci_menhir.ml"
35454 ) = Obj.magic rp in
35455 let t : 'tv_midzero_list_mctype_mctype_ = Obj.magic t in
35456 let lp : (
35457 # 122 "parser_cocci_menhir.mly"
35458 (Data.clt)
35459 # 35433 "parser_cocci_menhir.ml"
35460 ) = Obj.magic lp in
35461 let _startpos = _startpos_lp_ in
35462 let _endpos = _endpos_rp_ in
35463 let _v : 'tv_typedef_ctype =
35464 # 739 "parser_cocci_menhir.mly"
35465 ( let (mids,code) = t in
35466 Ast0.wrap
35467 (Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) )
35468 # 35442 "parser_cocci_menhir.ml"
35469 in
35470 _menhir_env.MenhirLib.EngineTypes.stack <- {
35471 MenhirLib.EngineTypes.state = _menhir_s;
35472 MenhirLib.EngineTypes.semv = Obj.repr _v;
35473 MenhirLib.EngineTypes.startp = _startpos;
35474 MenhirLib.EngineTypes.endp = _endpos;
35475 MenhirLib.EngineTypes.next = _menhir_stack;
35476 });
35477 (fun _menhir_env ->
35478 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35479 let {
35480 MenhirLib.EngineTypes.state = _menhir_s;
35481 MenhirLib.EngineTypes.semv = _1;
35482 MenhirLib.EngineTypes.startp = _startpos__1_;
35483 MenhirLib.EngineTypes.endp = _endpos__1_;
35484 MenhirLib.EngineTypes.next = _menhir_stack;
35485 } = _menhir_stack in
35486 let _1 : (
35487 # 109 "parser_cocci_menhir.mly"
35488 (Parse_aux.info)
35489 # 35463 "parser_cocci_menhir.ml"
35490 ) = Obj.magic _1 in
35491 let _startpos = _startpos__1_ in
35492 let _endpos = _endpos__1_ in
35493 let _v : 'tv_typedef_ctype =
35494 # 742 "parser_cocci_menhir.mly"
35495 ( tmeta_to_type _1 )
35496 # 35470 "parser_cocci_menhir.ml"
35497 in
35498 _menhir_env.MenhirLib.EngineTypes.stack <- {
35499 MenhirLib.EngineTypes.state = _menhir_s;
35500 MenhirLib.EngineTypes.semv = Obj.repr _v;
35501 MenhirLib.EngineTypes.startp = _startpos;
35502 MenhirLib.EngineTypes.endp = _endpos;
35503 MenhirLib.EngineTypes.next = _menhir_stack;
35504 });
35505 (fun _menhir_env ->
35506 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35507 let {
35508 MenhirLib.EngineTypes.state = _menhir_s;
35509 MenhirLib.EngineTypes.semv = _1;
35510 MenhirLib.EngineTypes.startp = _startpos__1_;
35511 MenhirLib.EngineTypes.endp = _endpos__1_;
35512 MenhirLib.EngineTypes.next = _menhir_stack;
35513 } = _menhir_stack in
35514 let _1 : 'tv_pure_ident_or_symbol = Obj.magic _1 in
35515 let _startpos = _startpos__1_ in
35516 let _endpos = _endpos__1_ in
35517 let _v : 'tv_typedef_ident =
35518 # 2065 "parser_cocci_menhir.mly"
35519 ( Ast0.wrap(Ast0.TypeName(P.id2mcode _1)) )
35520 # 35494 "parser_cocci_menhir.ml"
35521 in
35522 _menhir_env.MenhirLib.EngineTypes.stack <- {
35523 MenhirLib.EngineTypes.state = _menhir_s;
35524 MenhirLib.EngineTypes.semv = Obj.repr _v;
35525 MenhirLib.EngineTypes.startp = _startpos;
35526 MenhirLib.EngineTypes.endp = _endpos;
35527 MenhirLib.EngineTypes.next = _menhir_stack;
35528 });
35529 (fun _menhir_env ->
35530 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35531 let {
35532 MenhirLib.EngineTypes.state = _menhir_s;
35533 MenhirLib.EngineTypes.semv = _1;
35534 MenhirLib.EngineTypes.startp = _startpos__1_;
35535 MenhirLib.EngineTypes.endp = _endpos__1_;
35536 MenhirLib.EngineTypes.next = _menhir_stack;
35537 } = _menhir_stack in
35538 let _1 : (
35539 # 109 "parser_cocci_menhir.mly"
35540 (Parse_aux.info)
35541 # 35515 "parser_cocci_menhir.ml"
35542 ) = Obj.magic _1 in
35543 let _startpos = _startpos__1_ in
35544 let _endpos = _endpos__1_ in
35545 let _v : 'tv_typedef_ident =
35546 # 2066 "parser_cocci_menhir.mly"
35547 ( tmeta_to_type _1 )
35548 # 35522 "parser_cocci_menhir.ml"
35549 in
35550 _menhir_env.MenhirLib.EngineTypes.stack <- {
35551 MenhirLib.EngineTypes.state = _menhir_s;
35552 MenhirLib.EngineTypes.semv = Obj.repr _v;
35553 MenhirLib.EngineTypes.startp = _startpos;
35554 MenhirLib.EngineTypes.endp = _endpos;
35555 MenhirLib.EngineTypes.next = _menhir_stack;
35556 });
35557 (fun _menhir_env ->
35558 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35559 let {
35560 MenhirLib.EngineTypes.state = _menhir_s;
35561 MenhirLib.EngineTypes.semv = _1;
35562 MenhirLib.EngineTypes.startp = _startpos__1_;
35563 MenhirLib.EngineTypes.endp = _endpos__1_;
35564 MenhirLib.EngineTypes.next = _menhir_stack;
35565 } = _menhir_stack in
35566 let _1 : (
35567 # 108 "parser_cocci_menhir.mly"
35568 (Parse_aux.info)
35569 # 35543 "parser_cocci_menhir.ml"
35570 ) = Obj.magic _1 in
35571 let _startpos = _startpos__1_ in
35572 let _endpos = _endpos__1_ in
35573 let _v : 'tv_typedef_ident =
35574 # 2068 "parser_cocci_menhir.mly"
35575 ( let (nm,pure,clt) = _1 in
35576 Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
35577 # 35551 "parser_cocci_menhir.ml"
35578 in
35579 _menhir_env.MenhirLib.EngineTypes.stack <- {
35580 MenhirLib.EngineTypes.state = _menhir_s;
35581 MenhirLib.EngineTypes.semv = Obj.repr _v;
35582 MenhirLib.EngineTypes.startp = _startpos;
35583 MenhirLib.EngineTypes.endp = _endpos;
35584 MenhirLib.EngineTypes.next = _menhir_stack;
35585 });
35586 (fun _menhir_env ->
35587 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35588 let {
35589 MenhirLib.EngineTypes.state = _menhir_s;
35590 MenhirLib.EngineTypes.semv = _1;
35591 MenhirLib.EngineTypes.startp = _startpos__1_;
35592 MenhirLib.EngineTypes.endp = _endpos__1_;
35593 MenhirLib.EngineTypes.next = _menhir_stack;
35594 } = _menhir_stack in
35595 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
35596 let _startpos = _startpos__1_ in
35597 let _endpos = _endpos__1_ in
35598 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
35599 # 1617 "parser_cocci_menhir.mly"
35600 ( _1 )
35601 # 35575 "parser_cocci_menhir.ml"
35602 in
35603 _menhir_env.MenhirLib.EngineTypes.stack <- {
35604 MenhirLib.EngineTypes.state = _menhir_s;
35605 MenhirLib.EngineTypes.semv = Obj.repr _v;
35606 MenhirLib.EngineTypes.startp = _startpos;
35607 MenhirLib.EngineTypes.endp = _endpos;
35608 MenhirLib.EngineTypes.next = _menhir_stack;
35609 });
35610 (fun _menhir_env ->
35611 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35612 let {
35613 MenhirLib.EngineTypes.semv = _2;
35614 MenhirLib.EngineTypes.startp = _startpos__2_;
35615 MenhirLib.EngineTypes.endp = _endpos__2_;
35616 MenhirLib.EngineTypes.next = {
35617 MenhirLib.EngineTypes.state = _menhir_s;
35618 MenhirLib.EngineTypes.semv = _1;
35619 MenhirLib.EngineTypes.startp = _startpos__1_;
35620 MenhirLib.EngineTypes.endp = _endpos__1_;
35621 MenhirLib.EngineTypes.next = _menhir_stack;
35622 };
35623 } = _menhir_stack in
35624 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
35625 let _1 : (
35626 # 131 "parser_cocci_menhir.mly"
35627 (Data.clt)
35628 # 35602 "parser_cocci_menhir.ml"
35629 ) = Obj.magic _1 in
35630 let _startpos = _startpos__1_ in
35631 let _endpos = _endpos__2_ in
35632 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
35633 # 1619 "parser_cocci_menhir.mly"
35634 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
35635 # 35609 "parser_cocci_menhir.ml"
35636 in
35637 _menhir_env.MenhirLib.EngineTypes.stack <- {
35638 MenhirLib.EngineTypes.state = _menhir_s;
35639 MenhirLib.EngineTypes.semv = Obj.repr _v;
35640 MenhirLib.EngineTypes.startp = _startpos;
35641 MenhirLib.EngineTypes.endp = _endpos;
35642 MenhirLib.EngineTypes.next = _menhir_stack;
35643 });
35644 (fun _menhir_env ->
35645 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35646 let {
35647 MenhirLib.EngineTypes.semv = _2;
35648 MenhirLib.EngineTypes.startp = _startpos__2_;
35649 MenhirLib.EngineTypes.endp = _endpos__2_;
35650 MenhirLib.EngineTypes.next = {
35651 MenhirLib.EngineTypes.state = _menhir_s;
35652 MenhirLib.EngineTypes.semv = _1;
35653 MenhirLib.EngineTypes.startp = _startpos__1_;
35654 MenhirLib.EngineTypes.endp = _endpos__1_;
35655 MenhirLib.EngineTypes.next = _menhir_stack;
35656 };
35657 } = _menhir_stack in
35658 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
35659 let _1 : (
35660 # 131 "parser_cocci_menhir.mly"
35661 (Data.clt)
35662 # 35636 "parser_cocci_menhir.ml"
35663 ) = Obj.magic _1 in
35664 let _startpos = _startpos__1_ in
35665 let _endpos = _endpos__2_ in
35666 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
35667 # 1621 "parser_cocci_menhir.mly"
35668 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
35669 # 35643 "parser_cocci_menhir.ml"
35670 in
35671 _menhir_env.MenhirLib.EngineTypes.stack <- {
35672 MenhirLib.EngineTypes.state = _menhir_s;
35673 MenhirLib.EngineTypes.semv = Obj.repr _v;
35674 MenhirLib.EngineTypes.startp = _startpos;
35675 MenhirLib.EngineTypes.endp = _endpos;
35676 MenhirLib.EngineTypes.next = _menhir_stack;
35677 });
35678 (fun _menhir_env ->
35679 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35680 let {
35681 MenhirLib.EngineTypes.semv = _2;
35682 MenhirLib.EngineTypes.startp = _startpos__2_;
35683 MenhirLib.EngineTypes.endp = _endpos__2_;
35684 MenhirLib.EngineTypes.next = {
35685 MenhirLib.EngineTypes.state = _menhir_s;
35686 MenhirLib.EngineTypes.semv = _1;
35687 MenhirLib.EngineTypes.startp = _startpos__1_;
35688 MenhirLib.EngineTypes.endp = _endpos__1_;
35689 MenhirLib.EngineTypes.next = _menhir_stack;
35690 };
35691 } = _menhir_stack in
35692 let _2 : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic _2 in
35693 let _1 : 'tv_unary_op = Obj.magic _1 in
35694 let _startpos = _startpos__1_ in
35695 let _endpos = _endpos__2_ in
35696 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
35697 # 1623 "parser_cocci_menhir.mly"
35698 ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
35699 # 35673 "parser_cocci_menhir.ml"
35700 in
35701 _menhir_env.MenhirLib.EngineTypes.stack <- {
35702 MenhirLib.EngineTypes.state = _menhir_s;
35703 MenhirLib.EngineTypes.semv = Obj.repr _v;
35704 MenhirLib.EngineTypes.startp = _startpos;
35705 MenhirLib.EngineTypes.endp = _endpos;
35706 MenhirLib.EngineTypes.next = _menhir_stack;
35707 });
35708 (fun _menhir_env ->
35709 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35710 let {
35711 MenhirLib.EngineTypes.semv = _2;
35712 MenhirLib.EngineTypes.startp = _startpos__2_;
35713 MenhirLib.EngineTypes.endp = _endpos__2_;
35714 MenhirLib.EngineTypes.next = {
35715 MenhirLib.EngineTypes.state = _menhir_s;
35716 MenhirLib.EngineTypes.semv = _1;
35717 MenhirLib.EngineTypes.startp = _startpos__1_;
35718 MenhirLib.EngineTypes.endp = _endpos__1_;
35719 MenhirLib.EngineTypes.next = _menhir_stack;
35720 };
35721 } = _menhir_stack in
35722 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
35723 let _1 : (
35724 # 122 "parser_cocci_menhir.mly"
35725 (Data.clt)
35726 # 35700 "parser_cocci_menhir.ml"
35727 ) = Obj.magic _1 in
35728 let _startpos = _startpos__1_ in
35729 let _endpos = _endpos__2_ in
35730 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
35731 # 1625 "parser_cocci_menhir.mly"
35732 ( let mcode = P.clt2mcode Ast.Not _1 in
35733 Ast0.wrap(Ast0.Unary(_2, mcode)) )
35734 # 35708 "parser_cocci_menhir.ml"
35735 in
35736 _menhir_env.MenhirLib.EngineTypes.stack <- {
35737 MenhirLib.EngineTypes.state = _menhir_s;
35738 MenhirLib.EngineTypes.semv = Obj.repr _v;
35739 MenhirLib.EngineTypes.startp = _startpos;
35740 MenhirLib.EngineTypes.endp = _endpos;
35741 MenhirLib.EngineTypes.next = _menhir_stack;
35742 });
35743 (fun _menhir_env ->
35744 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35745 let {
35746 MenhirLib.EngineTypes.semv = _2;
35747 MenhirLib.EngineTypes.startp = _startpos__2_;
35748 MenhirLib.EngineTypes.endp = _endpos__2_;
35749 MenhirLib.EngineTypes.next = {
35750 MenhirLib.EngineTypes.state = _menhir_s;
35751 MenhirLib.EngineTypes.semv = _1;
35752 MenhirLib.EngineTypes.startp = _startpos__1_;
35753 MenhirLib.EngineTypes.endp = _endpos__1_;
35754 MenhirLib.EngineTypes.next = _menhir_stack;
35755 };
35756 } = _menhir_stack in
35757 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
35758 let _1 : (
35759 # 100 "parser_cocci_menhir.mly"
35760 (Data.clt)
35761 # 35735 "parser_cocci_menhir.ml"
35762 ) = Obj.magic _1 in
35763 let _startpos = _startpos__1_ in
35764 let _endpos = _endpos__2_ in
35765 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
35766 # 1628 "parser_cocci_menhir.mly"
35767 ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
35768 # 35742 "parser_cocci_menhir.ml"
35769 in
35770 _menhir_env.MenhirLib.EngineTypes.stack <- {
35771 MenhirLib.EngineTypes.state = _menhir_s;
35772 MenhirLib.EngineTypes.semv = Obj.repr _v;
35773 MenhirLib.EngineTypes.startp = _startpos;
35774 MenhirLib.EngineTypes.endp = _endpos;
35775 MenhirLib.EngineTypes.next = _menhir_stack;
35776 });
35777 (fun _menhir_env ->
35778 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35779 let {
35780 MenhirLib.EngineTypes.semv = rp;
35781 MenhirLib.EngineTypes.startp = _startpos_rp_;
35782 MenhirLib.EngineTypes.endp = _endpos_rp_;
35783 MenhirLib.EngineTypes.next = {
35784 MenhirLib.EngineTypes.semv = t;
35785 MenhirLib.EngineTypes.startp = _startpos_t_;
35786 MenhirLib.EngineTypes.endp = _endpos_t_;
35787 MenhirLib.EngineTypes.next = {
35788 MenhirLib.EngineTypes.semv = lp;
35789 MenhirLib.EngineTypes.startp = _startpos_lp_;
35790 MenhirLib.EngineTypes.endp = _endpos_lp_;
35791 MenhirLib.EngineTypes.next = {
35792 MenhirLib.EngineTypes.state = _menhir_s;
35793 MenhirLib.EngineTypes.semv = s;
35794 MenhirLib.EngineTypes.startp = _startpos_s_;
35795 MenhirLib.EngineTypes.endp = _endpos_s_;
35796 MenhirLib.EngineTypes.next = _menhir_stack;
35797 };
35798 };
35799 };
35800 } = _menhir_stack in
35801 let rp : (
35802 # 123 "parser_cocci_menhir.mly"
35803 (Data.clt)
35804 # 35778 "parser_cocci_menhir.ml"
35805 ) = Obj.magic rp in
35806 let t : 'tv_ctype = Obj.magic t in
35807 let lp : (
35808 # 122 "parser_cocci_menhir.mly"
35809 (Data.clt)
35810 # 35784 "parser_cocci_menhir.ml"
35811 ) = Obj.magic lp in
35812 let s : (
35813 # 100 "parser_cocci_menhir.mly"
35814 (Data.clt)
35815 # 35789 "parser_cocci_menhir.ml"
35816 ) = Obj.magic s in
35817 let _startpos = _startpos_s_ in
35818 let _endpos = _endpos_rp_ in
35819 let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
35820 # 1630 "parser_cocci_menhir.mly"
35821 ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
35822 P.clt2mcode "(" lp,t,
35823 P.clt2mcode ")" rp)) )
35824 # 35798 "parser_cocci_menhir.ml"
35825 in
35826 _menhir_env.MenhirLib.EngineTypes.stack <- {
35827 MenhirLib.EngineTypes.state = _menhir_s;
35828 MenhirLib.EngineTypes.semv = Obj.repr _v;
35829 MenhirLib.EngineTypes.startp = _startpos;
35830 MenhirLib.EngineTypes.endp = _endpos;
35831 MenhirLib.EngineTypes.next = _menhir_stack;
35832 });
35833 (fun _menhir_env ->
35834 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35835 let {
35836 MenhirLib.EngineTypes.state = _menhir_s;
35837 MenhirLib.EngineTypes.semv = _1;
35838 MenhirLib.EngineTypes.startp = _startpos__1_;
35839 MenhirLib.EngineTypes.endp = _endpos__1_;
35840 MenhirLib.EngineTypes.next = _menhir_stack;
35841 } = _menhir_stack in
35842 let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
35843 let _startpos = _startpos__1_ in
35844 let _endpos = _endpos__1_ in
35845 let _v : 'tv_unary_expr_eexpr_invalid_ =
35846 # 1617 "parser_cocci_menhir.mly"
35847 ( _1 )
35848 # 35822 "parser_cocci_menhir.ml"
35849 in
35850 _menhir_env.MenhirLib.EngineTypes.stack <- {
35851 MenhirLib.EngineTypes.state = _menhir_s;
35852 MenhirLib.EngineTypes.semv = Obj.repr _v;
35853 MenhirLib.EngineTypes.startp = _startpos;
35854 MenhirLib.EngineTypes.endp = _endpos;
35855 MenhirLib.EngineTypes.next = _menhir_stack;
35856 });
35857 (fun _menhir_env ->
35858 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35859 let {
35860 MenhirLib.EngineTypes.semv = _2;
35861 MenhirLib.EngineTypes.startp = _startpos__2_;
35862 MenhirLib.EngineTypes.endp = _endpos__2_;
35863 MenhirLib.EngineTypes.next = {
35864 MenhirLib.EngineTypes.state = _menhir_s;
35865 MenhirLib.EngineTypes.semv = _1;
35866 MenhirLib.EngineTypes.startp = _startpos__1_;
35867 MenhirLib.EngineTypes.endp = _endpos__1_;
35868 MenhirLib.EngineTypes.next = _menhir_stack;
35869 };
35870 } = _menhir_stack in
35871 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
35872 let _1 : (
35873 # 131 "parser_cocci_menhir.mly"
35874 (Data.clt)
35875 # 35849 "parser_cocci_menhir.ml"
35876 ) = Obj.magic _1 in
35877 let _startpos = _startpos__1_ in
35878 let _endpos = _endpos__2_ in
35879 let _v : 'tv_unary_expr_eexpr_invalid_ =
35880 # 1619 "parser_cocci_menhir.mly"
35881 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
35882 # 35856 "parser_cocci_menhir.ml"
35883 in
35884 _menhir_env.MenhirLib.EngineTypes.stack <- {
35885 MenhirLib.EngineTypes.state = _menhir_s;
35886 MenhirLib.EngineTypes.semv = Obj.repr _v;
35887 MenhirLib.EngineTypes.startp = _startpos;
35888 MenhirLib.EngineTypes.endp = _endpos;
35889 MenhirLib.EngineTypes.next = _menhir_stack;
35890 });
35891 (fun _menhir_env ->
35892 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35893 let {
35894 MenhirLib.EngineTypes.semv = _2;
35895 MenhirLib.EngineTypes.startp = _startpos__2_;
35896 MenhirLib.EngineTypes.endp = _endpos__2_;
35897 MenhirLib.EngineTypes.next = {
35898 MenhirLib.EngineTypes.state = _menhir_s;
35899 MenhirLib.EngineTypes.semv = _1;
35900 MenhirLib.EngineTypes.startp = _startpos__1_;
35901 MenhirLib.EngineTypes.endp = _endpos__1_;
35902 MenhirLib.EngineTypes.next = _menhir_stack;
35903 };
35904 } = _menhir_stack in
35905 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
35906 let _1 : (
35907 # 131 "parser_cocci_menhir.mly"
35908 (Data.clt)
35909 # 35883 "parser_cocci_menhir.ml"
35910 ) = Obj.magic _1 in
35911 let _startpos = _startpos__1_ in
35912 let _endpos = _endpos__2_ in
35913 let _v : 'tv_unary_expr_eexpr_invalid_ =
35914 # 1621 "parser_cocci_menhir.mly"
35915 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
35916 # 35890 "parser_cocci_menhir.ml"
35917 in
35918 _menhir_env.MenhirLib.EngineTypes.stack <- {
35919 MenhirLib.EngineTypes.state = _menhir_s;
35920 MenhirLib.EngineTypes.semv = Obj.repr _v;
35921 MenhirLib.EngineTypes.startp = _startpos;
35922 MenhirLib.EngineTypes.endp = _endpos;
35923 MenhirLib.EngineTypes.next = _menhir_stack;
35924 });
35925 (fun _menhir_env ->
35926 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35927 let {
35928 MenhirLib.EngineTypes.semv = _2;
35929 MenhirLib.EngineTypes.startp = _startpos__2_;
35930 MenhirLib.EngineTypes.endp = _endpos__2_;
35931 MenhirLib.EngineTypes.next = {
35932 MenhirLib.EngineTypes.state = _menhir_s;
35933 MenhirLib.EngineTypes.semv = _1;
35934 MenhirLib.EngineTypes.startp = _startpos__1_;
35935 MenhirLib.EngineTypes.endp = _endpos__1_;
35936 MenhirLib.EngineTypes.next = _menhir_stack;
35937 };
35938 } = _menhir_stack in
35939 let _2 : 'tv_cast_expr_eexpr_invalid_ = Obj.magic _2 in
35940 let _1 : 'tv_unary_op = Obj.magic _1 in
35941 let _startpos = _startpos__1_ in
35942 let _endpos = _endpos__2_ in
35943 let _v : 'tv_unary_expr_eexpr_invalid_ =
35944 # 1623 "parser_cocci_menhir.mly"
35945 ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
35946 # 35920 "parser_cocci_menhir.ml"
35947 in
35948 _menhir_env.MenhirLib.EngineTypes.stack <- {
35949 MenhirLib.EngineTypes.state = _menhir_s;
35950 MenhirLib.EngineTypes.semv = Obj.repr _v;
35951 MenhirLib.EngineTypes.startp = _startpos;
35952 MenhirLib.EngineTypes.endp = _endpos;
35953 MenhirLib.EngineTypes.next = _menhir_stack;
35954 });
35955 (fun _menhir_env ->
35956 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35957 let {
35958 MenhirLib.EngineTypes.semv = _2;
35959 MenhirLib.EngineTypes.startp = _startpos__2_;
35960 MenhirLib.EngineTypes.endp = _endpos__2_;
35961 MenhirLib.EngineTypes.next = {
35962 MenhirLib.EngineTypes.state = _menhir_s;
35963 MenhirLib.EngineTypes.semv = _1;
35964 MenhirLib.EngineTypes.startp = _startpos__1_;
35965 MenhirLib.EngineTypes.endp = _endpos__1_;
35966 MenhirLib.EngineTypes.next = _menhir_stack;
35967 };
35968 } = _menhir_stack in
35969 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
35970 let _1 : (
35971 # 122 "parser_cocci_menhir.mly"
35972 (Data.clt)
35973 # 35947 "parser_cocci_menhir.ml"
35974 ) = Obj.magic _1 in
35975 let _startpos = _startpos__1_ in
35976 let _endpos = _endpos__2_ in
35977 let _v : 'tv_unary_expr_eexpr_invalid_ =
35978 # 1625 "parser_cocci_menhir.mly"
35979 ( let mcode = P.clt2mcode Ast.Not _1 in
35980 Ast0.wrap(Ast0.Unary(_2, mcode)) )
35981 # 35955 "parser_cocci_menhir.ml"
35982 in
35983 _menhir_env.MenhirLib.EngineTypes.stack <- {
35984 MenhirLib.EngineTypes.state = _menhir_s;
35985 MenhirLib.EngineTypes.semv = Obj.repr _v;
35986 MenhirLib.EngineTypes.startp = _startpos;
35987 MenhirLib.EngineTypes.endp = _endpos;
35988 MenhirLib.EngineTypes.next = _menhir_stack;
35989 });
35990 (fun _menhir_env ->
35991 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
35992 let {
35993 MenhirLib.EngineTypes.semv = _2;
35994 MenhirLib.EngineTypes.startp = _startpos__2_;
35995 MenhirLib.EngineTypes.endp = _endpos__2_;
35996 MenhirLib.EngineTypes.next = {
35997 MenhirLib.EngineTypes.state = _menhir_s;
35998 MenhirLib.EngineTypes.semv = _1;
35999 MenhirLib.EngineTypes.startp = _startpos__1_;
36000 MenhirLib.EngineTypes.endp = _endpos__1_;
36001 MenhirLib.EngineTypes.next = _menhir_stack;
36002 };
36003 } = _menhir_stack in
36004 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36005 let _1 : (
36006 # 100 "parser_cocci_menhir.mly"
36007 (Data.clt)
36008 # 35982 "parser_cocci_menhir.ml"
36009 ) = Obj.magic _1 in
36010 let _startpos = _startpos__1_ in
36011 let _endpos = _endpos__2_ in
36012 let _v : 'tv_unary_expr_eexpr_invalid_ =
36013 # 1628 "parser_cocci_menhir.mly"
36014 ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
36015 # 35989 "parser_cocci_menhir.ml"
36016 in
36017 _menhir_env.MenhirLib.EngineTypes.stack <- {
36018 MenhirLib.EngineTypes.state = _menhir_s;
36019 MenhirLib.EngineTypes.semv = Obj.repr _v;
36020 MenhirLib.EngineTypes.startp = _startpos;
36021 MenhirLib.EngineTypes.endp = _endpos;
36022 MenhirLib.EngineTypes.next = _menhir_stack;
36023 });
36024 (fun _menhir_env ->
36025 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36026 let {
36027 MenhirLib.EngineTypes.semv = rp;
36028 MenhirLib.EngineTypes.startp = _startpos_rp_;
36029 MenhirLib.EngineTypes.endp = _endpos_rp_;
36030 MenhirLib.EngineTypes.next = {
36031 MenhirLib.EngineTypes.semv = t;
36032 MenhirLib.EngineTypes.startp = _startpos_t_;
36033 MenhirLib.EngineTypes.endp = _endpos_t_;
36034 MenhirLib.EngineTypes.next = {
36035 MenhirLib.EngineTypes.semv = lp;
36036 MenhirLib.EngineTypes.startp = _startpos_lp_;
36037 MenhirLib.EngineTypes.endp = _endpos_lp_;
36038 MenhirLib.EngineTypes.next = {
36039 MenhirLib.EngineTypes.state = _menhir_s;
36040 MenhirLib.EngineTypes.semv = s;
36041 MenhirLib.EngineTypes.startp = _startpos_s_;
36042 MenhirLib.EngineTypes.endp = _endpos_s_;
36043 MenhirLib.EngineTypes.next = _menhir_stack;
36044 };
36045 };
36046 };
36047 } = _menhir_stack in
36048 let rp : (
36049 # 123 "parser_cocci_menhir.mly"
36050 (Data.clt)
36051 # 36025 "parser_cocci_menhir.ml"
36052 ) = Obj.magic rp in
36053 let t : 'tv_ctype = Obj.magic t in
36054 let lp : (
36055 # 122 "parser_cocci_menhir.mly"
36056 (Data.clt)
36057 # 36031 "parser_cocci_menhir.ml"
36058 ) = Obj.magic lp in
36059 let s : (
36060 # 100 "parser_cocci_menhir.mly"
36061 (Data.clt)
36062 # 36036 "parser_cocci_menhir.ml"
36063 ) = Obj.magic s in
36064 let _startpos = _startpos_s_ in
36065 let _endpos = _endpos_rp_ in
36066 let _v : 'tv_unary_expr_eexpr_invalid_ =
36067 # 1630 "parser_cocci_menhir.mly"
36068 ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
36069 P.clt2mcode "(" lp,t,
36070 P.clt2mcode ")" rp)) )
36071 # 36045 "parser_cocci_menhir.ml"
36072 in
36073 _menhir_env.MenhirLib.EngineTypes.stack <- {
36074 MenhirLib.EngineTypes.state = _menhir_s;
36075 MenhirLib.EngineTypes.semv = Obj.repr _v;
36076 MenhirLib.EngineTypes.startp = _startpos;
36077 MenhirLib.EngineTypes.endp = _endpos;
36078 MenhirLib.EngineTypes.next = _menhir_stack;
36079 });
36080 (fun _menhir_env ->
36081 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36082 let {
36083 MenhirLib.EngineTypes.state = _menhir_s;
36084 MenhirLib.EngineTypes.semv = _1;
36085 MenhirLib.EngineTypes.startp = _startpos__1_;
36086 MenhirLib.EngineTypes.endp = _endpos__1_;
36087 MenhirLib.EngineTypes.next = _menhir_stack;
36088 } = _menhir_stack in
36089 let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
36090 let _startpos = _startpos__1_ in
36091 let _endpos = _endpos__1_ in
36092 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
36093 # 1617 "parser_cocci_menhir.mly"
36094 ( _1 )
36095 # 36069 "parser_cocci_menhir.ml"
36096 in
36097 _menhir_env.MenhirLib.EngineTypes.stack <- {
36098 MenhirLib.EngineTypes.state = _menhir_s;
36099 MenhirLib.EngineTypes.semv = Obj.repr _v;
36100 MenhirLib.EngineTypes.startp = _startpos;
36101 MenhirLib.EngineTypes.endp = _endpos;
36102 MenhirLib.EngineTypes.next = _menhir_stack;
36103 });
36104 (fun _menhir_env ->
36105 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36106 let {
36107 MenhirLib.EngineTypes.semv = _2;
36108 MenhirLib.EngineTypes.startp = _startpos__2_;
36109 MenhirLib.EngineTypes.endp = _endpos__2_;
36110 MenhirLib.EngineTypes.next = {
36111 MenhirLib.EngineTypes.state = _menhir_s;
36112 MenhirLib.EngineTypes.semv = _1;
36113 MenhirLib.EngineTypes.startp = _startpos__1_;
36114 MenhirLib.EngineTypes.endp = _endpos__1_;
36115 MenhirLib.EngineTypes.next = _menhir_stack;
36116 };
36117 } = _menhir_stack in
36118 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36119 let _1 : (
36120 # 131 "parser_cocci_menhir.mly"
36121 (Data.clt)
36122 # 36096 "parser_cocci_menhir.ml"
36123 ) = Obj.magic _1 in
36124 let _startpos = _startpos__1_ in
36125 let _endpos = _endpos__2_ in
36126 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
36127 # 1619 "parser_cocci_menhir.mly"
36128 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
36129 # 36103 "parser_cocci_menhir.ml"
36130 in
36131 _menhir_env.MenhirLib.EngineTypes.stack <- {
36132 MenhirLib.EngineTypes.state = _menhir_s;
36133 MenhirLib.EngineTypes.semv = Obj.repr _v;
36134 MenhirLib.EngineTypes.startp = _startpos;
36135 MenhirLib.EngineTypes.endp = _endpos;
36136 MenhirLib.EngineTypes.next = _menhir_stack;
36137 });
36138 (fun _menhir_env ->
36139 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36140 let {
36141 MenhirLib.EngineTypes.semv = _2;
36142 MenhirLib.EngineTypes.startp = _startpos__2_;
36143 MenhirLib.EngineTypes.endp = _endpos__2_;
36144 MenhirLib.EngineTypes.next = {
36145 MenhirLib.EngineTypes.state = _menhir_s;
36146 MenhirLib.EngineTypes.semv = _1;
36147 MenhirLib.EngineTypes.startp = _startpos__1_;
36148 MenhirLib.EngineTypes.endp = _endpos__1_;
36149 MenhirLib.EngineTypes.next = _menhir_stack;
36150 };
36151 } = _menhir_stack in
36152 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36153 let _1 : (
36154 # 131 "parser_cocci_menhir.mly"
36155 (Data.clt)
36156 # 36130 "parser_cocci_menhir.ml"
36157 ) = Obj.magic _1 in
36158 let _startpos = _startpos__1_ in
36159 let _endpos = _endpos__2_ in
36160 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
36161 # 1621 "parser_cocci_menhir.mly"
36162 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
36163 # 36137 "parser_cocci_menhir.ml"
36164 in
36165 _menhir_env.MenhirLib.EngineTypes.stack <- {
36166 MenhirLib.EngineTypes.state = _menhir_s;
36167 MenhirLib.EngineTypes.semv = Obj.repr _v;
36168 MenhirLib.EngineTypes.startp = _startpos;
36169 MenhirLib.EngineTypes.endp = _endpos;
36170 MenhirLib.EngineTypes.next = _menhir_stack;
36171 });
36172 (fun _menhir_env ->
36173 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36174 let {
36175 MenhirLib.EngineTypes.semv = _2;
36176 MenhirLib.EngineTypes.startp = _startpos__2_;
36177 MenhirLib.EngineTypes.endp = _endpos__2_;
36178 MenhirLib.EngineTypes.next = {
36179 MenhirLib.EngineTypes.state = _menhir_s;
36180 MenhirLib.EngineTypes.semv = _1;
36181 MenhirLib.EngineTypes.startp = _startpos__1_;
36182 MenhirLib.EngineTypes.endp = _endpos__1_;
36183 MenhirLib.EngineTypes.next = _menhir_stack;
36184 };
36185 } = _menhir_stack in
36186 let _2 : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic _2 in
36187 let _1 : 'tv_unary_op = Obj.magic _1 in
36188 let _startpos = _startpos__1_ in
36189 let _endpos = _endpos__2_ in
36190 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
36191 # 1623 "parser_cocci_menhir.mly"
36192 ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
36193 # 36167 "parser_cocci_menhir.ml"
36194 in
36195 _menhir_env.MenhirLib.EngineTypes.stack <- {
36196 MenhirLib.EngineTypes.state = _menhir_s;
36197 MenhirLib.EngineTypes.semv = Obj.repr _v;
36198 MenhirLib.EngineTypes.startp = _startpos;
36199 MenhirLib.EngineTypes.endp = _endpos;
36200 MenhirLib.EngineTypes.next = _menhir_stack;
36201 });
36202 (fun _menhir_env ->
36203 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36204 let {
36205 MenhirLib.EngineTypes.semv = _2;
36206 MenhirLib.EngineTypes.startp = _startpos__2_;
36207 MenhirLib.EngineTypes.endp = _endpos__2_;
36208 MenhirLib.EngineTypes.next = {
36209 MenhirLib.EngineTypes.state = _menhir_s;
36210 MenhirLib.EngineTypes.semv = _1;
36211 MenhirLib.EngineTypes.startp = _startpos__1_;
36212 MenhirLib.EngineTypes.endp = _endpos__1_;
36213 MenhirLib.EngineTypes.next = _menhir_stack;
36214 };
36215 } = _menhir_stack in
36216 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36217 let _1 : (
36218 # 122 "parser_cocci_menhir.mly"
36219 (Data.clt)
36220 # 36194 "parser_cocci_menhir.ml"
36221 ) = Obj.magic _1 in
36222 let _startpos = _startpos__1_ in
36223 let _endpos = _endpos__2_ in
36224 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
36225 # 1625 "parser_cocci_menhir.mly"
36226 ( let mcode = P.clt2mcode Ast.Not _1 in
36227 Ast0.wrap(Ast0.Unary(_2, mcode)) )
36228 # 36202 "parser_cocci_menhir.ml"
36229 in
36230 _menhir_env.MenhirLib.EngineTypes.stack <- {
36231 MenhirLib.EngineTypes.state = _menhir_s;
36232 MenhirLib.EngineTypes.semv = Obj.repr _v;
36233 MenhirLib.EngineTypes.startp = _startpos;
36234 MenhirLib.EngineTypes.endp = _endpos;
36235 MenhirLib.EngineTypes.next = _menhir_stack;
36236 });
36237 (fun _menhir_env ->
36238 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36239 let {
36240 MenhirLib.EngineTypes.semv = _2;
36241 MenhirLib.EngineTypes.startp = _startpos__2_;
36242 MenhirLib.EngineTypes.endp = _endpos__2_;
36243 MenhirLib.EngineTypes.next = {
36244 MenhirLib.EngineTypes.state = _menhir_s;
36245 MenhirLib.EngineTypes.semv = _1;
36246 MenhirLib.EngineTypes.startp = _startpos__1_;
36247 MenhirLib.EngineTypes.endp = _endpos__1_;
36248 MenhirLib.EngineTypes.next = _menhir_stack;
36249 };
36250 } = _menhir_stack in
36251 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36252 let _1 : (
36253 # 100 "parser_cocci_menhir.mly"
36254 (Data.clt)
36255 # 36229 "parser_cocci_menhir.ml"
36256 ) = Obj.magic _1 in
36257 let _startpos = _startpos__1_ in
36258 let _endpos = _endpos__2_ in
36259 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
36260 # 1628 "parser_cocci_menhir.mly"
36261 ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
36262 # 36236 "parser_cocci_menhir.ml"
36263 in
36264 _menhir_env.MenhirLib.EngineTypes.stack <- {
36265 MenhirLib.EngineTypes.state = _menhir_s;
36266 MenhirLib.EngineTypes.semv = Obj.repr _v;
36267 MenhirLib.EngineTypes.startp = _startpos;
36268 MenhirLib.EngineTypes.endp = _endpos;
36269 MenhirLib.EngineTypes.next = _menhir_stack;
36270 });
36271 (fun _menhir_env ->
36272 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36273 let {
36274 MenhirLib.EngineTypes.semv = rp;
36275 MenhirLib.EngineTypes.startp = _startpos_rp_;
36276 MenhirLib.EngineTypes.endp = _endpos_rp_;
36277 MenhirLib.EngineTypes.next = {
36278 MenhirLib.EngineTypes.semv = t;
36279 MenhirLib.EngineTypes.startp = _startpos_t_;
36280 MenhirLib.EngineTypes.endp = _endpos_t_;
36281 MenhirLib.EngineTypes.next = {
36282 MenhirLib.EngineTypes.semv = lp;
36283 MenhirLib.EngineTypes.startp = _startpos_lp_;
36284 MenhirLib.EngineTypes.endp = _endpos_lp_;
36285 MenhirLib.EngineTypes.next = {
36286 MenhirLib.EngineTypes.state = _menhir_s;
36287 MenhirLib.EngineTypes.semv = s;
36288 MenhirLib.EngineTypes.startp = _startpos_s_;
36289 MenhirLib.EngineTypes.endp = _endpos_s_;
36290 MenhirLib.EngineTypes.next = _menhir_stack;
36291 };
36292 };
36293 };
36294 } = _menhir_stack in
36295 let rp : (
36296 # 123 "parser_cocci_menhir.mly"
36297 (Data.clt)
36298 # 36272 "parser_cocci_menhir.ml"
36299 ) = Obj.magic rp in
36300 let t : 'tv_ctype = Obj.magic t in
36301 let lp : (
36302 # 122 "parser_cocci_menhir.mly"
36303 (Data.clt)
36304 # 36278 "parser_cocci_menhir.ml"
36305 ) = Obj.magic lp in
36306 let s : (
36307 # 100 "parser_cocci_menhir.mly"
36308 (Data.clt)
36309 # 36283 "parser_cocci_menhir.ml"
36310 ) = Obj.magic s in
36311 let _startpos = _startpos_s_ in
36312 let _endpos = _endpos_rp_ in
36313 let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
36314 # 1630 "parser_cocci_menhir.mly"
36315 ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
36316 P.clt2mcode "(" lp,t,
36317 P.clt2mcode ")" rp)) )
36318 # 36292 "parser_cocci_menhir.ml"
36319 in
36320 _menhir_env.MenhirLib.EngineTypes.stack <- {
36321 MenhirLib.EngineTypes.state = _menhir_s;
36322 MenhirLib.EngineTypes.semv = Obj.repr _v;
36323 MenhirLib.EngineTypes.startp = _startpos;
36324 MenhirLib.EngineTypes.endp = _endpos;
36325 MenhirLib.EngineTypes.next = _menhir_stack;
36326 });
36327 (fun _menhir_env ->
36328 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36329 let {
36330 MenhirLib.EngineTypes.state = _menhir_s;
36331 MenhirLib.EngineTypes.semv = _1;
36332 MenhirLib.EngineTypes.startp = _startpos__1_;
36333 MenhirLib.EngineTypes.endp = _endpos__1_;
36334 MenhirLib.EngineTypes.next = _menhir_stack;
36335 } = _menhir_stack in
36336 let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
36337 let _startpos = _startpos__1_ in
36338 let _endpos = _endpos__1_ in
36339 let _v : 'tv_unary_expr_expr_invalid_ =
36340 # 1617 "parser_cocci_menhir.mly"
36341 ( _1 )
36342 # 36316 "parser_cocci_menhir.ml"
36343 in
36344 _menhir_env.MenhirLib.EngineTypes.stack <- {
36345 MenhirLib.EngineTypes.state = _menhir_s;
36346 MenhirLib.EngineTypes.semv = Obj.repr _v;
36347 MenhirLib.EngineTypes.startp = _startpos;
36348 MenhirLib.EngineTypes.endp = _endpos;
36349 MenhirLib.EngineTypes.next = _menhir_stack;
36350 });
36351 (fun _menhir_env ->
36352 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36353 let {
36354 MenhirLib.EngineTypes.semv = _2;
36355 MenhirLib.EngineTypes.startp = _startpos__2_;
36356 MenhirLib.EngineTypes.endp = _endpos__2_;
36357 MenhirLib.EngineTypes.next = {
36358 MenhirLib.EngineTypes.state = _menhir_s;
36359 MenhirLib.EngineTypes.semv = _1;
36360 MenhirLib.EngineTypes.startp = _startpos__1_;
36361 MenhirLib.EngineTypes.endp = _endpos__1_;
36362 MenhirLib.EngineTypes.next = _menhir_stack;
36363 };
36364 } = _menhir_stack in
36365 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36366 let _1 : (
36367 # 131 "parser_cocci_menhir.mly"
36368 (Data.clt)
36369 # 36343 "parser_cocci_menhir.ml"
36370 ) = Obj.magic _1 in
36371 let _startpos = _startpos__1_ in
36372 let _endpos = _endpos__2_ in
36373 let _v : 'tv_unary_expr_expr_invalid_ =
36374 # 1619 "parser_cocci_menhir.mly"
36375 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
36376 # 36350 "parser_cocci_menhir.ml"
36377 in
36378 _menhir_env.MenhirLib.EngineTypes.stack <- {
36379 MenhirLib.EngineTypes.state = _menhir_s;
36380 MenhirLib.EngineTypes.semv = Obj.repr _v;
36381 MenhirLib.EngineTypes.startp = _startpos;
36382 MenhirLib.EngineTypes.endp = _endpos;
36383 MenhirLib.EngineTypes.next = _menhir_stack;
36384 });
36385 (fun _menhir_env ->
36386 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36387 let {
36388 MenhirLib.EngineTypes.semv = _2;
36389 MenhirLib.EngineTypes.startp = _startpos__2_;
36390 MenhirLib.EngineTypes.endp = _endpos__2_;
36391 MenhirLib.EngineTypes.next = {
36392 MenhirLib.EngineTypes.state = _menhir_s;
36393 MenhirLib.EngineTypes.semv = _1;
36394 MenhirLib.EngineTypes.startp = _startpos__1_;
36395 MenhirLib.EngineTypes.endp = _endpos__1_;
36396 MenhirLib.EngineTypes.next = _menhir_stack;
36397 };
36398 } = _menhir_stack in
36399 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36400 let _1 : (
36401 # 131 "parser_cocci_menhir.mly"
36402 (Data.clt)
36403 # 36377 "parser_cocci_menhir.ml"
36404 ) = Obj.magic _1 in
36405 let _startpos = _startpos__1_ in
36406 let _endpos = _endpos__2_ in
36407 let _v : 'tv_unary_expr_expr_invalid_ =
36408 # 1621 "parser_cocci_menhir.mly"
36409 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
36410 # 36384 "parser_cocci_menhir.ml"
36411 in
36412 _menhir_env.MenhirLib.EngineTypes.stack <- {
36413 MenhirLib.EngineTypes.state = _menhir_s;
36414 MenhirLib.EngineTypes.semv = Obj.repr _v;
36415 MenhirLib.EngineTypes.startp = _startpos;
36416 MenhirLib.EngineTypes.endp = _endpos;
36417 MenhirLib.EngineTypes.next = _menhir_stack;
36418 });
36419 (fun _menhir_env ->
36420 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36421 let {
36422 MenhirLib.EngineTypes.semv = _2;
36423 MenhirLib.EngineTypes.startp = _startpos__2_;
36424 MenhirLib.EngineTypes.endp = _endpos__2_;
36425 MenhirLib.EngineTypes.next = {
36426 MenhirLib.EngineTypes.state = _menhir_s;
36427 MenhirLib.EngineTypes.semv = _1;
36428 MenhirLib.EngineTypes.startp = _startpos__1_;
36429 MenhirLib.EngineTypes.endp = _endpos__1_;
36430 MenhirLib.EngineTypes.next = _menhir_stack;
36431 };
36432 } = _menhir_stack in
36433 let _2 : 'tv_cast_expr_expr_invalid_ = Obj.magic _2 in
36434 let _1 : 'tv_unary_op = Obj.magic _1 in
36435 let _startpos = _startpos__1_ in
36436 let _endpos = _endpos__2_ in
36437 let _v : 'tv_unary_expr_expr_invalid_ =
36438 # 1623 "parser_cocci_menhir.mly"
36439 ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
36440 # 36414 "parser_cocci_menhir.ml"
36441 in
36442 _menhir_env.MenhirLib.EngineTypes.stack <- {
36443 MenhirLib.EngineTypes.state = _menhir_s;
36444 MenhirLib.EngineTypes.semv = Obj.repr _v;
36445 MenhirLib.EngineTypes.startp = _startpos;
36446 MenhirLib.EngineTypes.endp = _endpos;
36447 MenhirLib.EngineTypes.next = _menhir_stack;
36448 });
36449 (fun _menhir_env ->
36450 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36451 let {
36452 MenhirLib.EngineTypes.semv = _2;
36453 MenhirLib.EngineTypes.startp = _startpos__2_;
36454 MenhirLib.EngineTypes.endp = _endpos__2_;
36455 MenhirLib.EngineTypes.next = {
36456 MenhirLib.EngineTypes.state = _menhir_s;
36457 MenhirLib.EngineTypes.semv = _1;
36458 MenhirLib.EngineTypes.startp = _startpos__1_;
36459 MenhirLib.EngineTypes.endp = _endpos__1_;
36460 MenhirLib.EngineTypes.next = _menhir_stack;
36461 };
36462 } = _menhir_stack in
36463 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36464 let _1 : (
36465 # 122 "parser_cocci_menhir.mly"
36466 (Data.clt)
36467 # 36441 "parser_cocci_menhir.ml"
36468 ) = Obj.magic _1 in
36469 let _startpos = _startpos__1_ in
36470 let _endpos = _endpos__2_ in
36471 let _v : 'tv_unary_expr_expr_invalid_ =
36472 # 1625 "parser_cocci_menhir.mly"
36473 ( let mcode = P.clt2mcode Ast.Not _1 in
36474 Ast0.wrap(Ast0.Unary(_2, mcode)) )
36475 # 36449 "parser_cocci_menhir.ml"
36476 in
36477 _menhir_env.MenhirLib.EngineTypes.stack <- {
36478 MenhirLib.EngineTypes.state = _menhir_s;
36479 MenhirLib.EngineTypes.semv = Obj.repr _v;
36480 MenhirLib.EngineTypes.startp = _startpos;
36481 MenhirLib.EngineTypes.endp = _endpos;
36482 MenhirLib.EngineTypes.next = _menhir_stack;
36483 });
36484 (fun _menhir_env ->
36485 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36486 let {
36487 MenhirLib.EngineTypes.semv = _2;
36488 MenhirLib.EngineTypes.startp = _startpos__2_;
36489 MenhirLib.EngineTypes.endp = _endpos__2_;
36490 MenhirLib.EngineTypes.next = {
36491 MenhirLib.EngineTypes.state = _menhir_s;
36492 MenhirLib.EngineTypes.semv = _1;
36493 MenhirLib.EngineTypes.startp = _startpos__1_;
36494 MenhirLib.EngineTypes.endp = _endpos__1_;
36495 MenhirLib.EngineTypes.next = _menhir_stack;
36496 };
36497 } = _menhir_stack in
36498 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36499 let _1 : (
36500 # 100 "parser_cocci_menhir.mly"
36501 (Data.clt)
36502 # 36476 "parser_cocci_menhir.ml"
36503 ) = Obj.magic _1 in
36504 let _startpos = _startpos__1_ in
36505 let _endpos = _endpos__2_ in
36506 let _v : 'tv_unary_expr_expr_invalid_ =
36507 # 1628 "parser_cocci_menhir.mly"
36508 ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
36509 # 36483 "parser_cocci_menhir.ml"
36510 in
36511 _menhir_env.MenhirLib.EngineTypes.stack <- {
36512 MenhirLib.EngineTypes.state = _menhir_s;
36513 MenhirLib.EngineTypes.semv = Obj.repr _v;
36514 MenhirLib.EngineTypes.startp = _startpos;
36515 MenhirLib.EngineTypes.endp = _endpos;
36516 MenhirLib.EngineTypes.next = _menhir_stack;
36517 });
36518 (fun _menhir_env ->
36519 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36520 let {
36521 MenhirLib.EngineTypes.semv = rp;
36522 MenhirLib.EngineTypes.startp = _startpos_rp_;
36523 MenhirLib.EngineTypes.endp = _endpos_rp_;
36524 MenhirLib.EngineTypes.next = {
36525 MenhirLib.EngineTypes.semv = t;
36526 MenhirLib.EngineTypes.startp = _startpos_t_;
36527 MenhirLib.EngineTypes.endp = _endpos_t_;
36528 MenhirLib.EngineTypes.next = {
36529 MenhirLib.EngineTypes.semv = lp;
36530 MenhirLib.EngineTypes.startp = _startpos_lp_;
36531 MenhirLib.EngineTypes.endp = _endpos_lp_;
36532 MenhirLib.EngineTypes.next = {
36533 MenhirLib.EngineTypes.state = _menhir_s;
36534 MenhirLib.EngineTypes.semv = s;
36535 MenhirLib.EngineTypes.startp = _startpos_s_;
36536 MenhirLib.EngineTypes.endp = _endpos_s_;
36537 MenhirLib.EngineTypes.next = _menhir_stack;
36538 };
36539 };
36540 };
36541 } = _menhir_stack in
36542 let rp : (
36543 # 123 "parser_cocci_menhir.mly"
36544 (Data.clt)
36545 # 36519 "parser_cocci_menhir.ml"
36546 ) = Obj.magic rp in
36547 let t : 'tv_ctype = Obj.magic t in
36548 let lp : (
36549 # 122 "parser_cocci_menhir.mly"
36550 (Data.clt)
36551 # 36525 "parser_cocci_menhir.ml"
36552 ) = Obj.magic lp in
36553 let s : (
36554 # 100 "parser_cocci_menhir.mly"
36555 (Data.clt)
36556 # 36530 "parser_cocci_menhir.ml"
36557 ) = Obj.magic s in
36558 let _startpos = _startpos_s_ in
36559 let _endpos = _endpos_rp_ in
36560 let _v : 'tv_unary_expr_expr_invalid_ =
36561 # 1630 "parser_cocci_menhir.mly"
36562 ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
36563 P.clt2mcode "(" lp,t,
36564 P.clt2mcode ")" rp)) )
36565 # 36539 "parser_cocci_menhir.ml"
36566 in
36567 _menhir_env.MenhirLib.EngineTypes.stack <- {
36568 MenhirLib.EngineTypes.state = _menhir_s;
36569 MenhirLib.EngineTypes.semv = Obj.repr _v;
36570 MenhirLib.EngineTypes.startp = _startpos;
36571 MenhirLib.EngineTypes.endp = _endpos;
36572 MenhirLib.EngineTypes.next = _menhir_stack;
36573 });
36574 (fun _menhir_env ->
36575 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36576 let {
36577 MenhirLib.EngineTypes.state = _menhir_s;
36578 MenhirLib.EngineTypes.semv = _1;
36579 MenhirLib.EngineTypes.startp = _startpos__1_;
36580 MenhirLib.EngineTypes.endp = _endpos__1_;
36581 MenhirLib.EngineTypes.next = _menhir_stack;
36582 } = _menhir_stack in
36583 let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
36584 let _startpos = _startpos__1_ in
36585 let _endpos = _endpos__1_ in
36586 let _v : 'tv_unary_expr_bis =
36587 # 1636 "parser_cocci_menhir.mly"
36588 ( _1 )
36589 # 36563 "parser_cocci_menhir.ml"
36590 in
36591 _menhir_env.MenhirLib.EngineTypes.stack <- {
36592 MenhirLib.EngineTypes.state = _menhir_s;
36593 MenhirLib.EngineTypes.semv = Obj.repr _v;
36594 MenhirLib.EngineTypes.startp = _startpos;
36595 MenhirLib.EngineTypes.endp = _endpos;
36596 MenhirLib.EngineTypes.next = _menhir_stack;
36597 });
36598 (fun _menhir_env ->
36599 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36600 let {
36601 MenhirLib.EngineTypes.semv = _2;
36602 MenhirLib.EngineTypes.startp = _startpos__2_;
36603 MenhirLib.EngineTypes.endp = _endpos__2_;
36604 MenhirLib.EngineTypes.next = {
36605 MenhirLib.EngineTypes.state = _menhir_s;
36606 MenhirLib.EngineTypes.semv = _1;
36607 MenhirLib.EngineTypes.startp = _startpos__1_;
36608 MenhirLib.EngineTypes.endp = _endpos__1_;
36609 MenhirLib.EngineTypes.next = _menhir_stack;
36610 };
36611 } = _menhir_stack in
36612 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36613 let _1 : (
36614 # 131 "parser_cocci_menhir.mly"
36615 (Data.clt)
36616 # 36590 "parser_cocci_menhir.ml"
36617 ) = Obj.magic _1 in
36618 let _startpos = _startpos__1_ in
36619 let _endpos = _endpos__2_ in
36620 let _v : 'tv_unary_expr_bis =
36621 # 1638 "parser_cocci_menhir.mly"
36622 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
36623 # 36597 "parser_cocci_menhir.ml"
36624 in
36625 _menhir_env.MenhirLib.EngineTypes.stack <- {
36626 MenhirLib.EngineTypes.state = _menhir_s;
36627 MenhirLib.EngineTypes.semv = Obj.repr _v;
36628 MenhirLib.EngineTypes.startp = _startpos;
36629 MenhirLib.EngineTypes.endp = _endpos;
36630 MenhirLib.EngineTypes.next = _menhir_stack;
36631 });
36632 (fun _menhir_env ->
36633 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36634 let {
36635 MenhirLib.EngineTypes.semv = _2;
36636 MenhirLib.EngineTypes.startp = _startpos__2_;
36637 MenhirLib.EngineTypes.endp = _endpos__2_;
36638 MenhirLib.EngineTypes.next = {
36639 MenhirLib.EngineTypes.state = _menhir_s;
36640 MenhirLib.EngineTypes.semv = _1;
36641 MenhirLib.EngineTypes.startp = _startpos__1_;
36642 MenhirLib.EngineTypes.endp = _endpos__1_;
36643 MenhirLib.EngineTypes.next = _menhir_stack;
36644 };
36645 } = _menhir_stack in
36646 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36647 let _1 : (
36648 # 131 "parser_cocci_menhir.mly"
36649 (Data.clt)
36650 # 36624 "parser_cocci_menhir.ml"
36651 ) = Obj.magic _1 in
36652 let _startpos = _startpos__1_ in
36653 let _endpos = _endpos__2_ in
36654 let _v : 'tv_unary_expr_bis =
36655 # 1640 "parser_cocci_menhir.mly"
36656 ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
36657 # 36631 "parser_cocci_menhir.ml"
36658 in
36659 _menhir_env.MenhirLib.EngineTypes.stack <- {
36660 MenhirLib.EngineTypes.state = _menhir_s;
36661 MenhirLib.EngineTypes.semv = Obj.repr _v;
36662 MenhirLib.EngineTypes.startp = _startpos;
36663 MenhirLib.EngineTypes.endp = _endpos;
36664 MenhirLib.EngineTypes.next = _menhir_stack;
36665 });
36666 (fun _menhir_env ->
36667 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36668 let {
36669 MenhirLib.EngineTypes.semv = _2;
36670 MenhirLib.EngineTypes.startp = _startpos__2_;
36671 MenhirLib.EngineTypes.endp = _endpos__2_;
36672 MenhirLib.EngineTypes.next = {
36673 MenhirLib.EngineTypes.state = _menhir_s;
36674 MenhirLib.EngineTypes.semv = _1;
36675 MenhirLib.EngineTypes.startp = _startpos__1_;
36676 MenhirLib.EngineTypes.endp = _endpos__1_;
36677 MenhirLib.EngineTypes.next = _menhir_stack;
36678 };
36679 } = _menhir_stack in
36680 let _2 : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic _2 in
36681 let _1 : 'tv_unary_op = Obj.magic _1 in
36682 let _startpos = _startpos__1_ in
36683 let _endpos = _endpos__2_ in
36684 let _v : 'tv_unary_expr_bis =
36685 # 1642 "parser_cocci_menhir.mly"
36686 ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
36687 # 36661 "parser_cocci_menhir.ml"
36688 in
36689 _menhir_env.MenhirLib.EngineTypes.stack <- {
36690 MenhirLib.EngineTypes.state = _menhir_s;
36691 MenhirLib.EngineTypes.semv = Obj.repr _v;
36692 MenhirLib.EngineTypes.startp = _startpos;
36693 MenhirLib.EngineTypes.endp = _endpos;
36694 MenhirLib.EngineTypes.next = _menhir_stack;
36695 });
36696 (fun _menhir_env ->
36697 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36698 let {
36699 MenhirLib.EngineTypes.semv = _2;
36700 MenhirLib.EngineTypes.startp = _startpos__2_;
36701 MenhirLib.EngineTypes.endp = _endpos__2_;
36702 MenhirLib.EngineTypes.next = {
36703 MenhirLib.EngineTypes.state = _menhir_s;
36704 MenhirLib.EngineTypes.semv = _1;
36705 MenhirLib.EngineTypes.startp = _startpos__1_;
36706 MenhirLib.EngineTypes.endp = _endpos__1_;
36707 MenhirLib.EngineTypes.next = _menhir_stack;
36708 };
36709 } = _menhir_stack in
36710 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36711 let _1 : (
36712 # 122 "parser_cocci_menhir.mly"
36713 (Data.clt)
36714 # 36688 "parser_cocci_menhir.ml"
36715 ) = Obj.magic _1 in
36716 let _startpos = _startpos__1_ in
36717 let _endpos = _endpos__2_ in
36718 let _v : 'tv_unary_expr_bis =
36719 # 1644 "parser_cocci_menhir.mly"
36720 ( let mcode = P.clt2mcode Ast.Not _1 in
36721 Ast0.wrap(Ast0.Unary(_2, mcode)) )
36722 # 36696 "parser_cocci_menhir.ml"
36723 in
36724 _menhir_env.MenhirLib.EngineTypes.stack <- {
36725 MenhirLib.EngineTypes.state = _menhir_s;
36726 MenhirLib.EngineTypes.semv = Obj.repr _v;
36727 MenhirLib.EngineTypes.startp = _startpos;
36728 MenhirLib.EngineTypes.endp = _endpos;
36729 MenhirLib.EngineTypes.next = _menhir_stack;
36730 });
36731 (fun _menhir_env ->
36732 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36733 let {
36734 MenhirLib.EngineTypes.semv = _2;
36735 MenhirLib.EngineTypes.startp = _startpos__2_;
36736 MenhirLib.EngineTypes.endp = _endpos__2_;
36737 MenhirLib.EngineTypes.next = {
36738 MenhirLib.EngineTypes.state = _menhir_s;
36739 MenhirLib.EngineTypes.semv = _1;
36740 MenhirLib.EngineTypes.startp = _startpos__1_;
36741 MenhirLib.EngineTypes.endp = _endpos__1_;
36742 MenhirLib.EngineTypes.next = _menhir_stack;
36743 };
36744 } = _menhir_stack in
36745 let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
36746 let _1 : (
36747 # 100 "parser_cocci_menhir.mly"
36748 (Data.clt)
36749 # 36723 "parser_cocci_menhir.ml"
36750 ) = Obj.magic _1 in
36751 let _startpos = _startpos__1_ in
36752 let _endpos = _endpos__2_ in
36753 let _v : 'tv_unary_expr_bis =
36754 # 1647 "parser_cocci_menhir.mly"
36755 ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
36756 # 36730 "parser_cocci_menhir.ml"
36757 in
36758 _menhir_env.MenhirLib.EngineTypes.stack <- {
36759 MenhirLib.EngineTypes.state = _menhir_s;
36760 MenhirLib.EngineTypes.semv = Obj.repr _v;
36761 MenhirLib.EngineTypes.startp = _startpos;
36762 MenhirLib.EngineTypes.endp = _endpos;
36763 MenhirLib.EngineTypes.next = _menhir_stack;
36764 });
36765 (fun _menhir_env ->
36766 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36767 let {
36768 MenhirLib.EngineTypes.semv = rp;
36769 MenhirLib.EngineTypes.startp = _startpos_rp_;
36770 MenhirLib.EngineTypes.endp = _endpos_rp_;
36771 MenhirLib.EngineTypes.next = {
36772 MenhirLib.EngineTypes.semv = t;
36773 MenhirLib.EngineTypes.startp = _startpos_t_;
36774 MenhirLib.EngineTypes.endp = _endpos_t_;
36775 MenhirLib.EngineTypes.next = {
36776 MenhirLib.EngineTypes.semv = lp;
36777 MenhirLib.EngineTypes.startp = _startpos_lp_;
36778 MenhirLib.EngineTypes.endp = _endpos_lp_;
36779 MenhirLib.EngineTypes.next = {
36780 MenhirLib.EngineTypes.state = _menhir_s;
36781 MenhirLib.EngineTypes.semv = s;
36782 MenhirLib.EngineTypes.startp = _startpos_s_;
36783 MenhirLib.EngineTypes.endp = _endpos_s_;
36784 MenhirLib.EngineTypes.next = _menhir_stack;
36785 };
36786 };
36787 };
36788 } = _menhir_stack in
36789 let rp : (
36790 # 123 "parser_cocci_menhir.mly"
36791 (Data.clt)
36792 # 36766 "parser_cocci_menhir.ml"
36793 ) = Obj.magic rp in
36794 let t : 'tv_ctype = Obj.magic t in
36795 let lp : (
36796 # 122 "parser_cocci_menhir.mly"
36797 (Data.clt)
36798 # 36772 "parser_cocci_menhir.ml"
36799 ) = Obj.magic lp in
36800 let s : (
36801 # 100 "parser_cocci_menhir.mly"
36802 (Data.clt)
36803 # 36777 "parser_cocci_menhir.ml"
36804 ) = Obj.magic s in
36805 let _startpos = _startpos_s_ in
36806 let _endpos = _endpos_rp_ in
36807 let _v : 'tv_unary_expr_bis =
36808 # 1649 "parser_cocci_menhir.mly"
36809 ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
36810 P.clt2mcode "(" lp,t,
36811 P.clt2mcode ")" rp)) )
36812 # 36786 "parser_cocci_menhir.ml"
36813 in
36814 _menhir_env.MenhirLib.EngineTypes.stack <- {
36815 MenhirLib.EngineTypes.state = _menhir_s;
36816 MenhirLib.EngineTypes.semv = Obj.repr _v;
36817 MenhirLib.EngineTypes.startp = _startpos;
36818 MenhirLib.EngineTypes.endp = _endpos;
36819 MenhirLib.EngineTypes.next = _menhir_stack;
36820 });
36821 (fun _menhir_env ->
36822 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36823 let {
36824 MenhirLib.EngineTypes.state = _menhir_s;
36825 MenhirLib.EngineTypes.semv = _1;
36826 MenhirLib.EngineTypes.startp = _startpos__1_;
36827 MenhirLib.EngineTypes.endp = _endpos__1_;
36828 MenhirLib.EngineTypes.next = _menhir_stack;
36829 } = _menhir_stack in
36830 let _1 : (
36831 # 139 "parser_cocci_menhir.mly"
36832 (Data.clt)
36833 # 36807 "parser_cocci_menhir.ml"
36834 ) = Obj.magic _1 in
36835 let _startpos = _startpos__1_ in
36836 let _endpos = _endpos__1_ in
36837 let _v : 'tv_unary_op =
36838 # 1653 "parser_cocci_menhir.mly"
36839 ( P.clt2mcode Ast.GetRef _1 )
36840 # 36814 "parser_cocci_menhir.ml"
36841 in
36842 _menhir_env.MenhirLib.EngineTypes.stack <- {
36843 MenhirLib.EngineTypes.state = _menhir_s;
36844 MenhirLib.EngineTypes.semv = Obj.repr _v;
36845 MenhirLib.EngineTypes.startp = _startpos;
36846 MenhirLib.EngineTypes.endp = _endpos;
36847 MenhirLib.EngineTypes.next = _menhir_stack;
36848 });
36849 (fun _menhir_env ->
36850 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36851 let {
36852 MenhirLib.EngineTypes.state = _menhir_s;
36853 MenhirLib.EngineTypes.semv = _1;
36854 MenhirLib.EngineTypes.startp = _startpos__1_;
36855 MenhirLib.EngineTypes.endp = _endpos__1_;
36856 MenhirLib.EngineTypes.next = _menhir_stack;
36857 } = _menhir_stack in
36858 let _1 : (
36859 # 145 "parser_cocci_menhir.mly"
36860 (Data.clt)
36861 # 36835 "parser_cocci_menhir.ml"
36862 ) = Obj.magic _1 in
36863 let _startpos = _startpos__1_ in
36864 let _endpos = _endpos__1_ in
36865 let _v : 'tv_unary_op =
36866 # 1654 "parser_cocci_menhir.mly"
36867 ( P.clt2mcode Ast.DeRef _1 )
36868 # 36842 "parser_cocci_menhir.ml"
36869 in
36870 _menhir_env.MenhirLib.EngineTypes.stack <- {
36871 MenhirLib.EngineTypes.state = _menhir_s;
36872 MenhirLib.EngineTypes.semv = Obj.repr _v;
36873 MenhirLib.EngineTypes.startp = _startpos;
36874 MenhirLib.EngineTypes.endp = _endpos;
36875 MenhirLib.EngineTypes.next = _menhir_stack;
36876 });
36877 (fun _menhir_env ->
36878 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36879 let {
36880 MenhirLib.EngineTypes.state = _menhir_s;
36881 MenhirLib.EngineTypes.semv = _1;
36882 MenhirLib.EngineTypes.startp = _startpos__1_;
36883 MenhirLib.EngineTypes.endp = _endpos__1_;
36884 MenhirLib.EngineTypes.next = _menhir_stack;
36885 } = _menhir_stack in
36886 let _1 : (
36887 # 144 "parser_cocci_menhir.mly"
36888 (Data.clt)
36889 # 36863 "parser_cocci_menhir.ml"
36890 ) = Obj.magic _1 in
36891 let _startpos = _startpos__1_ in
36892 let _endpos = _endpos__1_ in
36893 let _v : 'tv_unary_op =
36894 # 1655 "parser_cocci_menhir.mly"
36895 ( P.clt2mcode Ast.UnPlus _1 )
36896 # 36870 "parser_cocci_menhir.ml"
36897 in
36898 _menhir_env.MenhirLib.EngineTypes.stack <- {
36899 MenhirLib.EngineTypes.state = _menhir_s;
36900 MenhirLib.EngineTypes.semv = Obj.repr _v;
36901 MenhirLib.EngineTypes.startp = _startpos;
36902 MenhirLib.EngineTypes.endp = _endpos;
36903 MenhirLib.EngineTypes.next = _menhir_stack;
36904 });
36905 (fun _menhir_env ->
36906 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36907 let {
36908 MenhirLib.EngineTypes.state = _menhir_s;
36909 MenhirLib.EngineTypes.semv = _1;
36910 MenhirLib.EngineTypes.startp = _startpos__1_;
36911 MenhirLib.EngineTypes.endp = _endpos__1_;
36912 MenhirLib.EngineTypes.next = _menhir_stack;
36913 } = _menhir_stack in
36914 let _1 : (
36915 # 144 "parser_cocci_menhir.mly"
36916 (Data.clt)
36917 # 36891 "parser_cocci_menhir.ml"
36918 ) = Obj.magic _1 in
36919 let _startpos = _startpos__1_ in
36920 let _endpos = _endpos__1_ in
36921 let _v : 'tv_unary_op =
36922 # 1656 "parser_cocci_menhir.mly"
36923 ( P.clt2mcode Ast.UnMinus _1 )
36924 # 36898 "parser_cocci_menhir.ml"
36925 in
36926 _menhir_env.MenhirLib.EngineTypes.stack <- {
36927 MenhirLib.EngineTypes.state = _menhir_s;
36928 MenhirLib.EngineTypes.semv = Obj.repr _v;
36929 MenhirLib.EngineTypes.startp = _startpos;
36930 MenhirLib.EngineTypes.endp = _endpos;
36931 MenhirLib.EngineTypes.next = _menhir_stack;
36932 });
36933 (fun _menhir_env ->
36934 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36935 let {
36936 MenhirLib.EngineTypes.state = _menhir_s;
36937 MenhirLib.EngineTypes.semv = _1;
36938 MenhirLib.EngineTypes.startp = _startpos__1_;
36939 MenhirLib.EngineTypes.endp = _endpos__1_;
36940 MenhirLib.EngineTypes.next = _menhir_stack;
36941 } = _menhir_stack in
36942 let _1 : (
36943 # 145 "parser_cocci_menhir.mly"
36944 (Data.clt)
36945 # 36919 "parser_cocci_menhir.ml"
36946 ) = Obj.magic _1 in
36947 let _startpos = _startpos__1_ in
36948 let _endpos = _endpos__1_ in
36949 let _v : 'tv_unary_op =
36950 # 1657 "parser_cocci_menhir.mly"
36951 ( P.clt2mcode Ast.Tilde _1 )
36952 # 36926 "parser_cocci_menhir.ml"
36953 in
36954 _menhir_env.MenhirLib.EngineTypes.stack <- {
36955 MenhirLib.EngineTypes.state = _menhir_s;
36956 MenhirLib.EngineTypes.semv = Obj.repr _v;
36957 MenhirLib.EngineTypes.startp = _startpos;
36958 MenhirLib.EngineTypes.endp = _endpos;
36959 MenhirLib.EngineTypes.next = _menhir_stack;
36960 });
36961 (fun _menhir_env ->
36962 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36963 let {
36964 MenhirLib.EngineTypes.semv = _2;
36965 MenhirLib.EngineTypes.startp = _startpos__2_;
36966 MenhirLib.EngineTypes.endp = _endpos__2_;
36967 MenhirLib.EngineTypes.next = {
36968 MenhirLib.EngineTypes.state = _menhir_s;
36969 MenhirLib.EngineTypes.semv = _1;
36970 MenhirLib.EngineTypes.startp = _startpos__1_;
36971 MenhirLib.EngineTypes.endp = _endpos__1_;
36972 MenhirLib.EngineTypes.next = _menhir_stack;
36973 };
36974 } = _menhir_stack in
36975 let _2 : 'tv_toplevel_after_exp = Obj.magic _2 in
36976 let _1 : 'tv_expr = Obj.magic _1 in
36977 let _startpos = _startpos__1_ in
36978 let _endpos = _endpos__2_ in
36979 let _v : 'tv_when_start =
36980 # 2318 "parser_cocci_menhir.mly"
36981 ( Ast0.wrap(Ast0.DOTS((Ast0.wrap(Ast0.Exp(_1)))::_2)) )
36982 # 36956 "parser_cocci_menhir.ml"
36983 in
36984 _menhir_env.MenhirLib.EngineTypes.stack <- {
36985 MenhirLib.EngineTypes.state = _menhir_s;
36986 MenhirLib.EngineTypes.semv = Obj.repr _v;
36987 MenhirLib.EngineTypes.startp = _startpos;
36988 MenhirLib.EngineTypes.endp = _endpos;
36989 MenhirLib.EngineTypes.next = _menhir_stack;
36990 });
36991 (fun _menhir_env ->
36992 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
36993 let {
36994 MenhirLib.EngineTypes.semv = _2;
36995 MenhirLib.EngineTypes.startp = _startpos__2_;
36996 MenhirLib.EngineTypes.endp = _endpos__2_;
36997 MenhirLib.EngineTypes.next = {
36998 MenhirLib.EngineTypes.state = _menhir_s;
36999 MenhirLib.EngineTypes.semv = _1;
37000 MenhirLib.EngineTypes.startp = _startpos__1_;
37001 MenhirLib.EngineTypes.endp = _endpos__1_;
37002 MenhirLib.EngineTypes.next = _menhir_stack;
37003 };
37004 } = _menhir_stack in
37005 let _2 : 'tv_toplevel_after_stm = Obj.magic _2 in
37006 let _1 : 'tv_decl_statement = Obj.magic _1 in
37007 let _startpos = _startpos__1_ in
37008 let _endpos = _endpos__2_ in
37009 let _v : 'tv_when_start =
37010 # 2320 "parser_cocci_menhir.mly"
37011 ( Ast0.wrap(Ast0.DOTS(_1@_2)) )
37012 # 36986 "parser_cocci_menhir.ml"
37013 in
37014 _menhir_env.MenhirLib.EngineTypes.stack <- {
37015 MenhirLib.EngineTypes.state = _menhir_s;
37016 MenhirLib.EngineTypes.semv = Obj.repr _v;
37017 MenhirLib.EngineTypes.startp = _startpos;
37018 MenhirLib.EngineTypes.endp = _endpos;
37019 MenhirLib.EngineTypes.next = _menhir_stack;
37020 });
37021 (fun _menhir_env ->
37022 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
37023 let {
37024 MenhirLib.EngineTypes.state = _menhir_s;
37025 MenhirLib.EngineTypes.semv = w;
37026 MenhirLib.EngineTypes.startp = _startpos_w_;
37027 MenhirLib.EngineTypes.endp = _endpos_w_;
37028 MenhirLib.EngineTypes.next = _menhir_stack;
37029 } = _menhir_stack in
37030 let w : 'tv_whens_when_start_rule_elem_statement_any_strict_ = Obj.magic w in
37031 let _startpos = _startpos_w_ in
37032 let _endpos = _endpos_w_ in
37033 let _v : 'tv_whenppdecs =
37034 # 1151 "parser_cocci_menhir.mly"
37035 ( w )
37036 # 37010 "parser_cocci_menhir.ml"
37037 in
37038 _menhir_env.MenhirLib.EngineTypes.stack <- {
37039 MenhirLib.EngineTypes.state = _menhir_s;
37040 MenhirLib.EngineTypes.semv = Obj.repr _v;
37041 MenhirLib.EngineTypes.startp = _startpos;
37042 MenhirLib.EngineTypes.endp = _endpos;
37043 MenhirLib.EngineTypes.next = _menhir_stack;
37044 });
37045 (fun _menhir_env ->
37046 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
37047 let {
37048 MenhirLib.EngineTypes.startp = _startpos__4_;
37049 MenhirLib.EngineTypes.endp = _endpos__4_;
37050 MenhirLib.EngineTypes.next = {
37051 MenhirLib.EngineTypes.semv = w;
37052 MenhirLib.EngineTypes.startp = _startpos_w_;
37053 MenhirLib.EngineTypes.endp = _endpos_w_;
37054 MenhirLib.EngineTypes.next = {
37055 MenhirLib.EngineTypes.startp = _startpos__2_;
37056 MenhirLib.EngineTypes.endp = _endpos__2_;
37057 MenhirLib.EngineTypes.next = {
37058 MenhirLib.EngineTypes.state = _menhir_s;
37059 MenhirLib.EngineTypes.startp = _startpos__1_;
37060 MenhirLib.EngineTypes.endp = _endpos__1_;
37061 MenhirLib.EngineTypes.next = _menhir_stack;
37062 };
37063 };
37064 };
37065 } = _menhir_stack in
37066 let w : 'tv_when_start = Obj.magic w in
37067 let _startpos = _startpos__1_ in
37068 let _endpos = _endpos__4_ in
37069 let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ =
37070 # 2365 "parser_cocci_menhir.mly"
37071 ( [Ast0.WhenNot w] )
37072 # 37046 "parser_cocci_menhir.ml"
37073 in
37074 _menhir_env.MenhirLib.EngineTypes.stack <- {
37075 MenhirLib.EngineTypes.state = _menhir_s;
37076 MenhirLib.EngineTypes.semv = Obj.repr _v;
37077 MenhirLib.EngineTypes.startp = _startpos;
37078 MenhirLib.EngineTypes.endp = _endpos;
37079 MenhirLib.EngineTypes.next = _menhir_stack;
37080 });
37081 (fun _menhir_env ->
37082 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
37083 let {
37084 MenhirLib.EngineTypes.startp = _startpos__4_;
37085 MenhirLib.EngineTypes.endp = _endpos__4_;
37086 MenhirLib.EngineTypes.next = {
37087 MenhirLib.EngineTypes.semv = w;
37088 MenhirLib.EngineTypes.startp = _startpos_w_;
37089 MenhirLib.EngineTypes.endp = _endpos_w_;
37090 MenhirLib.EngineTypes.next = {
37091 MenhirLib.EngineTypes.startp = _startpos__2_;
37092 MenhirLib.EngineTypes.endp = _endpos__2_;
37093 MenhirLib.EngineTypes.next = {
37094 MenhirLib.EngineTypes.state = _menhir_s;
37095 MenhirLib.EngineTypes.startp = _startpos__1_;
37096 MenhirLib.EngineTypes.endp = _endpos__1_;
37097 MenhirLib.EngineTypes.next = _menhir_stack;
37098 };
37099 };
37100 };
37101 } = _menhir_stack in
37102 let w : 'tv_rule_elem_statement = Obj.magic w in
37103 let _startpos = _startpos__1_ in
37104 let _endpos = _endpos__4_ in
37105 let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ =
37106 # 2366 "parser_cocci_menhir.mly"
37107 ( [Ast0.WhenAlways w] )
37108 # 37082 "parser_cocci_menhir.ml"
37109 in
37110 _menhir_env.MenhirLib.EngineTypes.stack <- {
37111 MenhirLib.EngineTypes.state = _menhir_s;
37112 MenhirLib.EngineTypes.semv = Obj.repr _v;
37113 MenhirLib.EngineTypes.startp = _startpos;
37114 MenhirLib.EngineTypes.endp = _endpos;
37115 MenhirLib.EngineTypes.next = _menhir_stack;
37116 });
37117 (fun _menhir_env ->
37118 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
37119 let {
37120 MenhirLib.EngineTypes.startp = _startpos__3_;
37121 MenhirLib.EngineTypes.endp = _endpos__3_;
37122 MenhirLib.EngineTypes.next = {
37123 MenhirLib.EngineTypes.semv = _2;
37124 MenhirLib.EngineTypes.startp = _startpos__2_;
37125 MenhirLib.EngineTypes.endp = _endpos__2_;
37126 MenhirLib.EngineTypes.next = {
37127 MenhirLib.EngineTypes.state = _menhir_s;
37128 MenhirLib.EngineTypes.startp = _startpos__1_;
37129 MenhirLib.EngineTypes.endp = _endpos__1_;
37130 MenhirLib.EngineTypes.next = _menhir_stack;
37131 };
37132 };
37133 } = _menhir_stack in
37134 let _2 : 'tv_comma_list_any_strict_ = Obj.magic _2 in
37135 let _startpos = _startpos__1_ in
37136 let _endpos = _endpos__3_ in
37137 let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ =
37138 # 2368 "parser_cocci_menhir.mly"
37139 ( List.map (function x -> Ast0.WhenModifier(x)) _2 )
37140 # 37114 "parser_cocci_menhir.ml"
37141 in
37142 _menhir_env.MenhirLib.EngineTypes.stack <- {
37143 MenhirLib.EngineTypes.state = _menhir_s;
37144 MenhirLib.EngineTypes.semv = Obj.repr _v;
37145 MenhirLib.EngineTypes.startp = _startpos;
37146 MenhirLib.EngineTypes.endp = _endpos;
37147 MenhirLib.EngineTypes.next = _menhir_stack;
37148 });
37149 (fun _menhir_env ->
37150 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
37151 let {
37152 MenhirLib.EngineTypes.startp = _startpos__4_;
37153 MenhirLib.EngineTypes.endp = _endpos__4_;
37154 MenhirLib.EngineTypes.next = {
37155 MenhirLib.EngineTypes.semv = e;
37156 MenhirLib.EngineTypes.startp = _startpos_e_;
37157 MenhirLib.EngineTypes.endp = _endpos_e_;
37158 MenhirLib.EngineTypes.next = {
37159 MenhirLib.EngineTypes.startp = _startpos__2_;
37160 MenhirLib.EngineTypes.endp = _endpos__2_;
37161 MenhirLib.EngineTypes.next = {
37162 MenhirLib.EngineTypes.state = _menhir_s;
37163 MenhirLib.EngineTypes.startp = _startpos__1_;
37164 MenhirLib.EngineTypes.endp = _endpos__1_;
37165 MenhirLib.EngineTypes.next = _menhir_stack;
37166 };
37167 };
37168 };
37169 } = _menhir_stack in
37170 let e : 'tv_eexpr = Obj.magic e in
37171 let _startpos = _startpos__1_ in
37172 let _endpos = _endpos__4_ in
37173 let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ =
37174 # 2369 "parser_cocci_menhir.mly"
37175 ( [Ast0.WhenNotTrue e] )
37176 # 37150 "parser_cocci_menhir.ml"
37177 in
37178 _menhir_env.MenhirLib.EngineTypes.stack <- {
37179 MenhirLib.EngineTypes.state = _menhir_s;
37180 MenhirLib.EngineTypes.semv = Obj.repr _v;
37181 MenhirLib.EngineTypes.startp = _startpos;
37182 MenhirLib.EngineTypes.endp = _endpos;
37183 MenhirLib.EngineTypes.next = _menhir_stack;
37184 });
37185 (fun _menhir_env ->
37186 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
37187 let {
37188 MenhirLib.EngineTypes.startp = _startpos__4_;
37189 MenhirLib.EngineTypes.endp = _endpos__4_;
37190 MenhirLib.EngineTypes.next = {
37191 MenhirLib.EngineTypes.semv = e;
37192 MenhirLib.EngineTypes.startp = _startpos_e_;
37193 MenhirLib.EngineTypes.endp = _endpos_e_;
37194 MenhirLib.EngineTypes.next = {
37195 MenhirLib.EngineTypes.startp = _startpos__2_;
37196 MenhirLib.EngineTypes.endp = _endpos__2_;
37197 MenhirLib.EngineTypes.next = {
37198 MenhirLib.EngineTypes.state = _menhir_s;
37199 MenhirLib.EngineTypes.startp = _startpos__1_;
37200 MenhirLib.EngineTypes.endp = _endpos__1_;
37201 MenhirLib.EngineTypes.next = _menhir_stack;
37202 };
37203 };
37204 };
37205 } = _menhir_stack in
37206 let e : 'tv_eexpr = Obj.magic e in
37207 let _startpos = _startpos__1_ in
37208 let _endpos = _endpos__4_ in
37209 let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ =
37210 # 2370 "parser_cocci_menhir.mly"
37211 ( [Ast0.WhenNotFalse e] )
37212 # 37186 "parser_cocci_menhir.ml"
37213 in
37214 _menhir_env.MenhirLib.EngineTypes.stack <- {
37215 MenhirLib.EngineTypes.state = _menhir_s;
37216 MenhirLib.EngineTypes.semv = Obj.repr _v;
37217 MenhirLib.EngineTypes.startp = _startpos;
37218 MenhirLib.EngineTypes.endp = _endpos;
37219 MenhirLib.EngineTypes.next = _menhir_stack;
37220 });
37221 (fun _menhir_env ->
37222 let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
37223 let {
37224 MenhirLib.EngineTypes.state = _menhir_s;
37225 MenhirLib.EngineTypes.semv = _1;
37226 MenhirLib.EngineTypes.startp = _startpos__1_;
37227 MenhirLib.EngineTypes.endp = _endpos__1_;
37228 MenhirLib.EngineTypes.next = _menhir_stack;
37229 } = _menhir_stack in
37230 let _1 : (
37231 # 101 "parser_cocci_menhir.mly"
37232 (string * Data.clt)
37233 # 37207 "parser_cocci_menhir.ml"
37234 ) = Obj.magic _1 in
37235 let _startpos = _startpos__1_ in
37236 let _endpos = _endpos__1_ in
37237 let _v : 'tv_wrapped_sym_ident =
37238 # 1791 "parser_cocci_menhir.mly"
37239 ( Ast0.wrap(Ast0.Id(P.sym2mcode _1)) )
37240 # 37214 "parser_cocci_menhir.ml"
37241 in
37242 _menhir_env.MenhirLib.EngineTypes.stack <- {
37243 MenhirLib.EngineTypes.state = _menhir_s;
37244 MenhirLib.EngineTypes.semv = Obj.repr _v;
37245 MenhirLib.EngineTypes.startp = _startpos;
37246 MenhirLib.EngineTypes.endp = _endpos;
37247 MenhirLib.EngineTypes.next = _menhir_stack;
37248 });
37249 |]
37250
37251 let recovery =
37252 false
37253
37254 let trace =
37255 None
37256
37257 end)
37258
37259 let rec script_meta_main =
37260 fun lexer lexbuf ->
37261 (Obj.magic (MenhirInterpreter.entry 1832 lexer lexbuf) : (
37262 # 207 "parser_cocci_menhir.mly"
37263 ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
37264 # 37238 "parser_cocci_menhir.ml"
37265 ))
37266
37267 and rule_name =
37268 fun lexer lexbuf ->
37269 (Obj.magic (MenhirInterpreter.entry 1755 lexer lexbuf) : (
37270 # 201 "parser_cocci_menhir.mly"
37271 (Ast_cocci.rulename)
37272 # 37246 "parser_cocci_menhir.ml"
37273 ))
37274
37275 and reinit =
37276 fun lexer lexbuf ->
37277 (Obj.magic (MenhirInterpreter.entry 1753 lexer lexbuf) : (
37278 # 179 "parser_cocci_menhir.mly"
37279 (unit)
37280 # 37254 "parser_cocci_menhir.ml"
37281 ))
37282
37283 and plus_main =
37284 fun lexer lexbuf ->
37285 (Obj.magic (MenhirInterpreter.entry 1717 lexer lexbuf) : (
37286 # 188 "parser_cocci_menhir.mly"
37287 (Ast0_cocci.rule)
37288 # 37262 "parser_cocci_menhir.ml"
37289 ))
37290
37291 and plus_exp_main =
37292 fun lexer lexbuf ->
37293 (Obj.magic (MenhirInterpreter.entry 1709 lexer lexbuf) : (
37294 # 191 "parser_cocci_menhir.mly"
37295 (Ast0_cocci.rule)
37296 # 37270 "parser_cocci_menhir.ml"
37297 ))
37298
37299 and never_used =
37300 fun lexer lexbuf ->
37301 (Obj.magic (MenhirInterpreter.entry 1703 lexer lexbuf) : (
37302 # 216 "parser_cocci_menhir.mly"
37303 (unit)
37304 # 37278 "parser_cocci_menhir.ml"
37305 ))
37306
37307 and minus_main =
37308 fun lexer lexbuf ->
37309 (Obj.magic (MenhirInterpreter.entry 1618 lexer lexbuf) : (
37310 # 182 "parser_cocci_menhir.mly"
37311 (Ast0_cocci.rule)
37312 # 37286 "parser_cocci_menhir.ml"
37313 ))
37314
37315 and minus_exp_main =
37316 fun lexer lexbuf ->
37317 (Obj.magic (MenhirInterpreter.entry 1606 lexer lexbuf) : (
37318 # 185 "parser_cocci_menhir.mly"
37319 (Ast0_cocci.rule)
37320 # 37294 "parser_cocci_menhir.ml"
37321 ))
37322
37323 and meta_main =
37324 fun lexer lexbuf ->
37325 (Obj.magic (MenhirInterpreter.entry 1603 lexer lexbuf) : (
37326 # 205 "parser_cocci_menhir.mly"
37327 ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
37328 # 37302 "parser_cocci_menhir.ml"
37329 ))
37330
37331 and iso_rule_name =
37332 fun lexer lexbuf ->
37333 (Obj.magic (MenhirInterpreter.entry 1599 lexer lexbuf) : (
37334 # 197 "parser_cocci_menhir.mly"
37335 (Ast_cocci.rulename)
37336 # 37310 "parser_cocci_menhir.ml"
37337 ))
37338
37339 and iso_meta_main =
37340 fun lexer lexbuf ->
37341 (Obj.magic (MenhirInterpreter.entry 1301 lexer lexbuf) : (
37342 # 213 "parser_cocci_menhir.mly"
37343 ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
37344 # 37318 "parser_cocci_menhir.ml"
37345 ))
37346
37347 and iso_main =
37348 fun lexer lexbuf ->
37349 (Obj.magic (MenhirInterpreter.entry 18 lexer lexbuf) : (
37350 # 210 "parser_cocci_menhir.mly"
37351 (Ast0_cocci.anything list list)
37352 # 37326 "parser_cocci_menhir.ml"
37353 ))
37354
37355 and include_main =
37356 fun lexer lexbuf ->
37357 (Obj.magic (MenhirInterpreter.entry 0 lexer lexbuf) : (
37358 # 194 "parser_cocci_menhir.mly"
37359 (Data.incl_iso list)
37360 # 37334 "parser_cocci_menhir.ml"
37361 ))
37362
37363
37364