type token =
| Tvolatile of (
-# 54 "parser_cocci_menhir.mly"
+# 120 "parser_cocci_menhir.mly"
(Data.clt)
# 8 "parser_cocci_menhir.ml"
)
| Tvoid of (
-# 50 "parser_cocci_menhir.mly"
+# 116 "parser_cocci_menhir.mly"
(Data.clt)
# 13 "parser_cocci_menhir.ml"
)
| Tunsigned of (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
# 18 "parser_cocci_menhir.ml"
)
| Tunion of (
-# 50 "parser_cocci_menhir.mly"
+# 116 "parser_cocci_menhir.mly"
(Data.clt)
# 23 "parser_cocci_menhir.ml"
)
| Ttypedef of (
-# 53 "parser_cocci_menhir.mly"
+# 119 "parser_cocci_menhir.mly"
(Data.clt)
# 28 "parser_cocci_menhir.ml"
)
| Tstruct of (
-# 50 "parser_cocci_menhir.mly"
+# 116 "parser_cocci_menhir.mly"
(Data.clt)
# 33 "parser_cocci_menhir.ml"
)
| Tstatic of (
-# 53 "parser_cocci_menhir.mly"
+# 119 "parser_cocci_menhir.mly"
(Data.clt)
# 38 "parser_cocci_menhir.ml"
)
- | Tsigned of (
-# 51 "parser_cocci_menhir.mly"
+ | Tssize_t of (
+# 115 "parser_cocci_menhir.mly"
(Data.clt)
# 43 "parser_cocci_menhir.ml"
)
- | Tshort of (
-# 49 "parser_cocci_menhir.mly"
+ | Tsize_t of (
+# 115 "parser_cocci_menhir.mly"
(Data.clt)
# 48 "parser_cocci_menhir.ml"
)
- | Tregister of (
-# 53 "parser_cocci_menhir.mly"
+ | Tsigned of (
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
# 53 "parser_cocci_menhir.ml"
)
- | Tlong of (
-# 49 "parser_cocci_menhir.mly"
+ | Tshort of (
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
# 58 "parser_cocci_menhir.ml"
+)
+ | Tregister of (
+# 119 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 63 "parser_cocci_menhir.ml"
+)
+ | Tptrdiff_t of (
+# 115 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 68 "parser_cocci_menhir.ml"
+)
+ | Tlong of (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 73 "parser_cocci_menhir.ml"
)
| Tlist
| Tint of (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 64 "parser_cocci_menhir.ml"
+# 79 "parser_cocci_menhir.ml"
)
| Tinline of (
-# 53 "parser_cocci_menhir.mly"
+# 119 "parser_cocci_menhir.mly"
(Data.clt)
-# 69 "parser_cocci_menhir.ml"
+# 84 "parser_cocci_menhir.ml"
)
| Tfloat of (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 74 "parser_cocci_menhir.ml"
+# 89 "parser_cocci_menhir.ml"
)
| Textern of (
-# 53 "parser_cocci_menhir.mly"
+# 119 "parser_cocci_menhir.mly"
(Data.clt)
-# 79 "parser_cocci_menhir.ml"
+# 94 "parser_cocci_menhir.ml"
)
| Tenum of (
-# 50 "parser_cocci_menhir.mly"
+# 116 "parser_cocci_menhir.mly"
(Data.clt)
-# 84 "parser_cocci_menhir.ml"
+# 99 "parser_cocci_menhir.ml"
)
| Tdouble of (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 89 "parser_cocci_menhir.ml"
+# 104 "parser_cocci_menhir.ml"
)
| Tconst of (
-# 54 "parser_cocci_menhir.mly"
+# 120 "parser_cocci_menhir.mly"
(Data.clt)
-# 94 "parser_cocci_menhir.ml"
+# 109 "parser_cocci_menhir.ml"
)
| Tchar of (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 99 "parser_cocci_menhir.ml"
+# 114 "parser_cocci_menhir.ml"
)
| Tauto of (
-# 53 "parser_cocci_menhir.mly"
+# 119 "parser_cocci_menhir.mly"
(Data.clt)
-# 104 "parser_cocci_menhir.ml"
+# 119 "parser_cocci_menhir.ml"
)
| Tattr of (
-# 55 "parser_cocci_menhir.mly"
+# 121 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 109 "parser_cocci_menhir.ml"
+# 124 "parser_cocci_menhir.ml"
)
| TXor of (
-# 92 "parser_cocci_menhir.mly"
+# 159 "parser_cocci_menhir.mly"
(Data.clt)
-# 114 "parser_cocci_menhir.ml"
+# 129 "parser_cocci_menhir.ml"
)
| TWords
| TWhy0
| TWhy of (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 121 "parser_cocci_menhir.ml"
+# 136 "parser_cocci_menhir.ml"
)
| TWhile of (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 126 "parser_cocci_menhir.ml"
+# 141 "parser_cocci_menhir.ml"
)
| TWhenTrue of (
-# 74 "parser_cocci_menhir.mly"
+# 141 "parser_cocci_menhir.mly"
(Data.clt)
-# 131 "parser_cocci_menhir.ml"
+# 146 "parser_cocci_menhir.ml"
)
| TWhenFalse of (
-# 74 "parser_cocci_menhir.mly"
+# 141 "parser_cocci_menhir.mly"
(Data.clt)
-# 136 "parser_cocci_menhir.ml"
+# 151 "parser_cocci_menhir.ml"
)
| TWhen of (
-# 74 "parser_cocci_menhir.mly"
+# 141 "parser_cocci_menhir.mly"
(Data.clt)
-# 141 "parser_cocci_menhir.ml"
+# 156 "parser_cocci_menhir.ml"
)
+ | TVirtual
| TUsing
+ | TUnderscore
+ | TUndef of (
+# 148 "parser_cocci_menhir.mly"
+ (Data.clt * token)
+# 164 "parser_cocci_menhir.ml"
+)
| TTypedef
| TTypeId of (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 148 "parser_cocci_menhir.ml"
+# 170 "parser_cocci_menhir.ml"
)
| TType
+ | TTildeExclEq of (
+# 161 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 176 "parser_cocci_menhir.ml"
+)
+ | TTildeEq of (
+# 161 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 181 "parser_cocci_menhir.ml"
+)
| TTilde of (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 154 "parser_cocci_menhir.ml"
+# 186 "parser_cocci_menhir.ml"
)
| TSwitch of (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 191 "parser_cocci_menhir.ml"
+)
+ | TSub of (
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 159 "parser_cocci_menhir.ml"
+# 196 "parser_cocci_menhir.ml"
)
| TString of (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 164 "parser_cocci_menhir.ml"
+# 201 "parser_cocci_menhir.ml"
)
| TStrict of (
-# 74 "parser_cocci_menhir.mly"
+# 141 "parser_cocci_menhir.mly"
(Data.clt)
-# 169 "parser_cocci_menhir.ml"
+# 206 "parser_cocci_menhir.ml"
)
| TStatement
| TSizeof of (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 175 "parser_cocci_menhir.ml"
+# 212 "parser_cocci_menhir.ml"
+)
+ | TShROp of (
+# 163 "parser_cocci_menhir.mly"
+ (Ast_cocci.arithOp * Data.clt)
+# 217 "parser_cocci_menhir.ml"
)
- | TShOp of (
-# 96 "parser_cocci_menhir.mly"
+ | TShLOp of (
+# 163 "parser_cocci_menhir.mly"
(Ast_cocci.arithOp * Data.clt)
-# 180 "parser_cocci_menhir.ml"
+# 222 "parser_cocci_menhir.ml"
)
| TScriptData of (
-# 71 "parser_cocci_menhir.mly"
+# 138 "parser_cocci_menhir.mly"
(string)
-# 185 "parser_cocci_menhir.ml"
+# 227 "parser_cocci_menhir.ml"
)
| TScript
| TRuleName of (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 191 "parser_cocci_menhir.ml"
+# 233 "parser_cocci_menhir.ml"
)
| TRightIso
| TReturn of (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 197 "parser_cocci_menhir.ml"
+# 239 "parser_cocci_menhir.ml"
)
| TPure
| TPtrOp of (
-# 104 "parser_cocci_menhir.mly"
+# 171 "parser_cocci_menhir.mly"
(Data.clt)
-# 203 "parser_cocci_menhir.ml"
+# 245 "parser_cocci_menhir.ml"
)
| TPtVirg of (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 208 "parser_cocci_menhir.ml"
+# 250 "parser_cocci_menhir.ml"
)
| TPragma of (
-# 59 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 213 "parser_cocci_menhir.ml"
+# 126 "parser_cocci_menhir.mly"
+ (Ast_cocci.added_string * Data.clt)
+# 255 "parser_cocci_menhir.ml"
)
| TPosition
| TPosAny
| TPlusFile of (
-# 83 "parser_cocci_menhir.mly"
+# 150 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 220 "parser_cocci_menhir.ml"
+# 262 "parser_cocci_menhir.ml"
)
| TPlus0
| TPlus of (
-# 98 "parser_cocci_menhir.mly"
+# 165 "parser_cocci_menhir.mly"
(Data.clt)
-# 226 "parser_cocci_menhir.ml"
+# 268 "parser_cocci_menhir.ml"
)
| TPathIsoFile of (
-# 79 "parser_cocci_menhir.mly"
+# 146 "parser_cocci_menhir.mly"
(string)
-# 231 "parser_cocci_menhir.ml"
+# 273 "parser_cocci_menhir.ml"
)
| TParameter
| TPOEllipsis of (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 237 "parser_cocci_menhir.ml"
+# 279 "parser_cocci_menhir.ml"
)
| TPCEllipsis of (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 242 "parser_cocci_menhir.ml"
+# 284 "parser_cocci_menhir.ml"
)
| TPArob
| TOrLog of (
-# 89 "parser_cocci_menhir.mly"
+# 156 "parser_cocci_menhir.mly"
(Data.clt)
-# 248 "parser_cocci_menhir.ml"
+# 290 "parser_cocci_menhir.ml"
)
| TOr of (
-# 91 "parser_cocci_menhir.mly"
+# 158 "parser_cocci_menhir.mly"
(Data.clt)
-# 253 "parser_cocci_menhir.ml"
+# 295 "parser_cocci_menhir.ml"
)
| TOn
| TOPar0 of (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 259 "parser_cocci_menhir.ml"
+# 301 "parser_cocci_menhir.ml"
)
| TOPar of (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 264 "parser_cocci_menhir.ml"
+# 306 "parser_cocci_menhir.ml"
)
| TOInit of (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 269 "parser_cocci_menhir.ml"
+# 311 "parser_cocci_menhir.ml"
)
| TOEllipsis of (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 274 "parser_cocci_menhir.ml"
+# 316 "parser_cocci_menhir.ml"
)
| TOCro of (
-# 102 "parser_cocci_menhir.mly"
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 279 "parser_cocci_menhir.ml"
+# 321 "parser_cocci_menhir.ml"
)
| TOBrace of (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 284 "parser_cocci_menhir.ml"
+# 326 "parser_cocci_menhir.ml"
)
| TNothing
| TNotEq of (
-# 94 "parser_cocci_menhir.mly"
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 290 "parser_cocci_menhir.ml"
+# 332 "parser_cocci_menhir.ml"
)
| TNever
| TName
| TMul of (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 297 "parser_cocci_menhir.ml"
+# 339 "parser_cocci_menhir.ml"
)
| TMinusFile of (
-# 83 "parser_cocci_menhir.mly"
+# 150 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 302 "parser_cocci_menhir.ml"
+# 344 "parser_cocci_menhir.ml"
)
| TMinus of (
-# 98 "parser_cocci_menhir.mly"
+# 165 "parser_cocci_menhir.mly"
(Data.clt)
-# 307 "parser_cocci_menhir.ml"
+# 349 "parser_cocci_menhir.ml"
)
| TMid0 of (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 312 "parser_cocci_menhir.ml"
+# 354 "parser_cocci_menhir.ml"
)
+ | TMetavariable
| TMetaType of (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 317 "parser_cocci_menhir.ml"
+# 360 "parser_cocci_menhir.ml"
)
| TMetaStmList of (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 322 "parser_cocci_menhir.ml"
+# 365 "parser_cocci_menhir.ml"
)
| TMetaStm of (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 327 "parser_cocci_menhir.ml"
+# 370 "parser_cocci_menhir.ml"
)
| TMetaPos of (
-# 68 "parser_cocci_menhir.mly"
+# 135 "parser_cocci_menhir.mly"
(Parse_aux.pos_info)
-# 332 "parser_cocci_menhir.ml"
+# 375 "parser_cocci_menhir.ml"
)
| TMetaParamList of (
-# 66 "parser_cocci_menhir.mly"
+# 133 "parser_cocci_menhir.mly"
(Parse_aux.list_info)
-# 337 "parser_cocci_menhir.ml"
+# 380 "parser_cocci_menhir.ml"
)
| TMetaParam of (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 342 "parser_cocci_menhir.ml"
+# 385 "parser_cocci_menhir.ml"
)
| TMetaLocalIdExp of (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 347 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 390 "parser_cocci_menhir.ml"
)
| TMetaLocalFunc of (
-# 61 "parser_cocci_menhir.mly"
+# 128 "parser_cocci_menhir.mly"
(Parse_aux.idinfo)
-# 352 "parser_cocci_menhir.ml"
+# 395 "parser_cocci_menhir.ml"
)
| TMetaIterator of (
-# 62 "parser_cocci_menhir.mly"
+# 129 "parser_cocci_menhir.mly"
(Parse_aux.idinfo)
-# 357 "parser_cocci_menhir.ml"
+# 400 "parser_cocci_menhir.ml"
)
| TMetaInit of (
-# 65 "parser_cocci_menhir.mly"
+# 132 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 362 "parser_cocci_menhir.ml"
+# 405 "parser_cocci_menhir.ml"
)
| TMetaIdExp of (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 367 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 410 "parser_cocci_menhir.ml"
)
| TMetaId of (
-# 61 "parser_cocci_menhir.mly"
+# 128 "parser_cocci_menhir.mly"
(Parse_aux.idinfo)
-# 372 "parser_cocci_menhir.ml"
+# 415 "parser_cocci_menhir.ml"
)
| TMetaFunc of (
-# 61 "parser_cocci_menhir.mly"
+# 128 "parser_cocci_menhir.mly"
(Parse_aux.idinfo)
-# 377 "parser_cocci_menhir.ml"
+# 420 "parser_cocci_menhir.ml"
+)
+ | TMetaField of (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 425 "parser_cocci_menhir.ml"
)
| TMetaExpList of (
-# 66 "parser_cocci_menhir.mly"
+# 133 "parser_cocci_menhir.mly"
(Parse_aux.list_info)
-# 382 "parser_cocci_menhir.ml"
+# 430 "parser_cocci_menhir.ml"
)
| TMetaExp of (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 387 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 435 "parser_cocci_menhir.ml"
)
| TMetaErr of (
-# 63 "parser_cocci_menhir.mly"
+# 130 "parser_cocci_menhir.mly"
(Parse_aux.expinfo)
-# 392 "parser_cocci_menhir.ml"
+# 440 "parser_cocci_menhir.ml"
)
| TMetaDeclarer of (
-# 62 "parser_cocci_menhir.mly"
+# 129 "parser_cocci_menhir.mly"
(Parse_aux.idinfo)
-# 397 "parser_cocci_menhir.ml"
+# 445 "parser_cocci_menhir.ml"
+)
+ | TMetaDecl of (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 450 "parser_cocci_menhir.ml"
)
| TMetaConst of (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 402 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 455 "parser_cocci_menhir.ml"
+)
+ | TMeta of (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 460 "parser_cocci_menhir.ml"
)
| TMPtVirg
| TLogOp of (
-# 95 "parser_cocci_menhir.mly"
+# 162 "parser_cocci_menhir.mly"
(Ast_cocci.logicalOp * Data.clt)
-# 408 "parser_cocci_menhir.ml"
+# 466 "parser_cocci_menhir.ml"
)
| TLocal
| TLineEnd of (
-# 74 "parser_cocci_menhir.mly"
+# 141 "parser_cocci_menhir.mly"
(Data.clt)
-# 414 "parser_cocci_menhir.ml"
+# 472 "parser_cocci_menhir.ml"
)
| TIteratorId of (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 419 "parser_cocci_menhir.ml"
+# 477 "parser_cocci_menhir.ml"
)
| TIterator
| TIsoType
| TIsoTopLevel
+ | TIsoToTestExpression
| TIsoTestExpression
| TIsoStatement
| TIsoExpression
| TIso
| TInvalid
| TInt of (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 434 "parser_cocci_menhir.ml"
+# 493 "parser_cocci_menhir.ml"
)
| TInitialize
| TInitialiser
| TIncludeNL of (
-# 80 "parser_cocci_menhir.mly"
+# 147 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 441 "parser_cocci_menhir.ml"
+# 500 "parser_cocci_menhir.ml"
)
| TIncludeL of (
-# 80 "parser_cocci_menhir.mly"
+# 147 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 446 "parser_cocci_menhir.ml"
+# 505 "parser_cocci_menhir.ml"
)
| TInc of (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 451 "parser_cocci_menhir.ml"
+# 510 "parser_cocci_menhir.ml"
)
| TIf of (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 456 "parser_cocci_menhir.ml"
+# 515 "parser_cocci_menhir.ml"
)
| TIdentifier
| TIdent of (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 462 "parser_cocci_menhir.ml"
+# 521 "parser_cocci_menhir.ml"
)
| TIdExpression
| TGoto of (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 468 "parser_cocci_menhir.ml"
+# 527 "parser_cocci_menhir.ml"
)
| TGenerated
| TFunction
| TFunDecl of (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 475 "parser_cocci_menhir.ml"
+# 534 "parser_cocci_menhir.ml"
)
| TFresh
| TForall
| TFor of (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 482 "parser_cocci_menhir.ml"
+# 541 "parser_cocci_menhir.ml"
)
| TFloat of (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 487 "parser_cocci_menhir.ml"
+# 546 "parser_cocci_menhir.ml"
)
| TFinalize
+ | TField
| TExtends
| TExpression
| TExists
| TEver
| TError
| TEqEq of (
-# 94 "parser_cocci_menhir.mly"
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 498 "parser_cocci_menhir.ml"
+# 558 "parser_cocci_menhir.ml"
)
| TEq of (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 503 "parser_cocci_menhir.ml"
+# 563 "parser_cocci_menhir.ml"
)
| TElse of (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 508 "parser_cocci_menhir.ml"
+# 568 "parser_cocci_menhir.ml"
)
| TEllipsis of (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 513 "parser_cocci_menhir.ml"
+# 573 "parser_cocci_menhir.ml"
)
| TDotDot of (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 518 "parser_cocci_menhir.ml"
+# 578 "parser_cocci_menhir.ml"
)
| TDot of (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 523 "parser_cocci_menhir.ml"
+# 583 "parser_cocci_menhir.ml"
)
| TDo of (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 528 "parser_cocci_menhir.ml"
+# 588 "parser_cocci_menhir.ml"
)
| TDmOp of (
-# 97 "parser_cocci_menhir.mly"
+# 164 "parser_cocci_menhir.mly"
(Ast_cocci.arithOp * Data.clt)
-# 533 "parser_cocci_menhir.ml"
+# 593 "parser_cocci_menhir.ml"
)
| TDisable
| TDepends
| TDefineParam of (
-# 82 "parser_cocci_menhir.mly"
+# 149 "parser_cocci_menhir.mly"
(Data.clt * token * int * int)
-# 540 "parser_cocci_menhir.ml"
+# 600 "parser_cocci_menhir.ml"
)
| TDefine of (
-# 81 "parser_cocci_menhir.mly"
+# 148 "parser_cocci_menhir.mly"
(Data.clt * token)
-# 545 "parser_cocci_menhir.ml"
+# 605 "parser_cocci_menhir.ml"
)
| TDefault of (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 550 "parser_cocci_menhir.ml"
+# 610 "parser_cocci_menhir.ml"
)
| TDeclarerId of (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 555 "parser_cocci_menhir.ml"
+# 615 "parser_cocci_menhir.ml"
)
| TDeclarer
+ | TDeclaration
| TDec of (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 561 "parser_cocci_menhir.ml"
+# 622 "parser_cocci_menhir.ml"
)
| TCppConcatOp
| TContinue of (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 567 "parser_cocci_menhir.ml"
+# 628 "parser_cocci_menhir.ml"
)
| TContext
| TConstant
| TComma of (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 574 "parser_cocci_menhir.ml"
+# 635 "parser_cocci_menhir.ml"
)
| TChar of (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 579 "parser_cocci_menhir.ml"
+# 640 "parser_cocci_menhir.ml"
)
| TCase of (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 584 "parser_cocci_menhir.ml"
+# 645 "parser_cocci_menhir.ml"
)
| TCPar0 of (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 589 "parser_cocci_menhir.ml"
+# 650 "parser_cocci_menhir.ml"
)
| TCPar of (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 594 "parser_cocci_menhir.ml"
+# 655 "parser_cocci_menhir.ml"
)
| TCEllipsis of (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 599 "parser_cocci_menhir.ml"
+# 660 "parser_cocci_menhir.ml"
)
| TCCro of (
-# 102 "parser_cocci_menhir.mly"
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 604 "parser_cocci_menhir.ml"
+# 665 "parser_cocci_menhir.ml"
)
| TCBrace of (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 609 "parser_cocci_menhir.ml"
+# 670 "parser_cocci_menhir.ml"
)
| TBreak of (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 614 "parser_cocci_menhir.ml"
+# 675 "parser_cocci_menhir.ml"
)
| TBang0
| TBang of (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 620 "parser_cocci_menhir.ml"
+# 681 "parser_cocci_menhir.ml"
)
| TAssign of (
-# 108 "parser_cocci_menhir.mly"
+# 175 "parser_cocci_menhir.mly"
(Ast_cocci.assignOp * Data.clt)
-# 625 "parser_cocci_menhir.ml"
+# 686 "parser_cocci_menhir.ml"
)
| TArobArob
| TArob
| TAny of (
-# 74 "parser_cocci_menhir.mly"
+# 141 "parser_cocci_menhir.mly"
(Data.clt)
-# 632 "parser_cocci_menhir.ml"
+# 693 "parser_cocci_menhir.ml"
)
| TAndLog of (
-# 90 "parser_cocci_menhir.mly"
+# 157 "parser_cocci_menhir.mly"
(Data.clt)
-# 637 "parser_cocci_menhir.ml"
+# 698 "parser_cocci_menhir.ml"
)
| TAnd of (
-# 93 "parser_cocci_menhir.mly"
+# 160 "parser_cocci_menhir.mly"
(Data.clt)
-# 642 "parser_cocci_menhir.ml"
+# 703 "parser_cocci_menhir.ml"
)
| EOF
and _menhir_jeton = token
-# 23 "parser_cocci_menhir.mly"
+# 25 "parser_cocci_menhir.mly"
(* Not clear how to allow function declarations to specify a return type
module Ast = Ast_cocci
module P = Parse_aux
-# 664 "parser_cocci_menhir.ml"
+(* ---------------------------------------------------------------------- *)
+(* support for TMeta *)
+
+let print_meta (r,n) = r^"."^n
+
+let meta_metatable = Hashtbl.create(101)
+
+let coerce_tmeta newty name builder matcher =
+ try
+ let x = Hashtbl.find meta_metatable name in
+ if not (matcher x)
+ then
+ failwith
+ (Printf.sprintf "Metavariable %s is used as %s"
+ (print_meta name) newty)
+ with Not_found ->
+ (if !Flag_parsing_cocci.show_SP
+ then
+ Common.pr2
+ (Printf.sprintf
+ "Metavariable %s is assumed to be %s metavariable"
+ (print_meta name) newty));
+ Hashtbl.add meta_metatable name builder
+
+let tmeta_to_type (name,pure,clt) =
+ (coerce_tmeta "a type" name (TMetaType(name,pure,clt))
+ (function TMetaType(_,_,_) -> true | _ -> false));
+ Ast0.wrap(Ast0.MetaType(P.clt2mcode name clt,pure))
+
+let tmeta_to_field (name,pure,clt) =
+ (coerce_tmeta "a field" name (TMetaField(name,pure,clt))
+ (function TMetaField(_,_,_) -> true | _ -> false));
+ P.meta_field (name,pure,clt)
+
+let tmeta_to_exp (name,pure,clt) =
+ (coerce_tmeta "an expression" name
+ (TMetaExp(name,Ast0.NoConstraint,pure,None,clt))
+ (function TMetaExp(_,_,_,_,_) -> true | _ -> false));
+ Ast0.wrap
+ (Ast0.MetaExpr(P.clt2mcode name clt,Ast0.NoConstraint,None,Ast.ANY,pure))
+
+let tmeta_to_param (name,pure,clt) =
+ (coerce_tmeta "a parameter" name (TMetaParam(name,pure,clt))
+ (function TMetaParam(_,_,_) -> true | _ -> false));
+ Ast0.wrap(Ast0.MetaParam(P.clt2mcode name clt,pure))
+
+let tmeta_to_statement (name,pure,clt) =
+ (coerce_tmeta "a statement" name (TMetaType(name,pure,clt))
+ (function TMetaType(_,_,_) -> true | _ -> false));
+ P.meta_stm (name,pure,clt)
+
+let tmeta_to_seed_id (name,pure,clt) =
+ (coerce_tmeta "an identifier" name
+ (TMetaId(name,Ast.IdNoConstraint,pure,clt))
+ (function TMetaId(_,_,_,_) -> true | _ -> false));
+ Ast.SeedId name
+
+let tmeta_to_ident (name,pure,clt) =
+ (coerce_tmeta "an identifier" name
+ (TMetaId(name,Ast.IdNoConstraint,pure,clt))
+ (function TMetaId(_,_,_,_) -> true | _ -> false));
+ Ast0.wrap(Ast0.MetaId(P.clt2mcode name clt,Ast.IdNoConstraint,pure))
+
+# 788 "parser_cocci_menhir.ml"
let _eRR =
Error
fun _tok ->
match _tok with
| EOF ->
- 172
+ 189
| TAnd _ ->
- 171
+ 188
| TAndLog _ ->
- 170
+ 187
| TAny _ ->
- 169
+ 186
| TArob ->
- 168
+ 185
| TArobArob ->
- 167
+ 184
| TAssign _ ->
- 166
+ 183
| TBang _ ->
- 165
+ 182
| TBang0 ->
- 164
+ 181
| TBreak _ ->
- 163
+ 180
| TCBrace _ ->
- 162
+ 179
| TCCro _ ->
- 161
+ 178
| TCEllipsis _ ->
- 160
+ 177
| TCPar _ ->
- 159
+ 176
| TCPar0 _ ->
- 158
+ 175
| TCase _ ->
- 157
+ 174
| TChar _ ->
- 156
+ 173
| TComma _ ->
- 155
+ 172
| TConstant ->
- 154
+ 171
| TContext ->
- 153
+ 170
| TContinue _ ->
- 152
+ 169
| TCppConcatOp ->
- 151
+ 168
| TDec _ ->
- 150
+ 167
+ | TDeclaration ->
+ 166
| TDeclarer ->
- 149
+ 165
| TDeclarerId _ ->
- 148
+ 164
| TDefault _ ->
- 147
+ 163
| TDefine _ ->
- 146
+ 162
| TDefineParam _ ->
- 145
+ 161
| TDepends ->
- 144
+ 160
| TDisable ->
- 143
+ 159
| TDmOp _ ->
- 142
+ 158
| TDo _ ->
- 141
+ 157
| TDot _ ->
- 140
+ 156
| TDotDot _ ->
- 139
+ 155
| TEllipsis _ ->
- 138
+ 154
| TElse _ ->
- 137
+ 153
| TEq _ ->
- 136
+ 152
| TEqEq _ ->
- 135
+ 151
| TError ->
- 134
+ 150
| TEver ->
- 133
+ 149
| TExists ->
- 132
+ 148
| TExpression ->
- 131
+ 147
| TExtends ->
- 130
+ 146
+ | TField ->
+ 145
| TFinalize ->
- 129
+ 144
| TFloat _ ->
- 128
+ 143
| TFor _ ->
- 127
+ 142
| TForall ->
- 126
+ 141
| TFresh ->
- 125
+ 140
| TFunDecl _ ->
- 124
+ 139
| TFunction ->
- 123
+ 138
| TGenerated ->
- 122
+ 137
| TGoto _ ->
- 121
+ 136
| TIdExpression ->
- 120
+ 135
| TIdent _ ->
- 119
+ 134
| TIdentifier ->
- 118
+ 133
| TIf _ ->
- 117
+ 132
| TInc _ ->
- 116
+ 131
| TIncludeL _ ->
- 115
+ 130
| TIncludeNL _ ->
- 114
+ 129
| TInitialiser ->
- 113
+ 128
| TInitialize ->
- 112
+ 127
| TInt _ ->
- 111
+ 126
| TInvalid ->
- 110
+ 125
| TIso ->
- 109
+ 124
| TIsoArgExpression ->
- 108
+ 123
| TIsoDeclaration ->
- 107
+ 122
| TIsoExpression ->
- 106
+ 121
| TIsoStatement ->
- 105
+ 120
| TIsoTestExpression ->
- 104
+ 119
+ | TIsoToTestExpression ->
+ 118
| TIsoTopLevel ->
- 103
+ 117
| TIsoType ->
- 102
+ 116
| TIterator ->
- 101
+ 115
| TIteratorId _ ->
- 100
+ 114
| TLineEnd _ ->
- 99
+ 113
| TLocal ->
- 98
+ 112
| TLogOp _ ->
- 97
+ 111
| TMPtVirg ->
- 96
+ 110
+ | TMeta _ ->
+ 109
| TMetaConst _ ->
- 95
+ 108
+ | TMetaDecl _ ->
+ 107
| TMetaDeclarer _ ->
- 94
+ 106
| TMetaErr _ ->
- 93
+ 105
| TMetaExp _ ->
- 92
+ 104
| TMetaExpList _ ->
- 91
+ 103
+ | TMetaField _ ->
+ 102
| TMetaFunc _ ->
- 90
+ 101
| TMetaId _ ->
- 89
+ 100
| TMetaIdExp _ ->
- 88
+ 99
| TMetaInit _ ->
- 87
+ 98
| TMetaIterator _ ->
- 86
+ 97
| TMetaLocalFunc _ ->
- 85
+ 96
| TMetaLocalIdExp _ ->
- 84
+ 95
| TMetaParam _ ->
- 83
+ 94
| TMetaParamList _ ->
- 82
+ 93
| TMetaPos _ ->
- 81
+ 92
| TMetaStm _ ->
- 80
+ 91
| TMetaStmList _ ->
- 79
+ 90
| TMetaType _ ->
- 78
+ 89
+ | TMetavariable ->
+ 88
| TMid0 _ ->
- 77
+ 87
| TMinus _ ->
- 76
+ 86
| TMinusFile _ ->
- 75
+ 85
| TMul _ ->
- 74
+ 84
| TName ->
- 73
+ 83
| TNever ->
- 72
+ 82
| TNotEq _ ->
- 71
+ 81
| TNothing ->
- 70
+ 80
| TOBrace _ ->
- 69
+ 79
| TOCro _ ->
- 68
+ 78
| TOEllipsis _ ->
- 67
+ 77
| TOInit _ ->
- 66
+ 76
| TOPar _ ->
- 65
+ 75
| TOPar0 _ ->
- 64
+ 74
| TOn ->
- 63
+ 73
| TOr _ ->
- 62
+ 72
| TOrLog _ ->
- 61
+ 71
| TPArob ->
- 60
+ 70
| TPCEllipsis _ ->
- 59
+ 69
| TPOEllipsis _ ->
- 58
+ 68
| TParameter ->
- 57
+ 67
| TPathIsoFile _ ->
- 56
+ 66
| TPlus _ ->
- 55
+ 65
| TPlus0 ->
- 54
+ 64
| TPlusFile _ ->
- 53
+ 63
| TPosAny ->
- 52
+ 62
| TPosition ->
- 51
+ 61
| TPragma _ ->
- 50
+ 60
| TPtVirg _ ->
- 49
+ 59
| TPtrOp _ ->
- 48
+ 58
| TPure ->
- 47
+ 57
| TReturn _ ->
- 46
+ 56
| TRightIso ->
- 45
+ 55
| TRuleName _ ->
- 44
+ 54
| TScript ->
- 43
+ 53
| TScriptData _ ->
+ 52
+ | TShLOp _ ->
+ 51
+ | TShROp _ ->
+ 50
+ | TSizeof _ ->
+ 49
+ | TStatement ->
+ 48
+ | TStrict _ ->
+ 47
+ | TString _ ->
+ 46
+ | TSub _ ->
+ 45
+ | TSwitch _ ->
+ 44
+ | TTilde _ ->
+ 43
+ | TTildeEq _ ->
42
- | TShOp _ ->
+ | TTildeExclEq _ ->
41
- | TSizeof _ ->
+ | TType ->
40
- | TStatement ->
+ | TTypeId _ ->
39
- | TStrict _ ->
+ | TTypedef ->
38
- | TString _ ->
+ | TUndef _ ->
37
- | TSwitch _ ->
+ | TUnderscore ->
36
- | TTilde _ ->
+ | TUsing ->
35
- | TType ->
+ | TVirtual ->
34
- | TTypeId _ ->
+ | TWhen _ ->
33
- | TTypedef ->
+ | TWhenFalse _ ->
32
- | TUsing ->
+ | TWhenTrue _ ->
31
- | TWhen _ ->
+ | TWhile _ ->
30
- | TWhenFalse _ ->
+ | TWhy _ ->
29
- | TWhenTrue _ ->
+ | TWhy0 ->
28
- | TWhile _ ->
+ | TWords ->
27
- | TWhy _ ->
+ | TXor _ ->
26
- | TWhy0 ->
+ | Tattr _ ->
25
- | TWords ->
+ | Tauto _ ->
24
- | TXor _ ->
+ | Tchar _ ->
23
- | Tattr _ ->
+ | Tconst _ ->
22
- | Tauto _ ->
+ | Tdouble _ ->
21
- | Tchar _ ->
+ | Tenum _ ->
20
- | Tconst _ ->
+ | Textern _ ->
19
- | Tdouble _ ->
+ | Tfloat _ ->
18
- | Tenum _ ->
+ | Tinline _ ->
17
- | Textern _ ->
+ | Tint _ ->
16
- | Tfloat _ ->
+ | Tlist ->
15
- | Tinline _ ->
+ | Tlong _ ->
14
- | Tint _ ->
+ | Tptrdiff_t _ ->
13
- | Tlist ->
+ | Tregister _ ->
12
- | Tlong _ ->
+ | Tshort _ ->
11
- | Tregister _ ->
+ | Tsigned _ ->
10
- | Tshort _ ->
+ | Tsize_t _ ->
9
- | Tsigned _ ->
+ | Tssize_t _ ->
8
| Tstatic _ ->
7
Obj.repr ()
| TDec _v ->
Obj.repr _v
+ | TDeclaration ->
+ Obj.repr ()
| TDeclarer ->
Obj.repr ()
| TDeclarerId _v ->
Obj.repr ()
| TExtends ->
Obj.repr ()
+ | TField ->
+ Obj.repr ()
| TFinalize ->
Obj.repr ()
| TFloat _v ->
Obj.repr ()
| TIsoTestExpression ->
Obj.repr ()
+ | TIsoToTestExpression ->
+ Obj.repr ()
| TIsoTopLevel ->
Obj.repr ()
| TIsoType ->
Obj.repr _v
| TMPtVirg ->
Obj.repr ()
+ | TMeta _v ->
+ Obj.repr _v
| TMetaConst _v ->
Obj.repr _v
+ | TMetaDecl _v ->
+ Obj.repr _v
| TMetaDeclarer _v ->
Obj.repr _v
| TMetaErr _v ->
Obj.repr _v
| TMetaExpList _v ->
Obj.repr _v
+ | TMetaField _v ->
+ Obj.repr _v
| TMetaFunc _v ->
Obj.repr _v
| TMetaId _v ->
Obj.repr _v
| TMetaType _v ->
Obj.repr _v
+ | TMetavariable ->
+ Obj.repr ()
| TMid0 _v ->
Obj.repr _v
| TMinus _v ->
Obj.repr ()
| TScriptData _v ->
Obj.repr _v
- | TShOp _v ->
+ | TShLOp _v ->
+ Obj.repr _v
+ | TShROp _v ->
Obj.repr _v
| TSizeof _v ->
Obj.repr _v
Obj.repr _v
| TString _v ->
Obj.repr _v
+ | TSub _v ->
+ Obj.repr _v
| TSwitch _v ->
Obj.repr _v
| TTilde _v ->
Obj.repr _v
+ | TTildeEq _v ->
+ Obj.repr _v
+ | TTildeExclEq _v ->
+ Obj.repr _v
| TType ->
Obj.repr ()
| TTypeId _v ->
Obj.repr _v
| TTypedef ->
Obj.repr ()
+ | TUndef _v ->
+ Obj.repr _v
+ | TUnderscore ->
+ Obj.repr ()
| TUsing ->
Obj.repr ()
+ | TVirtual ->
+ Obj.repr ()
| TWhen _v ->
Obj.repr _v
| TWhenFalse _v ->
Obj.repr ()
| Tlong _v ->
Obj.repr _v
+ | Tptrdiff_t _v ->
+ Obj.repr _v
| Tregister _v ->
Obj.repr _v
| Tshort _v ->
Obj.repr _v
| Tsigned _v ->
Obj.repr _v
+ | Tsize_t _v ->
+ Obj.repr _v
+ | Tssize_t _v ->
+ Obj.repr _v
| Tstatic _v ->
Obj.repr _v
| Tstruct _v ->
Obj.repr _v
let default_reduction =
- (16, "\000\000\000\000\001G\001H\001F\000\000\001J\001I\000\001\000\000\001\131\000\000\000\000\000\137\000\000\000\000\001u\000\162\000\000\000\000\000\149\000\000\000\000\000\154\000\153\000\000\000\150\000\000\000\148\000\000\000\000\000\000\000\152\000\000\000\151\003\008\003\007\000\000\000\000\000\142\000\000\000\000\000\147\000\146\000\000\000\143\000\000\000\141\000\000\000\000\000\000\000\145\000\000\000\144\000\000\000\156\000\000\000\000\000\161\000\160\000\000\000\157\000\000\000\164\000\000\001C\002\149\001B\000\000\000\165\000\000\000\163\000\136\000\000\000\155\000\000\000\170\000\000\000\000\000\000\000\159\000\000\000\000\000\000\002\254\000\000\000\000\000\000\000\000\000\000\003\003\000\000\000\000\000\167\000\000\003\005\000\000\000\000\000\000\003\128\002_\000\000\003~\000\000\002y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003}\003\127\002e\001>\002d\001<\001=\002c\002b\002a\002]\000\000\000\000\002^\001\011\000\000\002`\000\000\003|\000\000\000c\001;\002@\000\000\000\000\002C\000\000\000\015\000\000\000\000\000\000\000\000\001\012\002\\\002h\000[\000\021\000]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\000\000\000\023\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\131\002!\000R\001\021\000^\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\\\000T\000\000\000S\001\022\000\000\002F\001\023\000\014\000\016\000\000\000\000\000\192\000\000\000\000\000\179\000\000\000\000\000\184\000\183\000\000\000\180\000\000\000\178\000\000\000\000\000\000\000\182\000\000\000\181\000\000\000\000\000\172\000\000\000\000\000\177\000\176\000\000\000\173\000\000\000\171\000\000\000\000\000\000\000\175\000\000\000\174\000\000\000\186\000\000\000\000\000\191\000\190\000\000\000\187\000\000\000\194\000\000\000\000\000\195\000\000\000\193\000\000\000\185\000\000\000\200\000\000\000\000\000\000\000\189\000\000\000\000\000\000\000\000\000\199\000\000\000\000\000\139\000\000\000\000\000\000\000\000\000\000\000\000\002\008\000\208\000\000\000\000\000n\000o\002\007\001\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\219\000\214\000\000\001\235\000\000\000\000\000\000\000\000\000\207\000\205\000\220\000\000\001}\000\000\000\000\003\000\000\000\002\255\000\000\000\000\000\000\000\000\000\000\000\197\000\000\000\000\000\000\000\000\000\198\000\196\000\000\000\000\003\002\003\006\000\188\000\000\000\000\001\026\000\000\000\000\002A\002D\000\000\002B\002E\003c\003d\003b\000\000\002f\003a\000\000\002\128\000\000\000\000\002\127\002~\002}\002|\002{\002w\000\000\000\000\002x\000\000\002z\000\000\000\000\000g\002N\000\000\000\000\002Q\000\000\000\000\002T\000\000\000\000\002O\002R\000\000\002P\002S\002\130\002v\003q\003r\003p\003o\000h\000\000\000\000\000W\000\000\000V\001\031\000\000\001\244\000\000\000\000\000\000\000\000\000\000\001\016\001\250\000\000\000\000\001\155\000U\0001\001\t\000_\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0002\000\000\0003\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\002g\000\000\000\203\000\000\000\000\001\229\000\000\001\145\001\210\000\000\000\000\001\228\000\000\001\143\001\209\000\000\000\000\000d\000\000\002\129\000\000\000\000\003t\003s\000\000\001\245\000\000\000\000\003f\003e\000\000\000Q\000\204\000\000\001w\000\000\003\001\000\000\000\000\000\000\000\000\000\168\000\166\000\000\001\020\000\000\000\000\000\169\000\158\000\000\000\000\001`\000\000\001_\000\000\001m\000\000\001\133\000\000\000\000\000\000\0036\000\000\000\000\003)\000\000\000\000\003.\003-\000\000\003*\000\000\003(\000\000\000\000\000\000\003,\000\000\003+\000\000\000\000\003\"\000\000\000\000\003'\003&\000\000\003#\000\000\003!\000\000\000\000\000\000\003%\000\000\003$\000\000\0030\000\000\000\000\0035\0034\000\000\0031\000\000\0038\000\000\000\000\0039\000\000\0037\000\000\003/\000\000\003>\000\000\000\000\000\000\0033\000\000\000\000\003]\000\000\000\000\000\000\000\000\003=\0032\000\000\003_\000\000\000\000\002\225\003^\000\129\000\000\000\248\000\000\000\000\000\000\000\000\003;\000\000\000\000\000\000\000\000\003<\003:\000\000\000\000\003T\000\000\000\000\003G\000\000\000\000\003L\003K\000\000\003H\000\000\003F\000\000\000\000\000\000\003J\000\000\003I\000\000\000\000\003@\000\000\000\000\003E\003D\000\000\003A\000\000\003?\000\000\000\000\000\000\003C\000\000\003B\000\000\003N\000\000\000\000\003S\003R\000\000\003O\000\000\003V\000\000\000\000\003W\000\000\003U\000\000\003M\000\000\003\\\000\000\000\000\000\000\003Q\000\000\000\000\000\000\000\000\003[\003P\000\000\000\000\000\000\000\000\003Y\000\000\000\000\000\000\000\000\003Z\003X\002\250\002\252\002\253\002\251\000\000\000\000\000\000\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\002\141\000\000\000\000\002\140\002\139\002\138\002\137\002\136\001\\\002\132\000\000\000\000\002\133\000\000\002\135\000\000\000\000\000i\002U\000\000\000\000\002X\000\000\000\000\002[\000\000\000\000\002V\002Y\000\000\002W\002Z\002\143\002\131\003x\003y\003w\003v\000j\000\000\000\000\000Z\000\000\000Y\000\000\002\142\000\000\001\211\000X\000?\001\030\000`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\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\000\000\135\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003{\003z\000\000\002\241\000\000\002\240\000\000\000\000\000\000\000\000\003\135\000\000\000\000\000\000\003\136\000\000\000\018\000\000\000\000\000\000\003\131\000\000\001\157\000\000\000\000\000\000\000\221\002\231\001s\000\000\000\210\001r\001L\001K\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\245\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\013\001\014\000\254\000\000\001\129\000\000\000\000\000\253\000\249\000\000\001\000\000\250\000\255\000\000\002\243\000\000\002\242\002\228\000\000\000\000\000\000\000\000\000\000\002\237\000\000\000\000\000\000\000\000\000\000\002\238\002\230\000\000\002\244\000\000\002\232\000\000\000\225\000\000\002\247\000\209\000\000\001N\000\000\000\000\000w\000\000\000\000\000\000\002l\000\000\000\000\000\000\002t\000\000\000\000\002s\000\000\003m\002r\002q\002p\002o\002n\002j\000\000\000\000\002k\000\000\002m\000\000\000\000\000\000\000\000\000\000\000e\002G\000\000\000\000\002J\000\000\000\000\002M\000\000\000\000\002H\002K\000\000\002I\002L\002u\002i\000f\003j\003k\003i\003h\003l\000\000\000\000\000\000\000\000\001\008\001\007\000\000\000\000\000\000\000\000\001R\000\000\001\018\001O\000\000\001\006\001U\000\000\000\000\001V\000\000\000\000\001W\000\000\001\127\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\000\000%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001X\000\000\001T\000\000\000\000\001Z\000\000\000\000\000\000\000\000\000\000\000\000\000t\000q\000r\001[\001Q\000\000\001P\000\000\000\241\000\000\002\205\000\000\000\000\000\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\244\000\000\000\000\000\247\000\000\000\000\000\000\000\000\000\000\000\000\001A\000\000\000\000\000\000\000\234\000\000\000\231\000\000\000\000\000\000\000\000\000\000\000\242\000\000\000\238\000\000\000\000\003\012\000\000\003\019\000\227\000\000\000\000\000\000\000\000\000\239\000\000\000\235\000\232\000\000\003\013\000\226\000\000\003\014\000\000\003\021\000\000\000\000\000\000\000\000\000\245\000\000\000\229\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\243\000\000\000\000\000\246\000\000\000\000\000\000\000\000\001@\000\000\000\000\000\000\000\233\000\000\000\230\000\000\000\000\000\000\000\000\000\000\000\240\000\000\000\236\000\223\000\222\000\000\003\022\003\023\000\000\003\024\000\000\003\025\000\000\001M\002\235\000\000\000\000\001\233\000\000\001\153\001\215\000\000\002\229\000\000\000\000\000\000\002\234\000\000\000\000\000\000\0014\000\000\001.\000\000\001/\000\000\0019\001-\0018\000\000\002\246\001:\000\000\000\228\000\000\000\000\000\000\000\000\0016\0011\001\230\000\000\0012\000\000\0013\000\000\001\147\001\212\000\000\000\000\000\000\001\240\000\000\001\238\000\000\000\000\001\242\001\236\000\000\001\243\001\237\000\000\002\248\001\246\000\000\000\224\000\000\000\000\001\231\000\000\001\149\001\213\000\000\003\132\000\000\003\129\000\000\003\130\000\019\000\020\000\000\000\000\002\184\000\000\002\183\000\000\000\000\002\186\000\000\002\185\000\000\000\000\000\000\002\017\000\000\000\000\002\021\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\024\000\000\000\000\002\027\000\000\002\011\000\000\000\000\002\014\000\000\000\000\000\000\002\018\000\000\000\000\002\022\000\000\000\000\001\232\000\000\000\000\002\015\000\000\000\000\002\019\002\181\002\012\000\000\002\182\000\000\000\000\000\000\000\000\002\025\000\000\002\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\023\000\000\000\000\002\026\000\000\002\n\000\000\000\000\002\013\000\000\000\000\000\000\002\016\000\000\000\000\002\020\000\000\001\151\001\214\000\000\002\187\000\000\000\000\000\000\003\133\000\017\000u\000\000\003\134\000\000\000\000\002\201\000\000\000\000\002\249\000a\000\000\000\000\000\000\000b\000\000\002\239\000\000\001y\002\236\000\000\000\000\001f\000\000\001e\000\000\001n\000\000\001\139\000\000\000\000\000\000\001d\000\000\001c\000\000\001k\000\000\001\137\000\000\000\000\000\000\001h\000\000\001g\000\000\001l\000\000\001\141\000\000\000\000\000\000\001i\000\000\000\000\000\000\000\000\001b\000\000\001a\000\000\001o\000\000\001\135\000\000\000\000\000\000\001j\000\002\000\000\000N\000O\000\000\000\000\002\161\002\165\002\169\002\157\002\154\000\000\000\000\001\178\002\166\002\173\002\158\002\172\002\156\002\171\002\160\002\152\002\159\002\168\002\155\002\162\002\153\002\164\002\170\002\167\002\163\000\128\000\000\000\000\002\223\000\000\000\000\002\195\000\000\000\000\002\197\002\196\002\179\000\000\000\000\002\227\002\150\002\151\000\000\001\190\000M\001p\000\003\000\000\000\000\002\146\000\000\002\031\000\000\000\127\000\000\000\000\002\221\000\000\000\000\000\000\000y\000\000\000\000\002\209\000\000\002\004\002\003\001\173\002\177\000\000\001\206\000\000\002\147\000\000\000\000\000{\000\000\000\000\002\213\000\000\001\187\000\000\000\000\001\183\000\000\000\000\000\000\001\186\000\000\001\185\000\000\000\000\000\000\000\000\000\000\000\000\001\207\000\000\001\181\000\000\001\180\000\000\000v\000\000\000\000\002\203\000\000\000\000\001\177\000\000\000\000\000}\000\000\000\000\002\217\000\000\000\000\000\000\000z\000\000\000\000\002\211\000\000\002\000\001\255\001\169\002\175\000\000\001\193\000\000\000\000\000\000\001\189\000\000\001\195\000\000\000\000\001\184\000\000\000\000\001\191\000\000\000\000\001\192\000\000\000\000\000\000\000\000\000\000\000\000\001\208\000\000\001\182\000\000\001\252\000|\000\000\000\000\002\215\000\000\000\000\000\000\001E\000x\001D\000\000\000\000\002\207\000\000\001\254\001\253\001\167\002\174\000\000\000~\000\000\000\000\002\219\000\000\000\000\000\000\000\000\002\002\002\001\001\171\002\176\000\000\001\200\000\000\001\204\000\000\000\000\001\196\000\000\000\000\000\000\001\188\000\000\001\194\000\000\000\000\000\000\000\000\001\176\000\000\000\000\001\203\000\000\001\202\000\000\000\000\000\000\000\000\001\199\000\000\000\000\001\198\000\000\001\197\000\000\000\000\000\000\000\000\001\201\000\000\001\205\000\000\000\000\001q\000\004\000\000\001\179\000\005\000\000\000\000\001\"\000\006\000\000\001\219\001\220\001\218\000\000\001\217\003\t\001\163\000\000\000\007\000\000\001\222\001\223\001\221\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\015\003\028\000\000\003\016\000\000\003\017\000\000\000\000\003\n\000\000\000\000\000\000\000\000\003\027\000\000\000\000\003\026\001\227\001\226\000\000\000\000\001\165\001\216\001\224\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000l\000m\002\005\000\000\000\000\000\000\000\217\000\000\001{\000\000\000\000\000\216\000\212\000\000\000\000\000\000\000\000\001?\000\000\003\031\000\000\003 \000\000\000\000\001\249\001\247\000\000\001\248\000\008\000\000\000\t\000\000\0020\0021\002/\000\000\002.\000\000\000\n\000\000\0023\0024\0022\000\000\0026\000\000\000\000\000\000\002(\000\000\000\000\002*\000\000\002$\000\000\002&\000\000\002+\000\000\002,\000\000\002%\002#\0027\001\175\002-\000\000\0029\000\000\0028\000\000\002:\000\000\002\180\000\011\000\000\000\000\000\000\000\000\000\000\000\000\002;\000\000\000\000\002>\000\000\002=\000\000\002<\001\001\000\000\000\000\000\000\000\000\001\002\002?\000\000\000\000\002\191\000\000\000\000\000\000\002\192\000\000\000\000\001!\000\000\000\000\000\000\000\000\000\000\002\199\000k\000\000\000\000\001\n\000\000\001\028\001\027\000\000\001^\000\000\002\190\001\161\001\159\000\000\000\000\000\000\002\193\000\012\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\189\000\000\000\000\000\000\000\000\000\000\000\000\002\188\000\000\000\013\000\000\000\000\000\000\000\000\000\000\002\194")
+ (16, "\000\000\000\000\003\004\000\131\000\000\000\000\003T\001\128\000\000\001~\001\127\001}\000\000\001\130\001\129\000\001\000\000\001\181\000\000\000\000\000\147\000\000\000\000\001\171\000\196\000\000\000\000\000\183\000\000\000\000\000\188\000\187\000\000\000\184\000\000\000\182\000\000\000\000\000\000\000\186\000\000\000\185\003\143\003\142\000\000\000\200\000\000\000\199\000\000\000\000\000\176\000\000\000\000\000\181\000\180\000\000\000\177\000\000\000\175\000\000\000\000\000\000\000\179\000\000\000\178\000\000\000\190\000\000\000\201\000\000\000\000\000\195\000\194\000\000\000\191\000\000\000\198\000\000\000\000\000\000\002\t\002\b\000\000\000\000\000\000\002\007\000\000\000\000\001K\001z\001J\001I\001H\001G\001y\001F\001E\000\000\0012\002J\000\000\000\000\002I\000\000\000\000\000\000\000\159\000\000\000\000\000\158\002M\001C\000\000\000\000\000\203\000\000\000\000\000\000\000\000\000\204\000\202\000\000\000\197\000\146\000\000\000\189\000\000\000\209\000\000\000\000\000\000\000\193\000\000\000\000\000\000\003\130\003\136\003\137\000\000\000\000\000\000\000\000\003\171\000\000\003\131\003\132\000\000\000\000\000\206\000\000\003\134\000\000\000\000\000\000\004\030\002\206\000\000\000\000\004\028\000\000\002\232\000\000\000\000\000\000\000\000\000\000\000\000\004\027\004\029\002\212\001u\002\211\001t\002\210\002\209\002\208\0021\002\204\000\000\000\000\002\205\001,\000\000\000\000\000\000\002\207\000\000\004\026\000\000\000\000\003\251\002\175\000\000\000\000\002\178\000\000\000\000\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\001-\001s\002\203\002\215\000m\000\021\000o\000\000\000\000\000Q\000\000\000\000\000\000\000\000\000\000\000\000\000R\000\000\000S\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\141\000d\0017\000p\002\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\000\000\000\000\000\000\000\000\000\000\000n\000f\000\000\000e\000\000\002\176\002\179\000\000\002\177\002\180\003\250\000\000\002\240\000\000\000\247\000\000\000\000\002\031\000\000\001\195\002\011\000\000\000\000\002\030\000\000\000\000\000\231\000\000\000\000\000\218\000\000\000\000\000\223\000\222\000\000\000\219\000\000\000\217\000\000\000\000\000\000\000\221\000\000\000\220\000\000\000\235\000\000\000\234\000\000\000\000\000\211\000\000\000\000\000\216\000\215\000\000\000\212\000\000\000\210\000\000\000\000\000\000\000\214\000\000\000\213\000\000\000\225\000\000\000\236\000\000\000\000\000\230\000\229\000\000\000\226\000\000\000\233\000\000\000\000\000\000\000\000\000\238\000\000\000\000\000\000\000\000\000\239\000\237\000\000\000\232\000\000\000\224\000\000\000\244\000\000\000\000\000\000\000\228\000\000\000\000\000\000\000\000\000\243\000\000\000\000\000\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002p\000\252\000\253\000\000\000\000\000\000\000\000\000\000\002^\002o\002%\000\000\000\000\000\000\000\000\000\000\001B\001\001\000\000\002&\000\000\000\000\000\000\000\000\000\251\000\249\000\171\000\000\000\000\000\170\002b\002_\000\000\000\000\003\139\000\000\003\138\000\000\000\000\000\000\000\000\000\000\000\241\000\000\000\000\000\000\000\000\000\242\000\240\003\170\000\000\000\000\003\141\003\135\000\227\000\000\001\193\002\n\000\000\000\000\002\239\000\000\000\000\002\238\002\237\002\236\002\235\002\234\002\230\000\000\004\006\002\231\000\000\004\007\002\233\000\000\004\t\000\000\000y\002\189\000\000\000\000\002\192\000\000\000\000\000\015\000\000\000\000\000\000\000\000\000\000\000i\000\000\000h\000\151\002\241\002\229\000\014\000\016\000g\0003\001*\000q\000\000\000\000\000\000\000\000\000\000\000\000\000\143\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0005\000\000\000\000\000\000\000\000\000\000\000\000\002;\002?\000\000\000\000\000\150\002<\001:\0018\000\000\002\195\000\000\000\000\002\190\002\193\000\000\002\191\002\194\004\b\000z\000\000\002\181\004\022\004\023\004\021\004\020\003\249\000\000\002\213\003\248\001P\000\000\002/\000\000\000\000\000\000\000\000\000\000\0010\0026\000\000\000\000\001\207\000\000\002\214\000\000\000\000\000v\000\000\000\000\004\011\004\n\000\000\0020\000\000\000\000\004\025\004\024\000\000\000\000\003\253\003\252\000\000\000c\000\248\000\000\001\173\000\000\003\140\000\000\000\000\000\000\000\000\000\207\000\205\000\000\0016\000\000\000\000\000\208\000\192\000\000\000\000\001\149\000\000\001\148\000\000\001\163\000\000\001\183\000\000\000\000\000\000\003\193\000\000\000\000\003\180\000\000\000\000\003\185\003\184\000\000\003\181\000\000\003\179\000\000\000\000\000\000\003\183\000\000\003\182\000\000\003\197\000\000\003\196\000\000\000\000\003\173\000\000\000\000\003\178\003\177\000\000\003\174\000\000\003\172\000\000\000\000\000\000\003\176\000\000\003\175\000\000\003\187\000\000\003\198\000\000\000\000\003\192\003\191\000\000\003\188\000\000\003\195\000\000\000\000\000\000\000\000\003\200\000\000\000\000\000\000\000\000\003\201\003\199\000\000\003\194\000\000\003\186\000\000\003\206\000\000\000\000\000\000\003\190\000\000\001\224\000\000\003\242\000\000\000\000\002\"\001\225\000\000\001\201\002\015\000\000\000\000\000\000\000\000\003\205\003\189\003\243\000\000\003\246\003\245\000\000\000\000\003d\003\244\000\139\000\000\001\030\000\000\000\000\000\000\000\000\003\203\000\000\000\000\000\000\000\000\003\204\003\202\000\000\000\000\003\228\000\000\000\000\003\215\000\000\000\000\003\220\003\219\000\000\003\216\000\000\003\214\000\000\000\000\000\000\003\218\000\000\003\217\000\000\003\232\000\000\003\231\000\000\000\000\003\208\000\000\000\000\003\213\003\212\000\000\003\209\000\000\003\207\000\000\000\000\000\000\003\211\000\000\003\210\000\000\003\222\000\000\003\233\000\000\000\000\003\227\003\226\000\000\003\223\000\000\003\230\000\000\000\000\000\000\000\000\003\235\000\000\000\000\000\000\000\000\003\236\003\234\000\000\003\229\000\000\003\221\000\000\003\241\000\000\000\000\000\000\003\225\000\000\000\000\000\000\000\000\003\240\003\224\000\000\000\000\000\000\000\000\003\238\000\000\000\000\000\000\000\000\003\239\003\237\003~\003\128\003\129\003\127\000\000\000\000\000\000\000\000\000\000\001\133\000\000\000\000\000\000\000\000\000\000\000\255\001\011\000\254\000\000\000\000\000\128\000\000\000\000\000\000\002\219\000\000\000\000\000\000\004\004\004\003\000\000\000\000\002\227\000\000\000\000\002\226\000\000\000\000\002\225\002\224\002\223\002\222\002\221\001\145\002\217\000\000\003\255\002\218\000\000\004\000\002\220\000\000\004\002\000\000\000w\002\182\000\000\000\000\002\185\000\000\000\000\002\188\000\000\000\000\002\183\002\186\000\000\002\184\002\187\002\228\002\216\004\001\000x\000\000\000\000\000\000\000\000\001)\001(\000\000\000\000\000\000\000\000\000\000\000\000\001\139\000\000\0014\001\137\000\000\001'\000\000\002Q\000\000\000\000\000\000\000\000\001\142\000\000\001\179\000$\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\143\000\000\000\000\002P\000\000\000\000\000\000\000\163\000\000\000\000\000\162\002T\001>\000\000\001\141\001\144\000\000\001\138\000\000\001\023\000\000\003N\000\000\000\000\001\019\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\026\000\000\000\000\001\029\001Z\001Y\000\000\000\000\000\000\000\000\000\000\001x\000\000\000\000\000\000\001\016\000\000\001\r\000\000\000\000\000\000\000\000\000\000\001\024\000\000\001\020\000\000\000\000\000\000\000\000\001\021\000\000\001\017\000\000\000\000\000\000\002\245\000\000\000\000\000\000\004\018\004\017\000\000\003u\000\000\003t\000\000\000\000\000\000\000\000\004%\000\000\000\000\000\000\004&\000\000\000\018\000\000\000\000\000\000\000\000\002\252\000\000\000\000\000\000\002\251\002\250\002\249\002\248\002\247\002\243\000\000\004\r\002\244\000\000\004\014\002\246\000\000\004\016\000\000\000{\002\196\000\000\000\000\002\199\000\000\000\000\002\202\000\000\000\000\002\197\002\200\000\000\002\198\002\201\002\254\002\242\004\015\000\000\000\000\000l\000\000\000k\000\000\002\253\000\000\002\012\000j\000B\001O\000r\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000C\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000D\000\000\000\000\000\000\000\000\000|\000\000\004!\000\000\001\209\000\000\000\000\000\000\001\002\003k\001\169\000\000\001\168\001\132\001\131\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\155\001.\000\000\000\000\002B\000\000\000\000\000\154\002F\002C\001<\001\031\000\000\001!\001 \000\000\003w\000\000\003v\003g\000\000\000\000\000\000\000\000\000\000\003q\000\000\003x\000\000\000\000\000\000\000\000\003r\003i\000\000\003l\000\000\001\006\001\134\000\000\003{\000\000\001\136\000\000\000\000\003\149\000\000\003\156\001\b\000\000\001\014\000\000\003\150\001\007\000\000\003\151\000\000\003\158\000\000\000\000\000\000\000\000\001\027\000\000\001\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\025\000\000\000\000\001\028\000\000\000\000\000\000\000\000\001w\000\000\000\000\000\000\001\015\000\000\001\012\000\000\000\000\000\000\000\000\000\000\001\022\000\000\001\018\001\004\001\003\000\000\003\159\003\160\000\000\003\161\000\000\003\162\000\000\001\135\003o\000\000\000\000\002$\000\000\001\205\002\017\000\000\003h\000\000\000\000\000\000\003n\000\000\000\000\000\000\001l\000\000\001f\000\000\001g\000\000\001q\001e\001p\000\000\003z\001r\000\000\001\t\000\000\000\000\000\000\000\000\001n\001i\002 \000\000\001j\000\000\001k\000\000\001\197\002\r\000\000\000\000\000\000\002+\000\000\002)\000\000\000\000\002-\002'\000\000\002.\002(\000\000\003|\0022\000\000\001\005\000\000\000\000\002!\000\000\001\199\002\014\000\000\004\"\000\000\004\031\000\000\004 \000\019\000\020\000\000\000\000\0031\000\000\0030\000\000\002r\000\000\0033\000\000\0032\000\000\000\000\000\000\002z\000\000\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\129\000\000\000\000\002\132\000\000\002t\000\000\000\000\002w\000\000\000\000\000\000\002{\000\000\000\000\002\127\000\000\000\000\002#\000\000\000\000\002x\000\000\000\000\002|\003.\002u\000\000\003/\000\000\000\000\000\000\000\000\002\130\000\000\002q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\128\000\000\000\000\002\131\000\000\002s\000\000\000\000\002v\000\000\000\000\000\000\002y\000\000\000\000\002}\000\000\001\203\002\016\000\000\0034\000\000\000\000\000\000\004#\000\017\000~\000\000\004$\000\000\000\000\003J\000\000\000\000\003}\000s\000\000\000\000\000\000\000t\000\000\003s\000\000\001\175\000\000\001\177\003p\000\000\000\000\001\155\000\000\001\154\000\000\001\164\000\000\001\189\000\000\000\000\000\000\001\153\000\000\001\152\000\000\001\161\000\000\001\187\000\000\000\000\000\000\001\160\000\000\000\000\000\000\001\157\000\000\001\156\000\000\001\162\000\000\001\191\000\000\000\000\000\000\001\158\000\000\000\000\000\000\001\151\000\000\001\150\000\000\001\165\000\000\001\185\000\000\000\000\000\000\001\159\000\002\000\000\000`\000a\000\000\000\000\003\014\003\018\003\022\003\n\003\007\000\000\000\000\003\019\003\026\003\011\003\025\003\t\003\024\003\r\003\005\003\012\003\021\003\b\003\015\003\006\003\017\003\023\003\020\003\016\001\230\001\229\000\137\000\000\000\000\003`\000\000\000\000\003C\000\000\000\000\003F\003D\003E\003$\000\000\000\000\003f\003\028\003\027\003\029\000\000\001\245\000_\001\166\000\003\000\000\000\000\003\001\000\000\002\136\000\000\000\138\000\000\000\000\003b\000\000\000\000\000\000\000\130\000\000\000\000\003R\000\000\002l\002k\001\221\003%\000\000\002\004\000\000\003\002\000\000\000\000\000\132\000\000\000\000\003V\000\000\001\242\000\000\000\000\001\236\000\000\000\000\000\000\001\241\000\000\001\238\000\000\000\000\000\000\001\211\001\210\000\000\000\000\000\000\002\005\000\000\001\234\000\000\001\233\000\000\000\127\000\000\000\000\003L\000\000\000\000\001\228\000\000\000\000\001\232\000\000\000\000\000\135\000\000\000\000\003\\\000\000\000\000\003,\000\000\003+\000\000\000\000\000\000\002j\002i\003)\002\144\003 \003*\000\000\001\248\000\000\000\000\000\000\001\244\000\000\001\250\000\000\000\000\001\237\000\000\000\000\000\000\003\"\000\136\000\000\000\000\003^\000\000\003!\000\000\001\246\000\000\000\000\001\247\000\000\000\000\001\240\000\000\000\000\001T\000\000\001S\000\000\000\000\000\000\000\000\000\000\002\006\000\000\001\235\000\000\001R\000\000\0028\000\133\000\000\000\000\003X\000\000\000\000\000\000\000\000\003\145\003\144\000\000\000\000\001|\000\129\001{\000\000\000\000\003P\000\000\002d\002c\002f\003\030\002\140\002e\001Q\000\000\000\134\000\000\000\000\003Z\000\000\000\000\000\000\000\000\002h\002g\003(\003&\002\142\003\031\003'\000\000\001\255\000\000\002\002\000\000\000\000\001\251\000\000\000\000\000\000\001\243\000\000\001\249\000\000\000\000\001\239\000\000\000\000\000\000\000\000\000\000\000\000\001\227\000\000\000\000\002\001\000\000\002\000\000\000\000\000\000\000\000\000\001\254\000\000\000\000\001\253\000\000\001\252\000\000\000\000\002\003\000\000\000\000\001\167\000\004\000\000\001\231\000\005\000\000\000\000\001W\000\006\000\000\002\021\002\022\002\020\000\000\002\019\003\146\001\217\000\000\000\007\000\000\002\024\002\025\002\023\000\000\000\000\000\000\000\000\001\\\000\000\000\000\000\000\000\000\001a\001c\001b\001]\001_\001^\000\000\000\000\000\000\000\000\000\000\003\152\003\165\000\000\003\153\000\000\003\154\000\000\000\000\003\147\000\000\000\000\000\000\000\000\003\164\000\000\000\000\003\163\002\029\002\028\000\000\000\000\001\219\002\018\002\026\000\000\000\000\001X\000\000\000\000\000\000\002n\000\000\000\000\000\000\000\000\000\000\002W\002m\000\000\000\000\000\000\000\167\000\000\000\000\000\166\002[\002X\001@\001\000\000\000\000\000\000\000\000\000\001v\000\000\003\168\000\000\003\169\000\000\000\000\0025\0023\000\000\0024\000\b\000\000\000\t\000\000\002\159\002\160\002\158\000\000\002\157\000\000\000\n\000\000\002\162\002\163\002\161\000\000\002\165\000\000\000\000\000\000\002\151\000\000\000\000\002\153\000\000\002\147\000\000\002\149\000\000\002\154\000\000\002\155\000\000\002\148\002\146\002\166\001\223\002\156\000\000\002\168\000\000\002\167\000\000\002\169\000\000\003-\000\011\000\000\000\000\000\000\000\000\000\000\000\000\002\170\000\000\000\000\002\173\000\000\002\172\000\000\002\171\001\"\000\000\000\000\000\000\000\000\001#\002\174\000\000\000\000\000\000\0039\000\000\0038\000\000\000\000\000\000\000\000\003:\000\000\000\000\001V\000\000\000\000\000\000\000\000\000\000\003H\000}\000\000\000\000\001+\000\000\001M\001L\000\000\001\147\000\000\0037\001\215\001\213\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\0036\000\000\000\000\000\000\000\000\000\000\000\000\0035\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003B\000\000\000\000\003A\000\000\003>\000\000\000\000\000\000\000\000\000\000\003?\000\000\000\000\000\000\003@\000\r\000\000\003<\000\000\003=")
let error =
- (173, "\000\000\000\001\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\001\128\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\000\000\000\000\000\000\000\000\000\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\008\000\000\000\000\000\000\000\000\000\000\128\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\007\240\000\000\000\000\000\000\000\007\173W\128\004\000\128\000\008\000 \000\000\000\000\000\000\000\000\000\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\138\024\000\000\017\000\001\000\144\017\128@\016\004 \000\000\000L\134 %P\208\020!\170\008\t\012\192\140\006\128\136w\130@\000\142d1\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000]\163\128\000\003\016\000\016\001\129\024\004\001\000B\000\000\000\004\200b\002E\012\000\000\008\128\000\128H\008\192 \008\002\016\000\000\000&C\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\153C\000\000\002 \000 \018\0020\008\002\000\132\000\000\000\t\144\196\004\138\024\000\000\017\000\001\000\144\017\128@\016\004 \000\000\000L\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\t\0200\000\000\"\000\002\001 #\000\128 \008@\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\002E\012\000\000\008\128\000\128H\008\192 \008\002\016\000\000\000&C\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\004\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$P\192\000\000\136\000\008\004\128\140\002\000\128!\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\t\0200\000\000\"\000\002\001 #\000\128 \008@\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\187G\000\000\006 \000 \003\0020\008\002\000\132\000\000\000\t\144\196\004\138\024\000\000\017\000\001\000\144\017\128@\016\004 \000\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0012\134\000\000\004@\000@$\004`\016\004\001\008\000\000\000\019!\136\t\0200\000\000\"\000\002\001 #\000\128 \008@\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\018(`\000\000D\000\004\002@F\001\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\138\024\000\000\017\000\001\000\144\017\128@\016\004 \000\000\000L\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\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000H\161\128\000\001\016\000\016\t\001\024\004\001\000B\000\000\000\004\200b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018(`\000\000D\000\004\002@F\001\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\138\024\000\000\017\000\001\000\144\017\128@\016\004 \000\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0012\134\000\000\004@\000@$\004`\016\004\001\008\000\000\000\019!\136\t\0200\000\000\"\000\002\001 #\000\128 \008@\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\018(`\000\000D\000\004\002@F\001\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\138\024\000\000\017\000\001\000\144\017\128@\016\004 \000\000\000L\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\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\018(`\000\000D\000\004\002@F\001\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\138\024\000\000\017\000\001\000\144\017\128@\016\004 \000\000\000L\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\t\0200\000\000\"\000\002\001 #\000\128 \008@\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\002E\012\000\000\008\128\000\128H\008\192 \008\002\016\000\000\000&C\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\004\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$P\192\000\000\136\000\008\004\128\140\002\000\128!\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\003\214\171\192\002\000@\000\004\000\016\000\000\000\000\000\000\000\000\000\000\000\000H\161\128\000\001\016\000\017\t\001\024\004\001\000B\000\000\000\004\200b\245\170\240\000\128\016\000\001\004\004\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=j\188\001 \004\000\000A\001\000\000\000\000\000\128\000\000\000\000\016\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\015Z\175\000\008\001\000\000\016@@\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000@\000\000\001\000\000\000\000\000\000\003\214\171\192\002\000@\000\004\016\016\000\000\000\000\008\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\018(`\000\000D\000\004\002@F\001\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235U\224\001\000 \000\002\008\008\000\000\000\000\004\000\000\128\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\001\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000@\000\000\000\000\000\000\000\004\000\000\136\000\000\000\000\000\005 \000H4\n\003;@\000B@ \008\000\130\017\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\n@\000\144h\020\006v\128\000\132\128@\016\001\004\002\008\000\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\144\000$\026\005\001\157\160\000! \016\000\000A\000\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\164\000\t\006\129@gh\000\008H\004\000\000\016@ \128\000\000\000\005 \000H4\n\003;@\000B@ \008\000\130\001\004\000\000\000\000)\000\002A\160P\025\218\000\002\018\001\000@\004\016\008'\173W\128\005H\128\018\013\002\160\206\208\000\016\144\008\002\000 \128A=j\188\000*D\000\144h\021\006v\128\000\132\128@\016\001\004\002\008\000\000\000\000R\000\004\131@\1603\180\000\004$\002\000\000\008 \016OZ\175\000\n\145\000$\026\005A\157\160\000! \016\004\000A\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002A\160P\025\218\000\002\018\001\000@\004\016\008 \000\000\000\001H\000\018\013\002\128\206\208\000\016\144\008\002\000 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\144\000$\026\005\001\157\160\000! \016\004\000A\000\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\164\000\t\006\129@gh\000\008H\004\001\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\002A\160P\025\218\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\000\008\152&\203%\128\000\n\000\129\000\0007@Bxw\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\030\181^\000\021\"\000H4\n\131?@\000B@ \008\000\130A\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\018\000\004\004\016`\018\192\000\005\000\000\000\000\027 \0014;\128\000\000\000\n@\000\144h\020\006v\128\000\132\128@\016\001\004\002\008\000\000\004\128\001\017\004\216D\176\000\001@\016\000\000\006\200\000O\014\224\000\000\000\002\144\000$\026\005\001\157\160\000! \016\004\000A\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\017\004\216D\176\000\001@\016\000\000\004\200\000O\006\224\000\000\000\002\144\000$\026\005\001\157\160\000! \016\004\000A\000\130\000\000\001 \000DA6\017,\000\000P\004\000\000\0012\000\019\193\184\000\000\000\000\164\000\t\006\129@gh\000\008H\004\001\000\016@ \128\000\000H\000\017\016M\132K\000\000\020\001\000\000\000L\128\004\240n\000\000\000\000)\000\002A\160P\025\218\000\002\018\001\000@\004\016\008 \000\000\018\000\004D\019a\018\192\000\005\000@\000\000\019 \001<\027\128\000\000\000\n@\000\144h\020\006v\128\000\132\128@\016\001\004\002\008\000\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\144\000$\026\005\001\157\160\000! \016\004\000A\000\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\164\000\t\006\129@gh\000\008H\004\001\000\016@ \128\000\000H\000\017\016M\132K\000\000\020\001\000\000\000L\128\004\240n\000\000\000\000)\000\002A\160P\025\218\000\002\018\001\000@\004\016\008 \000\000\018\000\004D\019a\018\192\000\005\000@\000\000\019 \001<\027\128\000\000\000\n@\000\144h\020\006v\128\000\132\128@\016\001\004\002\008\000\000\004\128\001\017\004\216D\176\000\001@\016\000\000\004\200\000O\006\224\000\000\000\002\144\000$\026\005\001\157\160\000! \016\004\000A\000\130\000\000\001 \000DA6\017,\000\000P\004\000\000\0012\000\019\193\184\000\000\000\000\164\000\t\006\129@gh\000\008H\004\001\000\016@ \128\000\000H\000\017\016M\132K\000\000\020\001\000\000\000L\128\004\240n\000\000\000\000)\000\002A\160P\025\218\000\002\018\001\000`\004\016\008 \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\n@\000\144h\020\006v\128\000\132\128@\016\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002A\160P\025\218\000\002\018\001\000@\004\016\008 \000\000\018\000\004D\019a\018\192\000\005\000@\000\000\019 \001<\027\128\000\000\000\n@\000\144h\020\006v\128\000\132\128@\016\001\004\002\008\000\000\004\128\001\017\004\216D\176\000\001@\016\000\000\004\200\000O\006\224\000\000\000\002\144\000$\026\005\001\157\160\000! \016\004\000A\000\130\000\000\001 \000DA6\017,\000\000P\004\000\000\0012\000\019\193\184\000\000\000\000\164\000\t\006\129@gh\000\008H\004\001\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\001H\000\018\013\002\128\206\208\000\016\144\008\002\000 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\173V\128\004\000\128\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\145C\000\000\002 \000 \018\0020\008\002\000\132\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\n\129\000\000\001\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\004@\000@$\004`\016\004\001\008\000\000\000\019!\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000L\161\128\000\001\016\000\016\t\001\024\004\001\000B\000\000\000\004\200b\002E\012\000\000\008\128\000\128H\008\192 \008\002\016\000\000\000&C\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\004\138\024\000\000\017\000\001\000\144\017\128@\016\004 \000\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\004@\000@$\004`\016\004\001\008\000\000\000\019!\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\000\000\000\000\000\000\000\018(`\000\000D\000\004\002@F\001\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\138\024\000\000\017\000\001\000\144\017\128@\016\004 \000\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000T\008\000\000\008\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\t\0200\000\000\"\000\002\001 #\000\128 \008@\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\002e\012\000\000\008\128\000\128H\008\192 \008\002\016\000\000\000&C\016\018(`\000\000D\000\004\002@F\001\000@\016\128\000\000\0012\024\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$P\192\000\000\136\000\008\004\128\140\002\000\128!\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\t\0200\000\000\"\000\002\001 #\000\128 \008@\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\016\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\145C\000\000\002 \000 \018\0020\008\002\000\132\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$P\192\000\000\136\000\008\004\128\140\002\000\128!\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\t\0200\000\000\"\000\002\001 #\000\128 \008@\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\002e\012\000\000\008\128\000\128H\008\192 \008\002\016\000\000\000&C\016\018(`\000\000D\000\004\002@F\001\000@\016\128\000\000\0012\024\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$P\192\000\000\136\000\008\004\128\140\002\000\128!\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\t\0200\000\000\"\000\002\001 #\000\128 \008@\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\128\000\000\002\000\000\000\000\000\000\000\018(`\000\000D\000\004\002@F\001\000@\016\128\000\000\0012\024\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\138\024\000\000\017\000\001\000\144\017\128@\016\004 \000\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\004@\000@$\004`\016\004\001\008\000\000\000\019!\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\161\128\000\001\016\000\016\t\001\024\004\001\000B\000\000\000\004\200b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\000\000\000\000\000\000\004\138\024\000\000\017\000\001\000\144\017\128@\016\004 \000\000\000L\134 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\004@\000D$\004`\016\004\001\008\000\000\000\019!\139\214\171\192\002\000@\000\004\016\016\000\000\000\000\008\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\008\000\002E\012\000\000\008\128\000\128H\008\192 \008\002\016\000\000\000&C\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000 \004\000\000A\001\000\000\000\000\000\128\000\000\000\000\016\001\235U\224\001\000 \000\002\008\008\000\000\000\000\004\000\000\128\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\001\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\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\002\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000 \004\000\000@\001\024\000\000\000\000\000\000\016\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\017\000\003\214\171\192\002\000@\000\004\000\017\128\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\001\000\000\001\000\000\000\004\000\000\000\000D\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\001\000\000\000\000\001\000\000\000\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\030\181^\000\016\002\000\000 \000\140\000\000\000\000\000\000\008\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\"\000\007\173W\128\004\000\128\000\008\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\008\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\245\170\240\000\128\016\000\001\000\004`\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\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\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\007Z\173\000\008\001\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\001\000\000\000\000\000\000\003\214\171\192\002\000@\000\004\016\016\000\000\000\000\008\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\008\000\002E\012\000\000\008\128\000\128H\008\192 \008\002\016\000\000\000&C\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\145C\000\000\002 \000\"\018\0020\008\002\000\132\000\000\000\t\144\197\235U\224\001\000 \000\002\008\008\000\000\000\000\004\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\004\000\001\"\134\000\000\004@\000@$\004`\016\004\001\008\000\000\000\019!\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\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\000\000\000\000\000\000\000\000\017\000\003\214\171\192\002\164@\t\006\129Pg\232\000\008H\004\001\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\002A\160P\025\218\000\002\018\001\000@\004\016\008 \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\008\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\002A\160P\025\218\000\002\018\001\000\000\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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 \000H4\n\003;@\000B@ \000\000\130\001\004\000\000\000\000)\000\002A\160P\025\218\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\144h\020\006v\128\000\132\128@\000\001\004\002\008\000\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\144\000$\026\005\001\157\160\000! \016\000\000A\000\130\000\000\000\000\020\128\001 \208(\012\237\000\001\t\000\128\000\002\008\004\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\002@\000\137\002,\146P\000\000\128\008\016\000\003T\004\001\004p\000\000\000\000\000\000\000\000\000\000\004\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\001\235U\224\001R \004\131@\1683\244\000\004$\002\000\128\008$\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\164\000\t\006\129@gh\000\008H\004\001\000\016@ \128\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\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\008\128\"\192%\000\000\008\000\128\000\0004@\000\016G\000\000\000\000\020\128\001 \208(\012\237\000\001\t\000\128 \002\008\004\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\005 \000H4\n\003;@\000B@ \008\000\130\001\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\002\000\000\000\000\000\000\000\000\000\004\000\000\016\000\000\000\000\002\020\128\001 \208(\012\237\000\001\t\000\128\000\002\008\004\016\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \000H4\n\003;@\000B@ \008\000\130\001\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\000R\000\004\131@\1603\180\000\004$\002\000\000\008 \016@\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\144\000\"\000\139\000\148\000\000 \002\000\000\000\145\000\000@\028\000\000\000\000R\000\004\131@\1603\180\000\004$\002\000\000\008 \016@\000\000$\000\008\128\"\192%\000\000\008\000\128\000\000$@\000\016\007\000\000\000\000\020\128\001 \208(\012\237\000\001\t\000\128\000\002\008\004\016\000\000\t\000\002 \008\176\t@\000\002\000 \000\000\t\016\000\004\001\192\000\000\000\005 \000H4\n\003;@\000B@ \000\000\130\001\004\000\000\002@\000\136\002,\002P\000\000\128\008\000\000\002D\000\001\000p\000\000\000\001H\000\018\013\002\128\206\208\000\016\144\008\000\000 \128A\000\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\004\131@\1603\180\000\004$\002\000\000\008 \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\020\128\001 \208(\012\237\000\001\t\000\128\000\002\008\004\016\000\000\t\000\002 \008\176\t@\000\002\000 \000\000\t\016\000\004\001\192\000\000\000\005 \000H4\n\003;@\000B@ \000\000\130\001\004\000\000\002@\000\136\002,\002P\000\000\128\008\000\000\002D\000\001\000p\000\000\000\001H\000\018\013\002\128\206\208\000\016\144\008\000\000 \128A\000\000\000\144\000\"\000\139\000\148\000\000 \002\000\000\000\145\000\000@\028\000\000\000\000R\000\004\131@\1603\180\000\004$\002\000\000\008 \016@\000\000$\000\008\128\"\192%\000\000\008\000\128\000\000$@\000\016\007\000\000\000\000\020\128\001 \208(\012\237\000\001\t\000\128\000\002\008\004\016\000\000\t\000\002 \008\176\t@\000\002\000 \000\000\t\016\000\004\001\192\000\000\000\005 \000H4\n\003;@\000B@ \012\000\130\001\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\001H\000\018\013\002\128\206\208\000\016\144\008\000\000 \128A\000\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\004\131@\1603\180\000\004$\002\000\000\008 \016@\000\000$\000\008\128\"\192%\000\000\008\000\128\000\000$@\000\016\007\000\000\000\000\020\128\001 \208(\012\237\000\001\t\000\128\000\002\008\004\016\000\000\t\000\002 \008\176\t@\000\002\000 \000\000\t\016\000\004\001\192\000\000\000\005 \000H4\n\003;@\000B@ \000\000\130\001\004\000\000\002@\000\136\002,\002P\000\000\128\008\000\000\002D\000\001\000p\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\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\002\000\000\000\000\000\000\164\000\t\006\129@gh\000\008H\004\001\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\008\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\016\000\000\000\000\000\000\000\000\000\008\000\015Z\175\000\008\001\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\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\016\000\000\000\000\000\n@\000\144h\020\006v\128\000\132\128@\016\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\214\171\192\002\164@\t\006\129Pgh\000\008H\004\001\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\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015Z\175\000\n\145\000$\026\005A\157\160\000! \016\004\000A\000\130\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\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\001\000\000 \000\000\000\000\000\000\000\002\000\000D\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\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\161\128\000\001\016\000\017\t\001\024\004\001\000B\000\000\000\004\200b\245\170\240\000\128\016\000\001\004\004\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\002\000\000\145C\000\000\002 \000 \018\0020\008\002\000\132\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\000\000\000\000\000\000\000\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\008\000\002E\012\000\000\008\128\000\128H\008\192 \008\002\016\000\000\000&C\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\016\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000/Z\175\000\008\001\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\003\214\171\192\002\000@\000\004\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\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\002\000\000\000\000\000\000\000\002\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\015\254\191\130\011\145@ \024\197q\221\225\000g\1680\000\141Q\002\130z\213x\000@\008\000\000\128\002\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\005\008H\130\000C\016\000\001 \002\029\160\144\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\168\016\000\000\016\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\128\008\n\016\145\004\000\134 \000\002@\004;A \000F\000\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\132$A\000!\136\000\000\144\001\014\208H\000\017\128\000\000\001\000\016\020!\"\008\001\012@\000\004\128\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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 (BD\016\002\024\128\000\t\000\016\237\004\128\001\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\128\008\n\016\145\004\000\134 \000\002@\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\008\000\128\161\t\016@\008b\000\000$\000C\180\018\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\002\000 (BD\016\002\024\128\000\t\000\016\237\004\128\001\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\005@\128\000\000\128\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\004\000@P\132\136 \0041\000\000\018\000!\218\t\000\0020\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\016\020!\"\008\001\012@\000\004\128\008v\130@\000\140\000\000\000\008\000\128\161\t\016@\008b\000\000$\000C\180\018\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\016\001\001B\018 \128\016\196\000\000H\000\135h$\000\008\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\004\000@P\132\136 \0041\000\000\018\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\000\000\000\000\000\000\000@\004\005\008H\130\000C\016\000\001 \002\029\160\144\000#\000\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\001B\018 \128\016\196\000\000H\000\135h$\000\008\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\004\000@P\132\136 \0041\000\000\018\000!\218\t\000\0020\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\016\020!\"\008\001\012@\000\004\128\008v\130@\000\140\000\000\000\008\000\128\161\t\016@\008b\000\000$\000C\180\018\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\016\001\001B\018 \128\016\196\000\000H\000\135h$\000\008\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\004\000@P\132\136 \0041\000\000\018\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000 \000\000\000\000\000\000\000\008\000\128\161\t\016@\008b\000\000$\000C\180\018\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\002\000 (BD\016\002\024\128\000\t\000\016\237\004\128\001\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\128\008\n\016\145\004\000\134 \000\002@\004;A \000F\000\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\132$A\000!\136\000\000\144\001\014\208H\000\017\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\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\002\000 (BD\016\002\024\128\000\t\000\016\237\004\128\001\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\128\004\000\128\000\008\000 \000\000\000\000\000\000\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\001\000\016\020!\"\008\001\140@\000\004\128\008v\130@\000\140\000\000z\213x\000@\008\000\000\130\002\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\001\000\000\002\000 (BD\016\002\024\128\000\t\000\016\237\004\128\001\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\001\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\008\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\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\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\016\000\001\000\000\000\004\000\000\000\000\000\000\015Z\175\000\008\001\000\000\016@@\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@\004\005\008H\130\000C\016\000\001 \002\029\160\144\000#\000\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\001B\018 \128\024\196\000\000H\000\135h$\000\008\192\000\007\173W\128\004\000\128\000\008 \000\000\000\000\016\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\016\000\000 \002\002\132$A\000!\136\000\000\144\001\014\208H\000\017\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\001\214\171@\002\000@\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\002\000 (BD\016\002\024\128\000\t\000\016\237\004\128\001\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\005@\128\000\000\128\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\004\000@P\132\136 \0041\000\000\018\000!\218\t\000\0020\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\016\020!\"\008\001\012@\000\004\128\008v\130@\000\140\000\000\000\008\000\128\161\t\016@\008b\000\000$\000C\180\018\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\016\001\001B\018 \128\016\196\000\000H\000\135h$\000\008\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\004\000@P\132\136 \0041\000\000\018\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\000\000\000\000\000\000\000@\004\005\008H\130\000C\016\000\001 \002\029\160\144\000#\000\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\001B\018 \128\016\196\000\000H\000\135h$\000\008\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*\004\000\000\004\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000 \002\002\132$A\000!\136\000\000\144\001\014\208H\000\017\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\024\000\128\161\t\016@\008b\000\000$\000C\180\018\000\004`\000\000\000@\004\005\008H\130\000C\016\000\001 \002\029\160\144\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\008\n\016\145\004\000\134 \000\002@\004;A \000F\000\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\132$A\000!\136\000\000\144\001\014\208H\000\017\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\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\002\000 (BD\016\002\024\128\000\t\000\016\237\004\128\001\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\128\008\n\016\145\004\000\134 \000\002@\004;A \000F\000\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\132$A\000!\136\000\000\144\001\014\208H\000\017\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\024\000\128\161\t\016@\008b\000\000$\000C\180\018\000\004`\000\000\000@\004\005\008H\130\000C\016\000\001 \002\029\160\144\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\008\n\016\145\004\000\134 \000\002@\004;A \000F\000\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\132$A\000!\136\000\000\144\001\014\208H\000\017\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\001\000\000\000\000\000\000\000\000@\004\005\008H\130\000C\016\000\001 \002\029\160\144\000#\000\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\001B\018 \128\016\196\000\000H\000\135h$\000\008\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\004\000@P\132\136 \0041\000\000\018\000!\218\t\000\0020\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\020!\"\008\001\012@\000\004\128\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\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\001B\018 \128\016\196\000\000H\000\135h$\000\008\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\004\000@P\132\136 \0061\000\000\018\000!\218\t\000\0020\000\001\235U\224\001\000 \000\002\008\008\000\000\000\000\004\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\004\000\000\008\000\128\161\t\016@\008b\000\000$\000C\180\018\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\008\000\000\128\000\000\002\000\000\000\000\000\000\007\173W\128\004\000\128\000\008 \000\000\000\000\016\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\016\000\000 \002\002\132$A\000!\136\000\000\144\001\014\208H\000\017\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\008\000\128\161\t\016@\012b\000\000$\000C\180\018\000\004`\000\003\214\171\192\002\000@\000\004\016\016\000\000\000\000\008\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\008\000\000\016\001\001B\018 \128\016\196\000\000H\000\135h$\000\008\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002A\160P\025\218\000\002\018\001\000@\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\008\014A\000\128b\020Gv\132\001\158\160\192\0021D\n\008\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\002\144\000$\026\005\001\157\160\000! \016\004\000A\000\130\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\004\001\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\007\255_\193\005\200\160\018\013B\184\238\240\1283\212\024\002G\168\195A\000\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\004\003\000\1603\180\000\012$\002\000\000\008 \016@\000\000\000\002\144\000 \024\005\001\157\160\000a \016\000\000A\000\130z\213x\000T\136\001 \208*\012\237\000\001\t\000\128 \002\008\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001H\000\016\012\002\128\206\208\0000\144\008\000\000 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001H\000\016\012\002\128\206\208\0000\144\008\000\000 \128A\000\000\000\000\n@\000\144h\020\006v\128\000\132\128@\016\001\004\002\008\000\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\144\000 \024\005\001\157\160\000a \016\000\000A\000\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\164\000\008\006\001@gh\000\024H\004\000\000\016@ \128\000\000\000\005 \000@0\n\003;@\000\194@ \000\000\130\001\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\144\000\"`\155,\150\000\000(\002\004\000\000\213\001\001A\220\000\000\000\000\000\000\000\000\000\000\001\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\000z\213x\000T\136\001 \208*\012\253\000\001\t\000\128 \002\t\004\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000)\000\002A\160P\025\218\000\002\018\001\000@\004\016\008 \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\008\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\"\t\176\137`\000\002\128 \000\000\013\016\000\020\029\192\000\000\000\005 \000H4\n\003;@\000B@ \008\000\130\001\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\001H\000\018\013\002\128\206\208\000\016\144\008\002\000 \128A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\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\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\004\128\001\017\004\216D\176\000\001@\016\000\000\004\136\000\n\006\224\000\000\000\002\144\000 \024\005\001\157\160\000a \016\000\000A\000\130\000\000\001 \000DA6\017,\000\000P\004\000\000\001\"\000\002\129\184\000\000\000\000\164\000\008\006\001@gh\000\024H\004\000\000\016@ \128\000\000H\000\017\016M\132K\000\000\020\001\000\000\000H\128\000\160n\000\000\000\000)\000\002\001\128P\025\218\000\006\018\001\000\000\004\016\008 \000\000\018\000\004D\019a\018\192\000\005\000@\000\000\018 \000(\027\128\000\000\000\n@\000\128`\020\006v\128\001\132\128@\000\001\004\002\008\000\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\144\000 \024\005\001\157\160\000a \016\000\000A\000\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\164\000\008\006\001@gh\000\024H\004\000\000\016@ \128\000\000H\000\017\016M\132K\000\000\020\001\000\000\000H\128\000\160n\000\000\000\000)\000\002\001\128P\025\218\000\006\018\001\000\000\004\016\008 \000\000\018\000\004D\019a\018\192\000\005\000@\000\000\018 \000(\027\128\000\000\000\n@\000\128`\020\006v\128\001\132\128@\000\001\004\002\008\000\000\004\128\001\017\004\216D\176\000\001@\016\000\000\004\136\000\n\006\224\000\000\000\002\144\000 \024\005\001\157\160\000a \016\000\000A\000\130\000\000\001 \000DA6\017,\000\000P\004\000\000\001\"\000\002\129\184\000\000\000\000\164\000\008\006\001@gh\000\024H\004\000\000\016@ \128\000\000H\000\017\016M\132K\000\000\020\001\000\000\000H\128\000\160n\000\000\000\000)\000\002A\160P\025\218\000\002\018\001\000`\004\016\008 \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\n@\000\128`\020\006v\128\001\132\128@\000\001\004\002\008\000\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\144\000 \024\005\001\157\160\000a \016\000\000A\000\130\000\000\001 \000DA6\017,\000\000P\004\000\000\001\"\000\002\129\184\000\000\000\000\164\000\008\006\001@gh\000\024H\004\000\000\016@ \128\000\000H\000\017\016M\132K\000\000\020\001\000\000\000H\128\000\160n\000\000\000\000)\000\002\001\128P\025\218\000\006\018\001\000\000\004\016\008 \000\000\018\000\004D\019a\018\192\000\005\000@\000\000\018 \000(\027\189j\188\000*D\000\144h\021\006v\128\000\132\128@\016\001\004\002\008\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\164\002\t\006\129@gh\000\008H\004\001\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\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?\250\254\015.E\000\128c\021\199w\132\001\158\160\192\0025D\n\008\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\002\144\000$\026\005\001\157\160\000! \016\004\000A\000\130\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\002A\160P\025\218\000\002\018\001\000@\004\016\008 \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\008\000\000\000\004\000\000\000\000\000\000\008\"\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\127\245\252\016\\\138\001\000\196+\142\239\008\003=A\128\004j\136\020\019\255\175\224\130\228P\t\006\161|wx@\025\234\012\001#TP\160\159\253\127\007\151\"\128@1\138\227\187\194\000\207P`\001\026\162\005\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\127\225\229\200\160\016\012b\248\238\241\1283\212\152\000G\168\227Y\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\215\240Ar(\004\003\024\174;\188 \012\245\006\000\017\170 PO\254\191\130\011\145@$\026\133\241\221\225\000g\1680\004\141QB\130\127\245\252\016\\\138\001 \212+\142\239\008\003=A\128$j\1364\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\018\000\004L\019e\146\192\000\005\000@\128\000\027\160!(;\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\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005 \000H4\n\003;@\000B@ \008\000\130\001\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\000\001\001\200 \016\012B\136\238\208\1283\212\024\000F(\129A\000\000\000\008\014A\000\128b\020Gv\132\001\158\160\192\0021D\n\008\000\000\000\000\000\000\000\000\000\000\001\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\005 \016H4\n\003;@\000B@ \008\000\130\001\004\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\001H\004\018\013\002\128\206\208\000\016\144\008\002\000 \128A\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\004\131@\1603\180\000\004$\002\000\128\008$\016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\016\028\130\001\000\196(\142\237\008\003=A\128\004b\136\020\016\000\000\000\128\228\016\008\006!Dwh@\025\234\012\000#\020@\160\128\000\000\000\000\000\000\000\000\000\000\016\000\000\000@\000\008\000\000@\000\000\000\000\000\000\000\000\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\016\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\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\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\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\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\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\164\000\t\006\129@gh\000\008H\004\001\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\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\144\000 `\131$\150\000\000 \000\004\000\000\205\001\t\001\024\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\015Z\175\000\n\145\000$\026\005A\159\160\000! \016\004\000A \130\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\128\228\016\008\006!Dwh@\025\234\012\000#\020@\160\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\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\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\127\245\252\016\\\138\001 \212+\142\239\008\003=A\128$j\136\020\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\255\135\151\"\128@1\139\227\187\198\000\207R`\001\030\163\141f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015Z\175\000\008\001\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\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\016\000\000\000\000\000\000\000\000\000\000 \000\004\000\000\000\000\000\000)\000\002A\168P\027\218\000\002\018\001\000@\004\016\008 \000\000\000\001H\000\016\012\194\128\206\208\0000\144\008\n\128 \130A\000\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\004\003\000\1603\180\000\012$\002\000\000\008 \016@\000\000\000\002\144\000$\026\005\001\157\160\000! \016\004\000A\000\130\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\030\181^\000\021\"\000H4\n\131;@\000B@ \008\000\130\001\004\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\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\n@\000\128`\020\006v\128\001\132\128@\000\001\004\002\008\000\000\000\000R\000\004\131@\1603\180\000\004$\002\000\128\008 \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\020\128\001\000\192(\012\237\000\003\t\000\128\000\002\008\004\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\005 \000@0\n\003;@\000\194@ \000\000\130\001\004\000\000\000\000)\000\002\001\128P\025\218\000\006\018\001\000\000\004\016\008'\173W\128\005H\128\018\013\002\160\206\208\000\016\144\008\002\000 \128A\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\000R\000\004\003\000\1603\180\000\012$\002\000\000\008 \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\008\000\002\004\0082I@\000\002\000\000@\000\008P\016\128\001\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\128\005H\128\018\013\002\160\207\208\000\016\144\008\002\000 \144A\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\002\144\000$\026\005\001\157\160\000! \016\004\000A\000\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\000\000\000\000\000\000\000\000\000\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\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\000R\000\004\131@\1603\180\000\004$\002\000\128\008 \016@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\000\000\008\000\000\000\000\000\020\128\001 \208(\012\237\000\001\t\000\128 \002\008\004\016\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\001H\000\016\012\194\128\206\208\0000\144\008\n\128 \130A\000\000\000\001\n@\000\128f\020\006v\128\001\132\128@T\001\004\018\008\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\002\144\000$\026\133\001\189\160\000! \016\004\000A\000\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\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\004\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\016\000\000\000\000\000\000\000\000\020\128\001\000\204(\012\237\000\003\t\000\128\136\002\008\004\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\004\000\000\000\000\000\000\000\000)\000\002\001\152P\025\218\000\006\018\001\001\016\004\016\008 \000\000\000\000\000\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\000D\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\006\001(\000\000@\000\000\000\001\002\000\016\0000\000\000\000\000\164\000\008\006\001@gh\000\024H\004\000\000\016@ \128\000\000@\000\016\000A\128J\000\000\016\000\000\000\000@\128\004\000\012\000\000\000\000)\000\002\001\128P\025\218\000\006\018\001\000\000\004\016\008 \000\000\016\000\004\000\016`\018\128\000\004\000\000\000\000\016 \001\000\003\000\000\000\000\n@\000\128`\020\006v\128\001\132\128@\000\001\004\002\008\000\000\004\000\001\000\004\024\004\160\000\001\000\000\000\000\004\008\000@\000\192\000\000\000\002\144\000 \024\005\001\157\160\000a \016\000\000A\000\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\164\000\008\006\001@gh\000\024H\004\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\000\000\000\000)\000\002\001\128P\025\218\000\006\018\001\000\000\004\016\008 \000\000\016\000\004\000\016`\018\128\000\004\000\000\000\000\016 \001\000\003\000\000\000\000\n@\000\128`\020\006v\128\001\132\128@\000\001\004\002\008\000\000\004\000\001\000\004\024\004\160\000\001\000\000\000\000\004\008\000@\000\192\000\000\000\002\144\000 \024\005\001\157\160\000a \016\000\000A\000\130\000\000\001\000\000@\001\006\001(\000\000@\000\000\000\001\002\000\016\0000\000\000\000\000\164\000\008\006\001@gh\000\024H\004\000\000\016@ \128\000\000@\000\016\000A\128J\000\000\016\000\000\000\000@\128\004\000\012\000\000\000\000)\000\002\001\128P\025\218\000\006\018\001\000\000\004\016\008 \000\000\016\000\004\000\016`\018\128\000\004\000\000\000\000\016 \001\000\003\000\000\000\000\n@\000\128`\020\006v\128\001\132\128@\000\001\004\002\008\000\000\004\000\001\000\004\024\004\160\000\001\000\000\000\000\004\008\000@\000\192\000\000\000\002\144\000 \024\005\001\157\160\000a \016\000\000A\000\130\000\000\001\000\000@\001\006\001(\000\000@\000\000\000\001\002\000\016\0000\000\000\000\000\164\000\008\006\001@gh\000\024H\004\000\000\016@ \128\000\000@\000\016\000A\128J\000\000\016\000\000\000\000@\128\004\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\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\144\000 \025\133\001\157\160\000a \016\021\000A\004\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\164\000\008\006a@gh\000\024H\004\005@\016A \128\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\002\001\152P\025\218\000\006\018\001\001P\004\016H \000\000\000\001H\000\016\012\194\128\206\208\0000\144\008\008\128 \130A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000R\000\004\0030\1603\180\000\012$\002\002\160\008 \144@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\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\016\000\000\000\000\000\000\000\000\000\000\000\000\004\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\0020\000\000\000\128\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\008\000\000\000 \000\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\002\000\000\000\000\000\000\000\000\000\000\000\000\000\030\181^\000\016\002\000\000 \000\140\000\000\000\000\000\000\008\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\004\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\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\004\131P\1607\180\000\004$\002\000\128\008 \016@\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002@\000\000\000\000\000\000\000\004\000\000\128\000\000\000\000\000\000\000\016\000\018\000\000\000\000\000\000\000\000 \000\004\000\000\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\128\004\000\128\000\008\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\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\000\000\000\000\000\128\000\016\000\000\000\000\000\000\164\000\t\006\161@oh\000\008H\004\001\000\016@ \128\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\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\235U\160\001\000 \000\000\000\008\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\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\016\000\000\000\000\000\000\164\000\t\006\161@oh\000\008H\004\001\000\016@ \128\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\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\001\255\215\240Ar(\004\003\024\174;\188`\012\245\006\000\017\170 P@\000\000\000\000\000\000\004\002\000\000\000\002\000\000\000\000\004\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\175\224\130\228P\008\0061\\wx\192\025\234\012\000#T@\172\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\018\000\004L\019e\146\192\004\005\000@\144\000\027\160 (;\128\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000@\000\008\000\000\000\000\000\000R\000\004\131P\1607\180\000\004$\002\000\128\008 \016@\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\002\001\000\000\000\001\000\000\000\000\002\000\000\000\024\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\015\254\191\130\011\145@$\026\133q\221\227\000g\1680\004\141Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\175\224\130\228P\008\0061\\wx\192\025\234\012\000#T@\172\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\128\000\000\000\000\000\000\000\000\000\000\000\000\007\173W\128\005H\128\018\013\002\160\207\208\000\016\144\008\002\000 \144A\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\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\004`\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\008\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\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\016\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\001\235U\224\001\000 \000\002\000\008\192\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\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\005 \000H5\n\003{@\000B@ \008\000\130\001\004\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\235U\224\001\000 \000\002\000\008\192\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\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\000\000\000\000\000\000)\000\002A\168P\027\218\000\002\018\001\000@\004\016\008 \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\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:\213h\000@\008\000\000\000\002\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000 \000\004\000\000\000\000\000\000)\000\002A\168P\027\218\000\002\018\001\000@\004\016\008 \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\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\031\253\127\004\023\"\128H5\n\227\187\198\000\207P`\t\026\162\005f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\008\000\000\000\008\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\015\254\191\130\011\145@$\026\133q\221\227\000g\1680\004\141Q\002\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\002\000\002\000\000#\000\128\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000 \000\000\000\000\008\014A\000\128b\020Gv\132\001\158\160\192\0021D\n\008\000\000\000\000\000\000\000\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\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\004\000\000\000@\000\000\000\000\000\000\000\000\000 \000?\251\255\008.G\000\152j\023\199w\140\003\158\164\1922=GZ\204\000\000\000@r\008\004\003\016\162;\180 \012\245\006\000\017\138 P@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\\\138\001\000\198/\142\239\008\003=A\128\004z\1424\016\000\000\000\000\000\000\001\000\128\000\000\000\000\000\000\000\001\000\000\000\000\031\253\127\004\023\"\128@1\139\227\187\194\000\207P`\001\030\163\141\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\004\002\001\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\001\255\215\240Ar(\004\131P\190;\188 \012\245\006\000\145\2348\208@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\\\138\001 \212/\142\239\008\003=A\128$z\1424\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\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\016\000\031\253\127\004\023\"\128@1\139\227\187\194\000\207P`\001\026\162\133\004\000\000\000\000\000\000\000@ \008\000\000\000\000\000\000\000@\000\004\000\007\255_\193\005\200\160\016\012b\248\238\240\1283\212\024\000F\168\161A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\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\031\253\127\004\023\"\128H5\011\227\187\194\000\207P`\t\026\162\133\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\008\000\008\000\128\140\000\000\000 \000\000\000\000@\000\000\000\000\000\000\004\0000\016\000\000\000\000\004\000\000\000 \000\000\128\011\255\175\224\130\228P\008\0061\\wx@\025\234\012\000#T@\160\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\008\128` \000\000\000\000\008\000\000\000@\000\001\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\250\254\008.G\000\152j\021\199w\132\003\158\160\192\0185DJ\013\255\215\240Ar(\004\003\024\174;\188 \012\245\006\000\017\170 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\003\255\175\224\130\228p\t\134\161\\wx@9\234\012\001#TD\160\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\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\031\253\127\004\023\"\128H5\011\227\187\194\000\207P`\t\026\162\133\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\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\002\001\000\128\000\000\000\128\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\255\235\248 \185\020\002A\168W\029\2220\006z\131\000H\213\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\015~\191\128\n\145@ \024\005A\157\224\000a \016\000\001Q\002\130\000\000\000\000\020\128A \208(\012\237\000\001\t\000\128 \002\008\004\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\000\000\000\000\000\000\000\000\007\191_\192\005H\160\016\012\002\160\206\240\0000\144\008\000\000\168\129A\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\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\214\171\192\002\000@\000\004\000\016\000\000\000\000\008\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\128\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\n@\000\144j\020\006\246\128\000\132\128@\016\001\004\002\008\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\004`\000\000\001\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\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\002\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000 \004\000\000@\001\024\000\000\000\000\000\000\016\000\000\128\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\008\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\164\000\t\006\161@oh\000\008H\004\001\000\016@ \128\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\004\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\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\004\131P\1607\180\000\004$\002\000\128\008 \016@\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\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\214\171@\002\000@\000\000\000\016\000\000\000\000\008\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\128\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\n@\000\144j\020\006\246\128\000\132\128@\016\001\004\002\008\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\004\000\000\000\000\000\000\000\000\000\002\000\003\223\175\224\002\164P\008\006\001Pgx\000\024H\004\000\000T@\160\128\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\129\130\012\146X\000\128\128\000\018\000\003\020\004\004\004`\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\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\004\131P\1607\180\000\004$\002\000\128\008 \016@\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\235U\224\001R \004\131@\1683\244\000\004$\002\000\128\008$\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\016\000\016\000\001\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\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\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\004\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000@\008\000\000\128\0020\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\008\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\001H\000\018\013B\128\222\208\000\016\144\008\002\000 \128A\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\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\164\000\t\006\161@oh\000\008H\004\001\000\016@ \128\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\003\173V\128\004\000\128\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\128\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\000\000\000\000\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\128\001 \212(\013\237\000\001\t\000\128 \002\008\004\016\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\008\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\008\000\000\000\000\000\000\000\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\002\000\000\000\000\000\000\000\002\000\002\000 #\000\000\000\008\000\000\000\000\016\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\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\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\255\235\248 \185\020\002\001\140W\029\222\016\006z\131\000\008\213\016( \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\002\144\000$\026\005\001\157\160\000! \016\004\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\003\255\175\224\130\228P\t\006\161\\wx@\025\234\012\001#\212a\160\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\008\002\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\004\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\011\255\175\224\130\228P\008\0061\\wx@\025\234\012\000#T@\160\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\248 \185\020\002\001\140W\029\222\016\006z\131\000\008\213\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\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\128\000\000\000\000\000\000\000\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\164\000\t\006\129@gh\000\008H\004\000\000\016@ \128\000\000\000\000\001\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\002\000\000\000\000)\000\002A\160P\025\218\000\002\018\001\000\000\004\016\008 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n@\000\144h\020\006v\128\000\132\128@\000\001\004\002\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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 9\004\002\001\136Q\029\218\016\006z\131\000\008\197\016( \000\000\000\000\000@\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\128\000\000\008\014A\000\128b\020Gv\132\001\158\160\192\0021D\n\008\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\003\144@ \024\133\017\221\161\000g\1680\000\140Q\002\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\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\008\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\n@\000\144h\020\006v\128\000\132\128@\000\001\004\002\008\000\000\000\000\000\016\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\175\224\002\000@\000\004\000\016\000\016\000\000\008\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\008\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\023\255_\192\004\000\128\000\008\000 \000 \000\000\016\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\215\240\001\000 \000\002\000\008\000\008\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\008\000\000\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\001\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\001H\000\018\013\002\128\206\208\000\016\144\008\000\000 \128A\000\000\000\000\000\002\000\000\000\000\000\000\000\002\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\003\214\171\194\007\008H\146\004 \016\000\001 \002\020\160\144\000#\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@P\132\136 \000 \000\000\018\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000@\004\005\008H\130\000\002\000\000\001 \002\029\160\144\000#\000\000\000\000\000\000\000\000\000\000\000\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\000\000@\128\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\001\000\000\000\000\000\000\002 \000\000\000\000\000\000@\128\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\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=j\188\000p\132\136 B\001\000\000\018\000!H\t\000\0020\000\001\235U\224\003\132 \001\002\016\008\000\000\144\001\n@H\000\017\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\008\000\128\161\t\024@\000@\000\000$\000C\180\018\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\002\000 (BD\016\000\016\000\000\t\000\016\237\004\128\001\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\008\000\000\000\000\000\000\001\000\000\000\004\000@P\132\136 \000 \000\000\018\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\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\002\000\000\000\000\000\000\000\008\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\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=j\188\000p\132\128 B\001\000\000\018\000!H\t\000\002\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015Z\175\000\028!\000\008\016\128@\000\004\128\008R\002@\000\132\000\000\000\008\000\128\161\t\016@\000@\000\000$\000C\180\018\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\004\000\000\000\016\001\001B\018 \128\000\128\000\000H\000\135h$\000\008\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\001\000\016\020!\"\008\000\008\000\000\004\128\008v\130@\000\140\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\002\000 (BD\016\000\016\000\000\t\000\016\237\004\128\001\024\000\000\000\016\001\001B\018 \128\000\128\000\001H\000\135h$\000\008\224\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\008\000\128\161\t\016@\000@\000\000$\000C\180\018\000\004`\000\000\000@\004\005\008H\130\000B\000\000\005 \002\029\160\144\000#\128\000\000\002\000 (BD\016\000\016\000\000\t\000\016\237\004\128\001\024\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\128\008\n\016\145\004\000\004\000\000\002@\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\245\170\240\000\128\016\000\001\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\008\016\001\235U\224\001\000 \000\002\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\005\008H\130\000C\000\000\001 \002\029\160\144\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\008\n\016\145\004\000\004\000\000\002@\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\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\001\000\016\020!\"\008\000\008\000\000\004\128\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\004\000\000\000\000\000\000\000\128\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\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\001\012\000\000\008\016@\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\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\020!\"\008\000\008\000\000\004\128\008v\130@\000\140\000\000\000\008\000\128\161\t\016@\001@\000\000\164\000C\180\018\000\004p\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\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@P\132\136 \000 \000\000\018\000!\218\t\000\0020\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\008\000\128\161\t\016@\000@\000\000$\000C\180\018\000\004`\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\016\001\001B\018 \128\000\128\000\000H\000\135h$\000\008\192\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\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\132$A\000\001\128\000\000\144\001\014\208H\000\017\128\000\000\001\000\016\020!\"\008\001(\000\000\020\128\008v\130@\000\142\000\000\000\008\000\128\161\t\016@\000@\000\000$\000C\180\018\000\004`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\000\000\002\000 (BD\016\000\016\000\000\t\000\016\237\004\128\001\024\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\001\000\016\020!\"\008\000\012\000\000\004\128\008v\130@\000\140\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\001\001B\018 \128\000\128\000\000H\000\135h$\000\008\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\128\000\000@\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001B\018 \128\000\128\000\000H\000\135h$\000\008\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\008\000\000\000 \002\002\132$A\000\001\000\000\000\144\001\014\208H\000\017\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\001\000\000\000\128\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\128\008\n\016\145\004\000\004\000\000\002@\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\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\020!\"\008\000\008\000\000\004\128\008v\130@\000\140\000\000\000\008\000\128\161\t\016@\001@\000\000\164\000C\180\018\000\004p\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\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=n\188@p\132\136 B!\000\000\018\000!\218\t\000\0020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\008\000\128\161\t\016@\001`\000\000\164\000C\180\018\000\004p\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 (BD\016\000\016\000\000\t\000\016\237\004\128\001\024\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\016\000\000\000\000\000\000z\221x\128\225\t\016@\132b\000\000$\000C\180\018\000\004`\000\000\000@\004\005\008H\130\000\002\000\000\001 \002\029\160\144\000#\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\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\008\n\016\145\004\000\004\000\000\002@\004;A \000F\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\004\005\008H\130\000B\000\000\001 \002\029\160\144\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\016\001\001B\018 \128\000\128\000\000H\000\135h$\000\008\192\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\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\007\173W\132\014\016\145$\008@ \000\002@\004)A \000F\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\002\144\000$\026\007\001\157\160\000! \016\004\000A\000\130\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\003\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\002\144\000$\026\005\001\157\160\000! \016\004\000A\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\239\252 \185\020\002A\232w\029\222\016\006z\147\000H\213\016+0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\003\255\191\240\130\228P\t\007\161\\wx@\025\234L\001#T@\172\222\253\255\128\016\002\000\000 \000\128\000\000\000\000\002\000\000\000\000\000\000\247\239\252\000\128\016\000\001\000\004\000\000\000\000\000\016\000\000\000\000\000\007\191\127\224\004\000\128\000\008\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\004\138\024\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000$P\192\000\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\001\"\134\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\t\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\245\252\030\\\138\001\000\198+\142\239\008\003=A\128\004j\136\020\019\255\175\224\130\228P\008\0061\\wx@\025\234\012\000#T@\160\128\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\248 \185\020\002\001\140W\029\222\016\006z\131\000\008\213\016+0\000\000\000\000\000\000\002\001\000\000\000\000\000\000\000\000\002\000\000\000\024\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\008\004\002\000\000\000\000\000\000\000\000\004\000\000\0001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\175\224\130\228P\t\006\161\\wx@\025\234\012\001#T@\172\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\002\001\152P\025\218\000\006\018\001\001P\004\016\008 \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\001\255\215\240yr(\004\003\024\174;\188 \012\245\006\000\017\170 PO\254\191\130\011\145@ \024\197q\221\225\000g\1680\000\141Q\002\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\003\255\175\224\130\228P\008\0061\\wx@\025\234\012\000#T@\172\192\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\248<\185\020\002\001\140W\029\222\016\006z\131\000\008\213\016('\255_\193\005\200\160\016\012b\184\238\240\1283\212\024\000F\168\129A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000{\247\254\000@\008\000\000\128\002\000\000\000\000\001\008\000\000\000\000\000\000\t\0200\000\000\000\000\002\000\000#\000\000\000\008@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\017\128\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000z\213x\000@\008\000\000\128\0020\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\004@\000\245\170\240\000\128\016\000\001\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\008\000\000\008\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\002\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\128\001\235U\224\001\000 \000\002\000\008\192\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\008\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\255\235\248 \185\020\002A\168W\029\222\016\006z\131\000H\213\016h \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\001\000\128@\000\000\000\000\000\000\000\000\128\000\000\006 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\127\245\252\016\\\138\001 \212+\142\239\008\003=A\128$j\136\021\152\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H\161\128\000\000\016\000\016\000\001\024\000\000\000B\000\000\000\000\000b\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\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\164\000\t\006\129\192gh\000\008H\004\001\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\003\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\002\144\000$\026\005\001\157\160\000! \016\004\000A\000\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\191\240\130\228P\t\007\161\220wx@\025\234L\001#T@\172\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\003\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\015\254\255\194\011\145@$\030\133q\221\225\000g\1690\004\141Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\255\191\240\130\228P\008\0061\\wx@\025\234L\000#T@\172\192\000\000\000\000\000\000\008\004\000\000\000\000\000\000\000\000\008\000\000\000b\255\239\252 \185\020\002\001\140W\029\222\016\006z\147\000\008\213\016+0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\251\255\008.E\000\144j\021\199w\132\001\158\164\192\0185D\n\205\255\223\248Ar(\004\003\024\174;\188 \012\245&\000\017\170 V`\000\000\000\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\001\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\255\132\023\"\128H5\n\227\187\194\000\207R`\t\026\162\005f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\127\225\005\200\160\018\013B\184\238\240\1283\212\152\002F\168\129Y\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\255\223\248Ar(\004\131P\174;\188 \012\245&\000\145\170 V`\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\"\134\000\000\000@\000@\000\004`\000\000\001\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\223\248Ar(\004\131P\174;\188 \012\245&\000\145\170 V`\000\000\000\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\001\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\031\253\255\132\023\"\128H5\n\227\187\194\000\207R`\t\026\162\005f\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018(`\000\000\004\000\004\000\000F\000\000\000\016\128\000\000\000\000\024\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 \002\000\000\000\000\000\000\000\000\016$O\0000\000\000\016\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\008\000\000\000\000\000\000\000\000\000\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\128\000\004\008\000\000\000\000\000\000\000@\000\000\000@\000\000\000\000\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\016\000\000\000\016\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\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\016\000\000\000\000\000\000\000\000\000\000\000\004\000\128\000\000\000\000\001\000\000\008\016\000\000\000\000\000\000\000\128\000\000\000\128\000\000\000\001\000\000\000\004\000\000\000\000\000\000\000\002\024\001\000\001\000\160\000\000\000\000\000@\000\002\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!\128\016\000\000\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\000\000\000\000\000\000\000\000\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\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\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\002\000\000\000\000\000\000\000\000\000\000\000\004p\003\000\000\001\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\004\000\000\000\000\000\000\000\000\000\000\000\008`\006\000\000\002\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000C\000 \000\000\016\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\016\192\008\000\128\004\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\001\012\000\128\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\002\024\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\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\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\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\004\000\000\000\000\000\000\000\000\000\000\000\008\224\006\000\000\002\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000C\0000\000\000\016\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\002\024\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\192\008\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\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\008`\006\000\000\002\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000C\000 \000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\024\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\192\000\000\000\004\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\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\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\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\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")
+ (190, "\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\192\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\0000\000\000\000\000\000\000\000\000\000\000\000 \004\024\000\000\b\016\192\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\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\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\000\000\000\0000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\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\255\000\000\000\000\000\000\000\000\030\189\171\192\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\016\149\r\000(\b5A\001!\148\b\192M\000\136w\129 \000C\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\004kG\000\000\000\012@\000@\005\0020\017\000 \b@\000\000\000&C\016\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\001\nP\192\000\000\001\016\000\016\t\000\140\004@\b\002\016\000\000\000\t\144\196\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\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\bP\192\000\000\001\016\000\016\t\000\140\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\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\b\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\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\001\bP\192\000\000\001\016\000\016\t\000\140\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\001\016\000\016\t\000\140\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\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\001\026\209\192\000\000\003\016\000\016\001@\140\004@\b\002\016\000\000\000\t\144\196\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000B\1480\000\000\000D\000\004\002@#\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\000\016\t\000\140\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\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\000D\000\004\002@#\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\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\002\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\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\000D\000\004\002@#\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\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\000D\000\004\002@#\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\004)C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\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\000D\000\004\002@#\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\004\000\000 \000\000\000\b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\000\000\128@\000\000 \000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\002\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\004\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\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\b\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\004\000\000\000\000\b\000\000\129\000\000\000\000\000\000\000\000\000\000\000\000\000\006#\000\000\128\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\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\b\016\000\000\000\000\000\000\000\000\000\000\002\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\002\004\000\000\000\000\000\000\000\000\000\000\000\128\000\b\004\000\000\002\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\002\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\002\004\000\000\000\000\000\000\000\000\000\000\000\128\000\b\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\016\000\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\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\000D\000\004B@#\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\128\000\b\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\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\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\bP\192\000\000\001\016\000\016\t\000\140\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\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\b\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\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\000z\246\175\000\001\000\002\000\000 \000@\000\000\000\000\000\000\000\000\000\000\000\000\004!C\000\000\000\004@\000D$\0020\017\000 \b@\000\000\000&C\023\175j\240\000\016\000 \000\002\b\004\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\007\175j\240\004\016\000 \000\002\b\004\000 @\000\000 \000\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \000@\002\004\000\000\002\000\000\000\000\000\000\000\000\000\000\000\004\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\030\189\171\192\000@\000\128\000\b \016\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000B\0200\000\000\000D\000\004\002@#\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\001\235\218\188\000\004\000\b\000\000\130\001\000\b\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\002\001\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\016\000\002\000\000\000\000\000\000\000\000\000\128\000\b\128\000\000\000\000\000\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\136 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\000\000I\000\001 \208(\006s0\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\004\144\000\018\r\002\128g3\000\000\132\128@\000\000A\000\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\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \158\189\171\192\000D\144\128\018\r\002\144g3\000\000\132\128@\b\000A\000\130z\246\175\000\001\018B\000H4\nA\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\000\000I\000\001 \208(\006s0\000\bH\004\000\000\004\016\b \000\000\000\000\001$\000\004\131@\160\025\204\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\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\000\000\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\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\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\000\000\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\130\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\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\001$\000\004\131@\160\025\204\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\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\000\000I\000\001 \208(\006s0\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\00010M\150K\000\000\001@\b\016\000\001\186\001\t\241\220\000\000\000\000\000\000\000\000\000\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\030\189\171\192\000D\144\128\018\r\"\144gs\000\000\132\128@\b\000A \130z\246\175\000\001\018B\000H4\nA\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\000\000I\000\001 \208(\006s0\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\t\000\000\012L\019e\146\192\000\000P\002\004\000\000n\128B|w\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\006\200\000'\135p\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000l\128\002xw\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\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\0001\016M\132K\000\000\001@\b\000\000\0012\000\t\224\220\000\000\000\000\000I\000\001 \208(\006s0\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\t\000\000\012D\019a\018\192\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\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\001$\000\004\131@\160\025\204\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\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\0000\001\004\002\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\001$\000\004\131@\160\025\204\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\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000L\128\002|7\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\195p\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001$\000\004\131@\160\025\204\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\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001$\000\004\131@\160\025\204\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\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\196A6\017,\000\000\005\000 \000\000\004\200\000'\131p\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000L\128\002x7\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\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\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\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\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\b\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\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\001\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000I\000\001 \208(\006s0\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\016\000\000\000\000\000\000\000\000\000\000\016\000\030\189\171\192\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\235\218\180\000\004\000\b\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\018\129\000\000\000\002\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000B\1480\000\000\000D\000\004\002@#\001\016\002\000\132\000\000\000\002d1\001\bP\192\000\000\001\016\000\016\t\000\140\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\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\000D\000\004\002@#\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\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\002\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\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\000D\000\004\002@#\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\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\000D\000\004\002@#\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\000J\004\000\000\000\b\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\001\nP\192\000\000\001\016\000\016\t\000\140\004@\b\002\016\000\000\000\t\144\196\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\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\bP\192\000\000\001\016\000\016\t\000\140\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\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\b\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\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\001\bP\192\000\000\001\016\000\016\t\000\140\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\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\001\bP\192\000\000\001\016\000\016\t\000\140\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\016\165\012\000\000\000\017\000\001\000\144\b\192D\000\128!\000\000\000\000\153\012@B\0200\000\000\000D\000\004\002@#\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\000\000\000\000\000\000\000\000\000\000\000\000\000\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\001\bP\192\000\000\001\016\000\016\t\000\140\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\000\000\000\000\000\000\000\000\000\016\000\000\128\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\002\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\016\000\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\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\000D\000\004B@#\001\016\002\000\132\000\000\000\002d1\000\000\000\000\000\000\000\000\000\000\128\000\b\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\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\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\000D\000\004\002@#\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\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\002\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\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\016\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\000D\000\004B@#\001\016\002\000\132\000\000\000\002d1z\246\175\000\001\000\002\000\000 \128@\002\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\016\133\012\000\000\000\017\000\001\000\144\b\192D\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\000z\246\175\000\001\000\002\000\000 \128@\002\004\000\000\002\000\000\000\000\000\016\001\235\218\188\000\004\000\b\000\000\130\001\000\b\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\004\000\000\002\001\000\000\000\128\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 \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\b\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\004\000\000\000\000\000 \000\000\128\001\235\218\188\000\004\000\b\000\000\130\001\024\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\007\175j\240\000\016\000 \000\002\b\004`\000@\000\000\000\000\000\000\000\b\000\030\189\171\192\000@\000\128\000\b \017\128\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\128\001\235\218\188\000\004\000\b\000\000\130\001\024\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\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\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\002\000\000\000\000\128\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\001\235\218\188\000\004\000\b\000\000\130\001\024\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\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\b\000\000\000\000\000\000\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\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\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\007\175j\240\000\016\000 \000\002\b\004`\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\014\189\171@\000@\000\128\000\000\000\016\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\001\000\000\000\000\001\000\000\b\004\000\000\002\000\000\000\000\000\000\001\235\218\188\000\004\000\b\000\000\130\001\000\b\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\001\000\000B\0200\000\000\000D\000\004\002@#\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\004!C\000\000\000\004@\000D$\0020\017\000 \b@\000\000\000&C\023\175j\240\000\016\000 \000\002\b\004\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\004\000\001\bP\192\000\000\001\016\000\016\t\000\140\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\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\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\000z\246\175\000\001\018B\000H4\nA\156\204\000\002\018\001\000 \001\004\002\b\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\018@\000H4\n\001\156\204\000\002\018\001\000\000\001\004\002\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\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\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\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\160\025\204\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\000I\000\001 \208(\006s0\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\004\144\000\018\r\002\128g3\000\000\132\128@\000\000A\000\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\000\000\000\000\000\000\000\000\002@\000\003\002\004Y$\160\000\000\016\000\001\000\000\026\160\016\140\017\128\000\000\000\000\000\000\000\000\000\000\000\002\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\001\235\218\188\000\004I\b\001 \210)\006w0\000\bH\004\000\128\004\018\b'\175j\240\000\017$ \004\131H\164\025\220\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\b\128\001\235\218\188\000\004I\b\001 \210)\006w0\000\bH\004\000\000\004\018\b'\175j\240\000\017$ \004\131H\164\025\220\192\000! \016\002\000\016@ \128\000\000\t\000\000\012\000\017`\018\128\000\000@\000\000\000\000h\128\0020F\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\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\001$\000\004\131@\160\025\204\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\144\000\000\192\001\022\001(\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012\000\017`\018\128\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\0000\001\004\002\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\001$\000\004\131@\160\025\204\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\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\192\001\022\001(\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012\000\017`\018\128\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\192\001\022\001(\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012\000\017`\018\128\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\192\001\022\001(\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012\000\017`\018\128\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\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\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012\000\017`\018\128\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\192\001\022\001(\000\000\004\000\000\000\000\004\136\000#\000`\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012\000\017`\018\128\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\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\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\t\000\000\012\000\017`\018\128\000\000@\000\000\000\000H\128\0020\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\144\000\000\192\001\022\001(\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\136\000\030\189\171\192\000D\144\128\018\r\"\144gs\000\000\132\128@\b\000A \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\000\000\000\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\000D\144\128\018\r\"\144gs\000\000\132\128@\b\000A \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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001$\000\004\131@\160\025\204\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\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\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\004\000\000\000\000\000\000\000\000\000\000 \000\000@\000\000\000\000\001\000I\000\001 \208(\006s0\000\bH\004\000\000\004\016\b \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\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\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\000\000\000\000\000\000\000\000\000\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\144\000\018\r\002\128g3\000\000\132\128@\000\000A\000\130\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\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\128\000\000\000\000\000\000I\000\001 \208(\006s0\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\030\189\171\192\000D\144\128\018\r\002\144g3\000\000\132\128@\b\000A\000\130\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\001\235\218\188\000\004I\b\001 \208)\006s0\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\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\001\235\218\188\000\004I\b\001 \208)\006s0\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\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\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\016\000\002\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\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\bP\192\000\000\001\016\000\017\t\000\140\004@\b\002\016\000\000\000\t\144\197\235\218\188\000\004\000\b\000\000\130\001\000\b\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\001\000\000B\0200\000\000\000D\000\004\002@#\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\000\000\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\016\000\004!C\000\000\000\004@\000@$\0020\017\000 \b@\000\000\000&C\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\001\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\005\235\218\188\000\004\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\030\189\171\192\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\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\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\001\255\250\254\b\020i\n\001\000\198)\199s\240\128\025\234\012\000\017\165\016('\175j\240\000\016\000 \000\002\000\004\000\000@\000\000\000\000\000\000\000\000\000\000\000@\004\000\160 \145\004\000\134\016\000\001$\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\000J\004\000\000\000\b\000\000\000\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000(\b$A\000!\132\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\003\000\016\002\128\130D\016\002\024@\000\004\144\000\135h\018\000\0040\000\000\000\004\000@\n\002\t\016@\ba\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\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\000\016\001\000(\b$A\000!\132\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\b\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\016\001\000(\b$A\000!\132\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\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\000\016\001\000(\b$A\000!\132\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\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\001(\016\000\000\000 \000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\000\160 \145\004\000\134\016\000\001$\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\012\000@\n\002\t\016@\ba\000\000\018@\002\029\160H\000\016\192\000\000\000\016\001\000(\b$A\000!\132\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\004\000@\n\002\t\016@\ba\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@\004\000\160 \145\004\000\134\016\000\001$\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\000\000 \000\000\000\000\000\000\000\000@\004\000\160 \145\004\000\134\016\000\001$\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\004\000@\n\002\t\016@\ba\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@\004\000\160 \145\004\000\134\016\000\001$\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\004\000@\n\002\t\016@\ba\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\192\004\000\160 \145\004\000\134\016\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\000\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\160 \145\004\000\134\016\000\001$\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\004\000@\n\002\t\016@\ba\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\002\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\000\b\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\016\001\000(\b$A\000!\132\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\001\000\016\002\128\130D\016\003\024@\000\004\144\000\135h\018\000\0040\000\000\000\000\000\000\000\000\000\000\000\002\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\001\000\000\000@\004\000\160 \145\004\000\134\016\000\001$\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\016\001\000(\b$A\000!\132\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\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\000\016\001\000(\b$A\000!\132\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\b\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\016\001\000(\b$A\000!\132\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\000z\246\175\000\001\000\002\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\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\001\000\000\000\000\000\000\000\000\000\000\001\000\001\235\218\188\000\004\000\b\000\000\128\001\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\001\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@\004\000\160 \145\004\000\198\016\000\001$\000!\218\004\128\001\012\000\000z\246\175\000\001\000\002\000\000 \128@\002\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\016\001\000(\b$A\000!\132\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\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\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\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\001\000\000\000\000\001\000\000\b\004\000\000\002\000\000\000\000\000\000\001\235\218\188\000\004\000\b\000\000\130\001\000\b\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\001\000\000\000@\004\000\160 \145\004\000\134\016\000\001$\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\004\000@\n\002\t\016@\012a\000\000\018@\002\029\160H\000\016\192\000\007\175j\240\000\016\000 \000\002\b\004\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\004\000\000\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\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@\000@\000\128\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\001(\016\000\000\000 \000\000\000\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\004\000\160 \145\004\000\134\016\000\001$\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\012\000@\n\002\t\016@\ba\000\000\018@\002\029\160H\000\016\192\000\000\000\016\001\000(\b$A\000!\132\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\004\000@\n\002\t\016@\ba\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@\004\000\160 \145\004\000\134\016\000\001$\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\000\000 \000\000\000\000\000\000\000\000@\004\000\160 \145\004\000\134\016\000\001$\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\004\000@\n\002\t\016@\ba\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@\004\000\160 \145\004\000\134\016\000\001$\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\004\000@\n\002\t\016@\ba\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\004\160@\000\000\000\128\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\0000\001\000(\b$A\000!\132\000\000I\000\bv\129 \000C\000\000\000\000@\004\000\160 \145\004\000\134\016\000\001$\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\016\001\000(\b$A\000!\132\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\001\000\016\002\128\130D\016\002\024@\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\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\128\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\000\016\001\000(\b$A\000!\132\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\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\000\016\001\000(\b$A\000!\132\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\003\000\016\002\128\130D\016\002\024@\000\004\144\000\135h\018\000\0040\000\000\000\004\000@\n\002\t\016@\ba\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\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\000\016\001\000(\b$A\000!\132\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\001\000\000\b\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\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\001\000\000\000@\004\000\160 \145\004\000\134\016\000\001$\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\004\000@\n\002\t\016@\012a\000\000\018@\002\029\160H\000\016\192\000\000\000\000\000\000\000\000\000\000\000\b\000\000\128@\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\004\000\000\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\000\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\160 \145\004\000\134\016\000\001$\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\004\000@\n\002\t\016@\ba\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@\004\000\160 \145\004\000\134\016\000\001$\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\000\000 \000\000\000\000\000\000\000\000@\004\000\160 \145\004\000\134\016\000\001$\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\004\000@\n\002\t\016@\012a\000\000\018@\002\029\160H\000\016\192\000\007\175j\240\000\016\000 \000\002\b\004\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\004\000\000\001\000\016\002\128\130D\016\002\024@\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\000\000\000\128\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128@\002\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\016\001\000(\b$A\000!\132\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\001\000\016\002\128\130D\016\003\024@\000\004\144\000\135h\018\000\0040\000\001\235\218\188\000\004\000\b\000\000\130\001\000\b\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\001\000\000\000@\004\000\160 \145\004\000\134\016\000\001$\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\130\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\016i\002\001\000\196(Gs0\128\025\234\012\000\017\133\016( \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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\001 \208(\006s0\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\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\127\254\191\128\001\000\002\000\000 \000@\0000\000\000\002\000\000\000\024\002\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\000z\246\175\000\001\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 \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\004\000\000\000\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\188\204\000\002\018\001\000 \001\004\002\b\000\000\000\000\000I\000\001\000\206(\006s0\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\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\130z\246\175\000\001\018B\000H4\nA\156\204\000\002\018\001\000 \001\004\002\b\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\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\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\030\189\171\192\000D\144\128\018\r\002\144g3\000\000\132\128@\b\000A\000\130\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\b\000\000\000\000\000\000\004\144\000\016\012\002\128g2\000\001\132\128@\000\000A\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\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\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\160\025\204\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\000I\000\001 \208(\006s0\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\004\144\000\016\012\002\128g2\000\001\132\128@\000\000A\000\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\000\000\000\000\000\000\000\000\002\000\000\003\002\004\025$\160\000\000\016\000\001\000\000\016\160\016\129\001\128\000\000\000\000\000\000\000\000\000\000\000\002\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\001\235\218\188\000\004I\b\001 \210)\006w0\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\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\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\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\000I\000\001 \208(\006s0\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\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\000I\000\001\000\206(\006s0\000\024H\004\002\160\004\016H \000\000\000\000\001$\000\004\0038\160\025\204\192\000a \016\n\128\016@ \128\000\000\t\000\000\012L\019e\146\192\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\b\016\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\001$\000\004\131P\160\027\204\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\002\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\144\000\000\192\193\006I,\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\004\000\000\000\000\000\000\000\000\000\018@\000@3\n\001\156\204\000\006\018\001\000\136\001\004\002\b\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\001$\000\004\0030\160\025\204\192\000a \016\b\128\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\002\000\000\000\000\000\000\000\000\000\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\012\000\016`\018\128\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\128\000\000\192\001\006\001(\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\b\000\000\012\000\016`\018\128\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\128\000\000\192\001\006\001(\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\b\000\000\012\000\016`\018\128\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\128\000\000\192\001\006\001(\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\b\000\000\012\000\016`\018\128\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\128\000\000\192\001\006\001(\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\160\025\204\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\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\128\000\000\192\001\006\001(\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\b\000\000\012\000\016`\018\128\000\000@\000\000\000\000@\128\002\004\006\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\128\000\000\192\001\006\001(\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\160\025\204\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\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\000\000\000\128\000\000\192\001\006\001(\000\000\004\000\000\000\000\004\b\000 @`\000\000\000\000\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \128\000\000\b\000\000\012\000\016`\018\128\000\000@\000\000\000\000@\128\002\004\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\000\000\000\000\000 @\000\000\000\000\000\001$\000\004\0038\160\025\204\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\b\016\000\000\000\000\000\000I\000\001\000\206(\006s0\000\024H\004\002 \004\016H \000\000\000\000\001$\000\004\0038\160\025\204\192\000a \016\n\128\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\b\016\000\000\000\000\000\000I\000\001\000\206(\006s0\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\b\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\128\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\0020\016\000\000\b\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\002\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\128\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 \000\002\b\004`\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\016\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\001$\000\004\131P\160\027\204\192\000! \016\002\000\016@ \128\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\000\000\000\004\000\004\128\000\000\000\000\000\000\000\000 \000\002\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\001\235\218\188\000\004\000\b\000\000\130\001\024\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\b\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\002\000\000 \000\000\000\000\000\000\001$\000\004\131P\160\027\204\192\000! \016\002\000\016@ \128\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\014\189\171@\000@\000\128\000\000\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\b\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\002\000\000 \000\000\000\000\000\000\001$\000\004\131P\160\027\204\192\000! \016\002\000\016@ \128\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\000\000\000\000\000\000\000\002\001\000\000\000\128\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\128\000\b\000\000\000\000\000\000\000I\000\001 \212(\006\2430\000\bH\004\000\128\004\016\b \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\001\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\127\254\191\130\005\026B\128H5\nq\220\252 \006z\131\000$yF\026\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\001$\000\004\131@\160\025\204\192\000! \016\002\000\016@ \158\189\171\192\000D\144\128\018\r\002\144g3\000\000\132\128@\b\000A\000\130\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\004\144\004\018\r\002\128g3\000\000\132\128@\b\000A\000\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\000\000\000\000\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\241F\144\160\016\012b\156w?\b\001\158\160\192\001\026Q\002\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\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \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\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \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\001\000\000\000\000@\000\000\000\000\000\000\004\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\007\255\235\248 Q\164(\004\003\016\167\029\207\194\000g\1680\000F\148@\160\159\255\175\224\129F\144\160\018\rB\220w?\b\001\158\160\192\t\026QB\130z\246\175\000\001\018B\000H4\nA\156\204\000\002\018\001\000 \001\004\002\b\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\018@\000@0\n\001\156\200\000\006\018\001\000\000\001\004\002\b\000\000\000\000\000I\000\001\000\192(\006s \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\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\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\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\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\000\000\000\000\000\000\000\000\000\000\001$\000\004\131@\160\025\204\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\018@\000@0\n\001\156\200\000\006\018\001\000\000\001\004\002\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\t\000\000\012L\019e\146\192\000\000P\002\004\000\000j\128@Pw\000\000\000\000\000\000\000\000\000\000\000\000\b\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\007\175j\240\000\017$ \004\131H\164\025\220\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 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\001 \208(\006s0\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\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 \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\000\000\000\t\000\000\012D\019a\018\192\000\000P\002\000\000\000h\128\000Pw\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\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\001$\000\004\131@\160\025\204\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\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\016\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\0001\016M\132K\000\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\004\144\000\018\r\002\128g3\000\000\132\128@\012\000A\000\130\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\000I\000\001 \208(\006s0\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\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\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\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\001@\b\000\000\001\"\000\001@\220\000\000\000\000\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\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\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \000\000\002@\000\003\017\004\216D\176\000\000\020\000\128\000\000\018 \000\020\r\192\000\000\000\000\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\130\000\000\000$\000\0001\016M\132K\000\000\001@\b\000\000\001\"\000\001@\220\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<Q\164(\004\003\024\167\029\207\194\000g\1680\000F\148@\160\128\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\195\197\026B\128@1\139q\220\252`\006z\147\000\004yG\026\204\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 Q\164(\004\003\024\167\029\207\194\000g\1680\000F\148@\160\159\255\175\224\129F\144\160\018\rB\220w?\b\001\158\160\192\t\026QB\130\127\254\191\130\005\026B\128H5\nq\220\252 \006z\131\000$iD\026\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\127\254\255\194\005\026C\128L5\011q\220\252`\014z\147\000tyGZ\204\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000I\000\001 \208(\006s0\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\b\000\000\000\000\000\129\006\144 \016\012B\132w3\b\001\158\160\192\001\024Q\002\130\000\000\000\002\004\026@\128@1\n\017\220\204 \006z\131\000\004aD\n\b\000\000\000\000\000\000\000\000\000\000\000\000 \016\000\000\b\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000A \208(\006s0\000\bH\004\000\128\004\016\b \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\004\144\004\018\r\002\128g3\000\000\132\128@\b\000A\000\130\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\000I\000\001 \208(\006s0\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\b\000\000\000\000\000\129\006\144 \016\012B\132w3\b\001\158\160\192\001\024Q\002\130\000\000\000\002\004\026@\128@1\n\017\220\204 \006z\131\000\004aD\n\b\000\000\000\000\000\000\000\000\000\002\000\000 \016\000\000\b\000\000\128\000\002\000\000\000\000\000\000\000\000\000\000\000\b\000\000\128@\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\002 \000\000\000\000\000\000\000\000\000\000\000\128\000\b\004\000\000\002\000\000\000\000\000\128\000\000\000\000\000\000\000\000\000\000\002\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\b\128\000\000\000\000\000\000\000\000\000\000\002\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\002 \000\000\000\000\000\000\000\000\000\000\000\128\000\b\004\000\000\002\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\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\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018@\000H4\n\001\156\204\000\002\018\001\000 \001\004\002\b\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\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\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000D\144\128\018\r\"\144gs\000\000\132\128@\b\000A \130\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\016i\002\001\000\196(Gs0\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\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\007\255\235\248 Q\164(\004\131P\167\029\207\198\000g\1680\002F\148@\160\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\001\255\251\255\015\020i\n\001\000\198-\199s\241\128\025\234L\000\017\229\028k0\000\000\000\000\000\000\000\000\000\000\000\000\000\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\001\255\250\254\b\020i\n\001\000\198)\199s\241\128\025\234\012\000\017\165\016( \000\000\000\000\000\000\000\000\128@\000\000\000\004\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\127\254\191\130\005\026B\128@1\138q\220\252`\006z\131\000\004iD\n\204\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\012L\019e\146\192\002\001P\002\004\128\000n\128@Pw\000\000\000\000\000\000\000\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\001\000\000\000\000\000\128\000\000\003\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\127\254\191\130\005\026B\128H5\nq\220\252`\006z\131\000$iD\n\204\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 Q\164(\004\003\024\167\029\207\198\000g\1680\000F\148@\172\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\001\235\218\188\000\004I\b\001 \210)\006w0\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\b\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\0020\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\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\b\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\002\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\030\189\171\192\000@\000\128\000\b \017\128\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\128\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\004\144\000\018\rB\128o3\000\000\132\128@\b\000A\000\130\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\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\030\189\171\192\000@\000\128\000\b \017\128\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\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\000\000\000\000\000\000\000\000 \000\002\000\000\000\000\000\000\000\018@\000H5\n\001\188\204\000\002\018\001\000 \001\004\002\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\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\235\218\180\000\004\000\b\000\000\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\128@\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\002\000\000\000\000\000\000\000\018@\000H5\n\001\188\204\000\002\018\001\000 \001\004\002\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\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\031\255\175\224\129F\144\160\018\rB\156w?\024\001\158\160\192\t\026Q\002\179\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\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\127\254\191\130\005\026B\128H5\nq\220\252`\006z\131\000$iD\n\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\000\001\000\000\b\192D\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\004\000\000\000\000\000 A\164\b\004\003\016\161\029\204\194\000g\1680\000F\020@\160\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\001\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\004\000\000\000\000\000\000\000\000\000\000\004\000\007\255\239\252 Q\1648\004\195P\183\029\207\198\000\231\1690\006G\148u\172\192\000\000\000\129\006\144 \016\012B\132w3\b\001\158\160\192\001\024Q\002\130\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\020i\n\001\000\198-\199s\240\128\025\234\012\000\017\229\028h \000\000\000\000\000\000\000\000\128@\000\000\000\000\000\000\000\000\002\000\000\000\000\031\255\175\224\129F\144\160\016\012b\220w?\b\001\158\160\192\001\030Q\198\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@ \016\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\031\255\175\224\129F\144\160\018\rB\220w?\b\001\158\160\192\t\030Q\198\130\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\020i\n\001 \212-\199s\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\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\016\000\000\000\000\000\000\000\000\000\000\016\000\031\255\175\224\129F\144\160\016\012b\220w?\b\001\158\160\192\001\026QB\130\000\000\000\000\000\000\000\000\b\004\001\000\000\000\000\000\000\000\000 \000\001\000\001\255\250\254\b\020i\n\001\000\198-\199s\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@ \016\004\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\031\255\175\224\129F\144\160\018\rB\220w?\b\001\158\160\192\t\026QB\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\004\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\016\000\016\001\000\140\004\000\000\002\000\000\000\000\001\000\000\000\000\000\000\000\000\004\0000\016\000\000\000\000\000 \000\000\000\128\000\001\000\023\255\235\248 Q\164(\004\003\024\167\029\207\194\000g\1680\000F\148@\160\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\001\016\012\004\000\000\000\000\000\b\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\007\255\235\248 Q\1648\004\195P\167\029\207\194\000\231\1680\002F\148D\160\223\255\175\224\129F\144\160\016\012b\156w?\b\001\158\160\192\001\026Q\002\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\000\000\000\000\000\007\255\235\248 Q\1648\004\195P\167\029\207\194\000\231\1680\002F\148D\160\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\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\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\016\000\000\000\000\000\000\000\000\000\000\016\000\031\255\175\224\129F\144\160\018\rB\220w?\b\001\158\160\192\t\026QB\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\004\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\000\000\000\000\000\000\000\000\000\000\000\001\000\128@\000\000\000\004\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\127\254\191\130\005\026B\128H5\nq\220\252`\006z\131\000$iD\n\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{\254\191\128\001\018B\128@0\nA\156\248\000\006\018\001\000\000\tD\n\b\000\000\000\000\000I\000A \208(\006s0\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\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\001\239\250\254\000\004I\n\001\000\192)\006s\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\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\030\189\171\192\000@\000\128\000\b\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\b\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\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\004\144\000\018\rB\128o3\000\000\132\128@\b\000A\000\130\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\001\000\000\b\192@\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\b\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\002\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\030\189\171\192\000@\000\128\000\b \017\128\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\128\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\004\144\000\018\rB\128o3\000\000\132\128@\b\000A\000\130\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\001\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\018@\000H5\n\001\188\204\000\002\018\001\000 \001\004\002\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\014\189\171@\000@\000\128\000\000\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\b\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\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\004\144\000\018\rB\128o3\000\000\132\128@\b\000A\000\130\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\016\000\000\000\000\000\000\000\000\000\000\016\000\030\255\175\224\000D\144\160\016\012\002\144g>\000\001\132\128@\000\002Q\002\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\144\000\000\192\193\006I,\000 \020\000\000H\000\006(\004\004\004`\000\000\000\000\000\000\001\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\018@\000H5\n\001\188\204\000\002\018\001\000 \001\004\002\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\018B\000H4\138A\157\204\000\002\018\001\000 \001\004\130\b\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\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\016\000\000\140\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\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\002\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\128\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 \000\002\b\004`\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\016\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\001$\000\004\131P\160\027\204\192\000! \016\002\000\016@ \128\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\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\004\144\000\018\rB\128o3\000\000\132\128@\b\000A\000\130\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\003\175j\208\000\016\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\002\001\000\000\000\128\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\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\001$\000\004\131P\160\027\204\192\000! \016\002\000\016@ \128\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\004\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\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\001\000\000\000\016\000\000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\004\000\004\000@#\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\000\000\000\000\000\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@\000\000\000\000\000\000\000\000\000\000\001\002\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\001\255\250\254\b\020i\n\001\000\198)\199s\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000I\000\001 \208(\006s0\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\001\000\000\000\000\031\255\175\224\129F\144\160\018\rB\156w?\b\001\158\160\192\t\030Q\134\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\000\000\000\000@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\001\255\250\254\000\004\000\b\000\000\128\001\000\000\192\000\000\b\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\001\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\005\255\250\254\b\020i\n\001\000\198)\199s\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\031\255\175\224\129F\144\160\016\012b\156w?\b\001\158\160\192\001\026Q\002\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\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\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\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000@\000\000\000\000\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\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\000I\000\001 \208(\006s0\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\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\004\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\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\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\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\129\006\144 \016\012B\132w3\b\001\158\160\192\001\024Q\002\130\000\000\000\000\000\000\001\000\000\000\000\000\000\000\000\b\000\000\000\000\000\000\000\004\000\000\000\b\016i\002\001\000\196(Gs0\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\129\006\144 \016\012B\132w3\b\001\158\160\192\001\024Q\002\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\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\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\000I\000\001 \208(\006s0\000\bH\004\000\128\004\016\b \000\000\000\000\000\000\016\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\001\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\000\b\000\000\128\001\000\000\192\000\000\b\000\000\000 \000\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\128\000\000\000\000\000\000\000_\255\175\224\000@\000\128\000\b\000\016\000\012\000\000\000\128\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\001\255\250\254\000\004\000\b\000\000\128\001\000\000\192\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\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\004\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\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\130\000\000\000\000\000\000\001\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\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\000z\246\175\b\003\128\130D\144!\000\192\000\004\144\000\133(R\000\0060\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\001\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\000\016\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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@\004\000\160 \017\004\000\004\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\002\t\016@\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\128\000\000\000\000 \000\002\000\000\000\000\000\000\000\002\002\000\000\000\000\000\b\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\128\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\002\000\000\000\000\000\000\000\136\000\000\000\000\000\000\000\b\b\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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 \145\004\b@0\000\001$\000!H\020\128\001\140\000\000z\246\175\000\003\128\130\000\016!\000\192\000\004\144\000\133 R\000\0060\000\000\000\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(\b$a\000\001\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\001\000\016\002\128\130D\016\000\016\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\128\000\000\000@\004\000\160 \145\004\000\004\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\001\000\000\000\b\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\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\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\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\030\189\171\192\000\224 \144\004\b@0\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\001\235\218\188\000\014\002\b\000@\132\003\000\000\018@\002\020\129H\000\024@\000\000\000\016\001\000(\b$A\000\001\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\002\000\000\000\000\000\000\000\b\016\000\000\004\000@\n\002\t\016@\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\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\004\000@\n\002\t\016@\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\000\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000\144\000\135h\018\000\0040\000\000\000\004\000@\n\002\t\016@\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 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\001\000(\b$A\000\001\000\000\000\t\000\bv\129 \000C\000\000\000\000@\004\000\160 \145\004\000\132\000\000\000\164\000!\218\004\128\001\014\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000\144\002\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\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\001\000\016\002\128\130D\016\000\016\000\000\000\144\000\135h\018\000\0040\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\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\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\030\189\171\192\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\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 \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\016\000\000\004\000@\n\002\t\016@\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@\004\000\160 \145\004\000\004\000\000\000$\000!\218\004\128\001\012\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\018\000\000\000\000\000\000\000\000@\004\000\160 \145\004\000\004\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\b\000\000\000\000\000\000\000 \000\000\000\016\001\000(\b$A\000\001\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\002\000\000\000\000\000\000\000\b\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\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\004\000@\n\002\t\016@\004@\000\000\002@\002\029\160H\000\016\192\000\000\000\016\001\000(\b$A\000\001\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\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\000\000\000\000\000\000\000\000\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\128\130D\016\000\016\000\000\000\144\000\135h\018\000\0040\000\000\000\004\000@\011\130\t\016@\001@\000\000\n@\002\029\160H\000\016\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\001\000(\b$A\000\001\000\000\000\t\000\bv\129 \000C\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\004\000@\138\002\t\016@\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\128\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\128\000\000\000@\004\b\160 \145\004\000\004\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\001\128\000\000\000\001\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\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\004\000@\n\002\t\016@\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\000\000\000\000\000\000\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000\144\000\135h\018\000\0040\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\002\128B\004\000\160 \145\004\000\006\000\000\000$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\000\024\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\016\001\000(\b$A\000\001\128\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\001\000\016\002\132\130D\016\002P\000\000\002\144\000\135h\018\000\0048\000\000\000\004\000@\n\002\t\016@\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\002\000\000\000@\004\000\160 \145\004\000\004\000\000\000$\000!\218\004\128\001\012\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\001\000\016\002\128\130D\016\000\024\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\016\001\000(\b$A\000\001\128\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\b\000\000\000\000\000\000\000 \000\000\000\016\001\000(\b$A\000\001\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\004\000\000\000\000@\000\000\002\000\000\000\000\000\000\000\b\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 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\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\128\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\002\004\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\001\000(\b$A\000\001\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\002\000\000\000\000\000\000\000\b\000\000\000\004\000@\n\002\t\016@\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\025\000\000\000\000\016\000\000\000\128\000\000\000\000\000\000\002\000\000\000\000\000\000\000\000\000\000\000\001\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\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000 \000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\001\000(\b$A\000\001\000\000\000\t\000\bv\129 \000C\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\004\000@\n\002\t\016@\000@\000\000\002@\002\029\160H\000\016\192\000\000\000\016\001\000.\b$A\000\005\000\000\000)\000\bv\129 \000C\128\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\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\160 \145\004\000\004\000\000\000$\000!\218\004\128\001\012\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\007\175z\241\0008\b$A\002\017\004\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\002\000\000\000\000\000\001\000\016\002\128\128D\016\000\016\000\000\000\144\000\135h\018\000\0040\000\000\000\004\000@\011\146\t\016@\t`\000\000\n@\002\029\160H\000\016\224\000\000\000\016\001\000(\b$A\000!\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\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\004\000@\n\002\t\016@\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\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\016\000\000\000\000\000\000\030\189\235\196\000\224 \145\004\bF\016\000\001$\000!\218\004\128\001\012\000\000\000\001\000\016\002\128\130D\016\000\016\000\000\000\144\000\135h\018\000\0040\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\160 \145\004\000\004\000\000\000$\000!\218\004\128\001\012\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\001\000\016\002\128\130D\016\000\016\000\000\000\144\000\135h\018\000\0040\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\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\030\189\171\194\000\224 \145$\b@0\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\001$\000\004\131@\224\025\204\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\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\001$\000\004\131@\160\025\204\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\007\255\239\252 Q\164(\004\131\208\231\029\207\194\000g\1690\002F\148@\172\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\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\127\254\255\194\005\026B\128H=\nq\220\252 \006z\147\000$iD\n\205\239\251\255\000\004\000\b\000\000\128\001\000\000\000\000\000\000@\000\000\000\000\000\007\191\239\252\000\016\000 \000\002\000\004\000\000\000\000\000\001\000\000\000\000\000\000\030\255\191\240\000@\000\128\000\b\000\016\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\004!C\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\001\000\000\000\000\000\000\000B\0200\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\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\031\255\175\224\241F\144\160\016\012b\156w?\b\001\158\160\192\001\026Q\002\130\127\254\191\130\005\026B\128@1\138q\220\252 \006z\131\000\004iD\n\b\000\000\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\255\235\248 Q\164(\004\003\024\167\029\207\194\000g\1680\000F\148@\172\192\000\000\000\000\000\000\000\002\001\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\001\000\128@\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\127\254\191\130\005\026B\128H5\nq\220\252 \006z\131\000$iD\n\204\000\000\000\000\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\004\0038\160\025\204\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\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\001\255\250\254\015\020i\n\001\000\198)\199s\240\128\025\234\012\000\017\165\016('\255\235\248 Q\164(\004\003\024\167\029\207\194\000g\1680\000F\148@\160\128\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\026B\128@1\138q\220\252 \006z\131\000\004iD\n\204\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<Q\164(\004\003\024\167\029\207\194\000g\1680\000F\148@\160\159\255\175\224\129F\144\160\016\012b\156w?\b\001\158\160\192\001\026Q\002\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\000\000\000\000\000\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\191\240\000@\000\128\000\b\000\016\000\000\000\000\000\132\000\000\000\000\000\000\001\bP\192\000\000\000\000\000\016\000\000\140\004\000\000\002\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0020\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\004\000\000\000\000\000\000\000\000\000\000\000\000\000\000z\246\175\000\001\000\002\000\000 \128F\000\004\000\000\000\000\000 \000\000\128\001\235\218\188\000\004\000\b\000\000\130\001\024\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\002 \000z\246\175\000\001\000\002\000\000 \128F\000\004\000\000\000\000\000\000\000\000\128\001\235\218\188\000\004\000\b\000\000\130\001\024\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\136\000\030\189\171\192\000@\000\128\000\b \017\128\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\001\000\000\000\128\000\000\000 \000\000\000\000\136\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\b\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\136\000\030\189\171\192\000@\000\128\000\b \017\128\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\000\000\000\000\000\000\000\000\000\000\000\000\000\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\016\000\000\000\000\000\000\000\000\000\000\000\000\000\031\255\175\224\129F\144\160\018\rB\156w?\b\001\158\160\192\t\026Q\006\130\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\001\000\128@\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\127\254\191\130\005\026B\128H5\nq\220\252 \006z\131\000$iD\n\204\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\001\000\001\000\000\b\192@\000\000!\000\000\000\000\000\012@\000\000\000\000\000\002\002\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\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\000I\000\001 \2088\006s0\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\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\004\144\000\018\r\002\128g3\000\000\132\128@\b\000A\000\130\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\020i\n\001 \2449\199s\240\128\025\234L\000\145\165\016+0\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\031\255\191\240\129F\144\160\018\015B\156w?\b\001\158\164\192\t\026Q\002\179\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\020i\n\001\000\198)\199s\240\128\025\234L\000\017\165\016+0\000\000\000\000\000\000\000\000\128@\000\000\000\000\000\000\000\000\002\000\000\000\012_\255\191\240\129F\144\160\016\012b\156w?\b\001\158\164\192\001\026Q\002\179\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\020i\n\001 \212)\199s\240\128\025\234L\000\145\165\016+7\255\239\252 Q\164(\004\003\024\167\029\207\194\000g\1690\000F\148@\172\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\016\b\004\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\007\255\239\252 Q\164(\004\131P\167\029\207\194\000g\1690\002F\148@\172\192\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\026B\128H5\nq\220\252 \006z\147\000$iD\n\204\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 Q\164(\004\131P\167\029\207\194\000g\1690\002F\148@\172\192\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\000\000\016\000\016\000\000\140\004\000\000\002\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\007\255\239\252 Q\164(\004\131P\167\029\207\194\000g\1690\002F\148@\172\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\016\b\004\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\007\255\239\252 Q\164(\004\131P\167\029\207\194\000g\1690\002F\148@\172\192\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\000\000\016\000\016\000\000\140\004\000\000\002\016\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\004\000\001\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\016\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\b\000\000\004\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\002\000\000\016 \000\000\000\000\000\000\000\004\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\001\002\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\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\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\016\000\000\000\000\000\000\000\000\000\000\000\000\b\001\000\000\000\000\000\000\000\128\000\004\b\000\000\000\000\000\000\000\001\000\000\000\000\128\000\000\000\000\016\000\000\000\001\000\000\000\000\000\000\000\000\004\024\001\000\000\128P\000\000\000\000\000\000\b\000\000@\128\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\016\000\000\000\001\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\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\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\001\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\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\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\004\000\000\000\000\000\000\000\000\000\000\000\000\001\014\000`\000\000\016\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\001\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\001\006\000@\000\000\016\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\016`\004\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\016`\004\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\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\004\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\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\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\004\000\000\000\000\000\000\000\000\000\000\000\000\001\014\000`\000\000\016\000\000\000\000\016\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\016`\004\000\000\001\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\001\006\000\000\000\000\016\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\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\004\000\000\000\000\000\000\000\000\000\000\000\000\001\006\000`\000\000\016\000\000\000\000\016\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\016`\004\000\000\001\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\004\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\001\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\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\b\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\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\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\b\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\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\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\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\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\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\016\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")
let action =
- ((16, "\000\224\001Z\000\000\000\000\000\000\001\031\000\000\000\000\000\000\000\224\000\000\001T\023\164\000\000\018B\018F\000\000\000\000+\022\018B\000\000;h\018B\000\000\000\000\018B\000\000\018B\000\000\001\003\000\195\018B\000\000\018B\000\000\000\000\000\000+\224\018B\000\000;\156\018B\000\000\000\000\018B\000\000\018B\000\000\000W\000\017\018B\000\000\018B\000\000\018B\000\000;\160\018B\000\000\000\000\018B\000\000\018B\000\000\000O\000\000\000\000\000\000\018B\000\000\018B\000\000\000\000\018B\000\000\018B\000\000\000\224\001\134\018B\000\000\023\164\018B-P\000\000G<\002T-P\000O-P\000\000\001\174\018B\000\000G\242\000\000\000O\001\234-\254\000\000\000\0008\024\000\000<\172\000\000=\"-\254-\254\019\158\019\158<\172\019\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0008\228-\254\000\000\000\0008\228\000\0008\228\000\000-\254\000\000\000\000\000\000\022\250\000O\000\000\019\158\000\000.v-\254\027\180-\254\000\000\000\000\000\000\000\000\000\000\000\000\030\246-\254\031d-\254 \\-\254 \202-\254\000\000-\254\000\000-\254!\194-\254\"0-\254#(-\254#\150-\254$\142-\254\001\230-\254\000\000\000\000\000\000\000\000\000\000-\254$\252-\254%\244-\254&b-\254\000\000\000\000-\254\000\000\000\000\002&\000\000\000\000\000\000\000\000\019\236\018B\000\000\003^\018B\000\000=\220\018B\000\000\000\000\018B\000\000\018B\000\000\002d\002\144\018B\000\000\018B\000\000\004\246\018B\000\000=\254\018B\000\000\000\000\018B\000\000\018B\000\000\002\130\002\234\018B\000\000\018B\000\000\018B\000\000>\024\018B\000\000\000\000\018B\000\000\018B\000\000\000O\018B\000\000\018B\000\000\018B\000\000\018B\000\000\003\030\003\136\018B\000\000;h-P\003T\018B\000\000H\252H\028\000\000\000\152\004\022\000O\003\194\004\128+x\000\000\000\000\000\235I\162\000\000\000\000\000\000\000\000\001*\004\142\001\012\004\164+x\000++x\000\000\000\000\003\250\000\000\004N\005l+x\004\224\000\000\000\000\000\000\000\235\000\000\004\246\005\254\000\000\006<\000\000\019\236\001*-P\005\160\018B\000\000;\156-P\005\162\018B\000\000\000\000\000O\006\136\000\000\000\000\000\000\000\015\019\158\000\000-\254\005\178\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\000\005\184\000\000\000\000\005\188\000\000\005\204<\172\000\000\000\000\000\000\000\000\000\000\000\000?\000-\254\000\000?\000\000\000?\000<\172\000\000\000\000.\212\000O\000\000\019\158\005\210\000\000-\254\005\212\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000H6-\254\000\000-\254\000\000\000\000\005\216\000\000\000\1889n\006\140-\254\006V\000\000\000\000<\172\000\188\000\000\000\000\000\000\000\000\000\000I\254<\172J4<\172J\138<\172K4<\172\000\000<\172\000\000<\172K\138<\172K\192<\172L4<\172L\182<\172L\236-\254\006\n<\172\000\000<\172MB<\172M\236<\172NB\005\230\000\000\005\236\000\000\001&-\254\000\000\001&\000\000\000\000\002\174\023\164\000\000\002\174\000\000\000\000\005\240-\254\000\000\005\244\000\000\019\158\005\246\000\000\000\000\006\196\000\000\019\158\006\000\000\000\000\000\006\022\000\000\000\000\001\234\000\000\006\250\000\000;\160-P\006 \018B\000\000\000\000\006\166\000\000\0064\018B\000\000\000\000\001\132\023\164\000\000\023\164\000\000\006\"\000\000\001\132\000\000\016\030\026\006\0182\000\000\005\218\0182\000\000\0186\0182\000\000\000\000\0182\000\000\0182\000\000\006h\006\148\0182\000\000\0182\000\000\006\022\0182\000\000\018F\0182\000\000\000\000\0182\000\000\0182\000\000\006l\006\152\0182\000\000\0182\000\000\0182\000\000/\190\0182\000\000\000\000\0182\000\000\0182\000\000\000O\0182\000\000\0182\000\000\0182\000\000\0182\000\000\006p\006\158\0182\000\000\023\164\006R\000\000\0182-P\006L\0182\000\000\000\000\000[\000\000\002\030\000[\000\000\000\000\000\000\0076\000\000\001\188-P\006^\0182\000\000\018F-P\006b\0182\000\000\000\000\021\002\0182\000\000\006R\0182\000\000/\226\0182\000\000\000\000\0182\000\000\0182\000\000\006\146\006\190\0182\000\000\0182\000\000\0072\0182\000\000/\242\0182\000\000\000\000\0182\000\000\0182\000\000\006\152\006\196\0182\000\000\0182\000\000\0182\000\0000\002\0182\000\000\000\000\0182\000\000\0182\000\000\000O\0182\000\000\0182\000\000\0182\000\000\0182\000\000\006\160\006\204\0182\000\000/\226-P\006x\0182\000\000\000\000\002\160-P\006|\0182\000\000/\242-P\006~\0182\000\000\000\000\000\000\000\000\000\000\000\000\007B-\254\006\142\021f\007P-\254\006\150\007L\000\213\006\202\006\182\000\000@<@\178\019\158\006\166\000\000\006\170@\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000A(-\254\000\000A(\000\000A(@\178\000\000\000\000\026\\\000O\000\000\019\158\006\172\000\000-\254\006\170\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000,p-\254\000\000-\254\000\000\006\184\000\000\001&\000\000\000\000\000\000\000\000\000\0000\214@\17812@\1781\206@\1782*@\178\000\000@\178\000\000@\1782\198@\1783\"@\1783\190@\1784\026@\1784\182-\254\006\224@\178\000\000@\1785\018@\1785\174@\1786\n\019\158\006\186\000\000\000\000-\254\000\000\007\156\000\000\001V\007z-\254\007`\000\000\007\172-\254\007v\000\000\000\003\000\000\006\182\006\182\001V\000\000\001V\000\000\016\030\006\182\006\182\000\000\000\000\000\000\025\\\000\000\000\000\000\000\000\000\007\188-\254\007\002\021f\0224\000O\007\228\000\000\007\1986\208\007\2326\208\007\2346\208\007\016\021f\021f\000\248\001N\002\208\000\000\000\000\000\000\001N\000\000\001\170\000\248\000\000\000\000\007\"\000\000\000\000\000\000\008\000\000\000\008\002\000\000\000\000\0086\007\236-\254\0072\008\016\000\000\024R\007\242\019\158\0078\021f\000\000\000\000\007b\000\000\001&\000\000\005^\000\000\001V\000\000\000\000\007\180\000\000-P\000O\000\000\002\004-\254'\242\000\000A\158-\254\007B\000\000\019\158\007B\000\000\007H\000\000\000\000\000\000\000\000\000\000\000\000\000\000B\020-\254\000\000B\020\000\000B\020B\138\019\158\007JB\138\000\000\000\000\029\022\000O\000\000\019\158\007L\000\000-\254\007J\000\000\000\000\000O\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000-\254\000\134-\254\007P\000\000\000\000(\166'>\008\012-\254\000\000\007\214\000\000\000\000\000O\000\000\000\000\007\142'\242\000\000\007\138'\242\000\000\000\028\000\000\000\000:DB\138>\144B\138NxB\138N\164B\138\000\000B\138\000\000B\138N\246B\138ONB\138O\170B\138O\186B\138P\018B\138P\"B\138PDB\138P\198\000\000\007`\000\000\007r)Z\000\000*\014\007z*\014-J\007|*\014\000\000\000\000\000\000\000\000\000\000\007p\000\000\008Z\000\000\000O\000\000\002\004\008b\000\000\000N\008:\000O\007\146\008P+x\007\150\001(\000\000-\254\008v\000\000\003\226\005\020\008X+x\007\158\008|\000\000\002\008-\254\008~\000\000\008\128\000\000\019\236\000O\002\172-\254\008\132\000\000\008\140\000\000\012\022\003z\000\000\012\022\000\000\000\000\024R\002\188-\254\008\142\000\000\008\152\000\000\000\000\003z\000\000\000\000\tf\000\000\012\022\000\000\008|\019\158\007\196\008\162\000\000\000%\000\000\008r\000O\007\202\008\142+x\007\212\003\216\000\000-\254\008\178\000\000\008\148+x\007\218\008\184\000\000\003B-\254\008\186\000\000\008\188\000\000\019\236\000O\003r-\254\008\190\000\000\008\194\000\000\000\000\000\000\tf\000\000\000\000\003z\000\000\006\182\000\000\000%\000\000\000\000\003\154\0224\000\000\003\154\000\000\000\000\007\234\000\000\001&\000\003\021f\000\000\004\006\000Z\004\006\000\000\001\240\000\000\006\182\000\000\006\182\000\000\000\000\000\000\007\232\000\000\000\000\007\242\000\000\003\192\005^\000Z\004\006\000\000\000\000\000\000\001\240\000\000\006\182\000\000\003\192\000\000\000\000\007\168\003D\016\030\000\000\003\250\000\000\008\014\016\030\000\000\000\000\008\014\000\000\000\000\007\244\000\000\000\000\007\252\000\000\005\018\006\182\000\000\005\018\000\000\000\000\008v\000\000\003z\000\000\006\182\000\000\000\000\000\000\017j7F\000\000\008\222\000\000\017j\008\226\000\000\008\230\000\000-P\000O\005d\000\000-\254\008\232\000\000\002\254\008\184\000O\008\018\008\212+x\008 \005t\000\000-\254\008\254\000\000\005\242\000\000-\254\t\000\000\000\019\236\000O\006\004\000\000-\254\t\028\000\000\005f\017j\000\000\024R\006\014\000\000-\254\t \000\000\000\000\000\000\005.\000\000\t\016\019\158\008V\t6\000\000\007\020\000\000\t\006\000O\008`\t\030+x\008d\006\028\000\000-\254\tB\000\000\0062\000\000-\254\tD\000\000\019\236\000O\0066\000\000-\254\tH\000\000\005f\000\000\000\000\008v\000\000\005.\008\168\008\238\000\000\000\000\000\000\008\242\000\000\004~\000\003\000\000\016\030\tD\000\000\000\000-\254\008\166\006\182\000\000\008|\000\000\000\213\000\000\000\000\001\146\016\030\000\000\016\030\000\000\008l\000\000\001\146\000\000<\172\003\134<\172\000\000<\172\000\000\008n\000\000\003\134\000\000\021f\003\142\021f\000\000\021f\000\000\008p\000\000\003\142\000\000<\172\003\134\008r\000\000-P\000O\004\214-P\000\000-P\000\000\008t\000\000\004\214\000\000<\172\003\134\008v\000\000\000\000\024R\000\000\000\000\008\2287\242\000\000\000\000\000\000\000\000\000\000\008\186\000\143\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\1397\242\000\000\0036\001\144\000\000\008\190\000\143\000\000\000\000\000\000\003~\001\144\000\000\000\000\000\000\t\024\000\000\000\000\000\000\000\000\027\180\029\012\000\000C>\000\0007\242\000\000\00307\242\000\000\004|\000\250\000\250\000\000\000\187\000\250\000\000\008\152\000\000\000\000\000\000\000\000\t\030\000\000\030\004\000\000\030\1507\242\000\000\004\2227\242\000\000\t \000\0007\242\t\"\000\000D\1807\242\t*\000\000\t.\000\000E\148:\0027\242\008\1767\242\t4\000\000\t6\000\000\t8\000\000\023\164\000\000\001R\023\164\000\000\008\184\0182\000\000\005\1767\242\000\000\005\1887\242\000\000\004\136\004l\000\143\000\000\000\207\000\143\000\000\008\188\000\000\000\000\000\000\000\000\tH\000\000E\222:\226\tJ\000\000\tL\000\0007\242\tT\000\0007\242\t\\\000\0007\242\tf\000\000C\1387\2427\242\008\2307\242\tj\000\000\tp\000\000Dj\000\000\000\000\005\2107\242\000\000\005\000\005\174\000\143\000\000\000\000\000\000\004\134\000\143\000\000\008\238\000\000\000\000\000\000\000\0007\242\000\000\005\2407\242\000\000\005\028\006D\000\143\008\240\000\000\000\000\000\000\000\000\tv\000\000\tx\000\0007\242\tz\000\000F\190:\226\t|\000\000\t~\000\000\020\158\t(\tX/\226\000\0007\242\t\136\000\000\t\146\000\000\tf\020\1587\242\t\154\000\0007\242\t\156\000\000\t\158\000\000:\226\t\0307\242\t\162\000\000\t\168\000\000\000\143\t\026\000\000\000\000\024R\000\000\000\000\002X\n\002\000\000\000\000\002v\000\000\000\000\000\000-\254\000\000\000\000\000\000\002\174\000\000\004J\000\000\000\000\000\000\004\006@L@L@L\000\000\000N\000N\000N\000N\000\000\000\000\000\000\000\000\000\000\000\000\001V\016\030\t\248\013n\003z\000\000\000\000\003z\000\000\tf\000\000'\242\t,\000\000\001V\016\030\t2\014\198\000\000\001V\013n\000\000\000\000\000\000@L\000N\000\000\000\000\000\000\t|\001\166\t\244H\252\000\000\005\178J\002\000\000\000\000\000\000\005R\t\228\000O\000\000\005\178\000\000\005\206H\252\000\000\000\000\t>\t\244\006\182\t>\000\000\003z\000\000\tf\000\000\022L\004h\000\000\000\000\t\226\000\000\000\000\002X\000\000\004\128\000\000\000\000\000\000-\254\000\000\002\174\000\000\005\n\000\000\000\000\000\000\005^\000\000\n\190\003\196\n\190\000\000\006\182\n\190\000\000\004\210\000\000\006\182\000\000\006\182\000\000\006\182\000\000\017\004\000\000\000\000\000\000\000\000\000\000\006\182\000\000\004\210\000\000\006\182\000\000D\218\000\000\000\000\000\180\tp\000\143\003v\n\014\002\248\000\000\002\248\n8\000\000\n<\000\000\n@\000\000\000\000\002l\002\248\002\030\002\248\000\000\000\000\000\198\tJ\000\000\t\134\000\143\tP\000\000\000\180\nJ\000\000\003v\004\188\nZ\000I\nZ\000\000\000\000\0005\000\143\000\000\003\212\000\000\000\000\000;\000\000\tV\000\000\000\000\000\000\t\146\000\143\tZ\000\000\000\000\000\180\003v\004\188\0005\003\212\000;\t^\000\000\003v\004\188\0005\003\212\000;\tb\000\000\000\143\000\000\nf\nb\t\190\000\143\n,\000\000"), (16, "\011\161\011\161\011\161\011\161\011\161\011\161\011\161\011\161\011\161\011\161\011\161\000z\011\161\011\161\011\161\011\161\011\161\011\161\011\161\011\161\011\161\011\161\000~\011E\000\027\000\031\011\161\011u\011E\011E\001f\016f\011\161\008\186\011\161\011\161\011\161\012\030\004F\011\161\023b\nn\005\237\011\161\011\161\011\161\n:\016j\001\n\n>\001\006\019\222\022\186\024\222\011\161\nB\005\221\011\161\011\161\011E\nF\024\226\021\210\011\161\011\161\011E\011\161\001\206\011\161\011=\012\"\015\166\001\218\011\161\001\n\011\161\011\161\011\161\011\161\011\161\001\n\017\n\014:\011\161\011\161\011\161\021F\011\161\011\161\011\161\011\021\011\161\011\161\011\161\011\161\011\021\011\021\000\198\011\161\011\161\006}\001\n\027r\011\246\015z\006}\006}\011\021\011\161\011\161\011\161\000\202\012*\011\161\011\161\011\161\011\161\027Z\011\161\027J\011\161\004}\004\209\011\161\001\206\0186\011\161\011\161\015\166\001\218\004\017\018:\011\021\026\194\004r\018>\017:\011\161\003e\005q\011\161\004&\006}\000\006\011\161\011\161\011\161\011\161\005\006\011\161\005\245\011\161\004a\006e\014r\011\161\011\161\011\161\001\n\011\161\026\254\011\161\011\161\004\157\011\161\001\006\011\161\011\161\019\178\020\238\011\161\011\161\006m\006m\006m\006m\006m\006m\006m\006m\006m\006m\006m\013J\006m\006m\006m\006m\006m\006m\006m\006m\006m\006m\021\198\001\n\013>\015\150\006m\011\250\012\n\012\026\027\030\004\209\006m\014B\006m\006m\006m\001\n\000\n\006m\027.\001\006\004^\006m\004}\006m\004\198\027\134\0272\004}\004}\001\006\006\198\004\017\006m\000\018\014N\000\014\004\017\004\017\006\002\004}\004}\006m\006m\021V\001\006\007~\006m\006m\004\017\001\n\021Z\006m\020\006\006m\006m\006m\006m\006m\001:\001\n\006e\006m\006m\006m\004}\006m\006m\006m\012\174\006m\006m\006m\006m\004\017\001\n\027\006\006m\006m\0002\007\158\020&\020N\020v\020\134\020\178\006\005\006\005\006m\006m\003\233\015\154\006m\006m\006m\006m\021f\006m\008\222\006m\004f\005\213\006m\001\206\013>\006m\006m\001\214\001\218\004\t\007\134\0035\006=\011\246\011-\0035\011-\020\014\001\006\006m\001\138\001>\012*\006m\006m\006m\006m\011}\006m\012\178\006m\022z\004\209\005\253\006m\006m\006m\001\n\011%\004\t\006m\006m\006\133\006m\006\133\006m\006m\006\133\001\n\006m\006m\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\133\006\013\006\133\012\206\001^\006\133\026\254\003\237\006%\006\133\024\130\006\133\001r\006\133\006\133\006\133\005\213\002\182\006\133\006\133\006\133\013J\006\133\006\133\006\133\006\133\011-\006\133\006\133\013n\006\133\015\198\004\t\006\133\011-\005\213\006\133\004\t\004\t\005\213\n\018\004\209\006\133\006\133\006\133\006\133\006\133\006\133\015b\004\t\015b\006\133\006\133\024\130\006\133\006\222\006\133\006\133\006\133\026\214\001\006\008\194\006\133\006\133\006\133\004\t\006\133\006\133\006\133\003\002\006\133\006\133\006\133\006\133\004\t\003\"\027\006\003*\006\133\003:\026\218\003N\003R\018\134\001\006\006\133\003B\026\222\006\133\006\133\001\n\006\133\006\133\006\133\006\133\006\133\003\146\006\133\007\185\006\133\006\133\011-\006\133\001\206\027\014\006\133\006\133\015\166\001\218\004\013\003J\011\246\007\185\015\230\001\n\027\006\006\133\024\147\024\151\006\133\012*\016\026\024\155\006\133\006\133\011-\006\133\003\150\006\133\013>\006\133\020.\015b\012\182\006\133\020V\0065\001\n\011\246\011m\015b\006\133\n\197\006\133\003Z\006\133\006\133\012*\026\230\006\133\006\133\0006\000:\000J\000\142\007\162\000\146\n:\000\150\000\218\n>\000\226\007\185\000\242\024\202\000\250\nB\001\002\001\026\001\"\001&\nF\024\206\017\022\003\246\011\246\016\134\nJ\011\133\012E\026\238\005\t\021R\001.\012*\001\142\nZ\nv\016\174\007\185\nz\013J\017\138\013>\0016\0206\011\230\004\237\021\182\020^\005\t\n\197\011\246\007\185\004\013\001\154\003\250\015b\025\002\004\013\004\013\012*\016\206\007\185\012>\n\130\025.\025:\013J\012B\017F\004\013\026\206\004\014\001\194\007\185\001\198\004\173\001J\013F\012J\015b\004*\021r\n\150\001\206\012N\011\133\n\154\012R\001\218\025\243\n\158\n\162\012V\n\166\004\013\012E\012E\025\247\012Z\027f\012E\007\185\006]\013J\004q\027j\006\029\025\250\n\170\n\174\006-\016\138\012^\012b\n\178\012f\005\t\001\n\022\174\012z\027B\006E\004\137\0042\0046\012\134\n\186\003f\021\194\003n\013J\003~\008\153\008\153\022\170\005\t\025N\008\153\003\134\012\166\004b\004q\004j\012\170\012\230\004\173\013R\020\146\n\190\013>\012\234\004\130\007\185\006\173\n\194\004\173\004\173\011\029\011\246\006\157\004\173\012\242\003\142\n\198\007\185\006\141\006\141\012*\001\n\002\n\006\141\0006\000:\000J\000\142\007\162\000\146\n:\000\150\000\218\n>\000\226\005\005\000\242\024\202\000\250\nB\001\002\001\026\001\"\001&\nF\024\206\004\138\023Z\019\018\003\158\nJ\004\233\024\187\024\191\005\005\011M\001.\024\195\001\142\nZ\nv\023\166\018\n\nz\020\154\006\173\019\198\0016\006u\011\230\023r\006\157\006\149\006u\006u\018r\006\198\0115\001\154\026\019\026\023\011\246\025\162\018\162\026\027\006u\006\165\012>\n\130\025.\012*\013J\012B\017\142\007\178\004\142\007\186\001\194\007\202\001\198\004\189\001J\013F\012J\018\230\007\210\001\006\n\150\001\206\012N\006u\n\154\012R\001\218\022\014\n\158\n\162\012V\n\166\004\150\008\153\008\153\005\005\012Z\007\246\008\153\007\254\006\021\008\014\007\218\004\174\006\149\023^\n\170\n\174\008\022\001\n\012^\012b\n\178\012f\005\005\001\n\006M\012z\006\165\018\182\004\137\0263\0267\012\134\n\186\004\178\026;\t\022\018\210\t\030\006=\t.\008\030\018\246\013J\018v\007\234\012\166\t6\011]\019N\012\170\012\230\018\166\013R\0035\n\190\023b\012\234\0035\011U\019b\n\194\019~\004\189\001\n\004\186\008q\006U\012\242\022\146\n\198\t>\006\181\006\181\011e\008.\002\n\006\181\0006\000:\000J\000\142\007\162\000\146\n:\000\150\000\218\n>\000\226\023\170\000\242\024\202\000\250\nB\001\002\001\026\001\"\001&\nF\024\206\004\206\004\226\025\142\004\246\nJ\tN\005\229\022\158\005\022\005:\001.\005F\001\142\nZ\nv\018\186\025\186\nz\023N\005N\003Y\0016\005\162\011\230\018\214\005\174\005\250\006\n\006\018\018\250\006\146\006\182\001\154\023\154\006\190\011\246\019R\006\246\007\002\001\n\007\014\012&\n\130\007\026\012*\007&\012B\019f\tZ\019\130\tb\001\194\tr\001\198\004\217\001J\012F\012J\0072\tz\007F\n\150\001\206\012N\007V\n\154\012R\001\218\007f\n\158\n\162\012V\n\166\019.\007n\007\147\012M\012Z\007\222\007\226\008\"\008&\008\134\t\130\008\138\008\154\008\170\n\170\n\174\0192\008\214\012^\012b\n\178\012f\008\230\001\n\008\250\012z\tB\tF\004\137\t\134\t\138\012\134\n\186\t\234\t\238\n\002\001\206\n\026\n.\nN\015\166\001\218\013J\nV\t\146\012\166\n^\nf\nj\012\170\012\230\004\217\013R\nr\n\190\n\138\012\234\n\146\n\234\n\246\n\194\004\217\004\217\011>\011\182\011\222\004\217\012\242\011\242\n\198\001\n\008\161\008\161\011\254\016f\002\n\008\161\0006\000:\000J\000\142\007\162\000\146\n:\000\150\000\218\n>\000\226\012\006\000\242\016j\000\250\nB\001\002\001\026\001\"\001&\nF\012\014\012\022\012j\012r\006\222\nJ\012\130\012\138\012\146\012\154\012\162\001.\001\206\001\142\nZ\nv\015\166\001\218\nz\012\222\012\238\012\246\0016\007\193\011\230\013\002\013\006\013\014\013\018\013\030\013&\0136\013Z\001\154\013\134\013\146\011\246\007\193\013\154\013\218\013\250\014\006\012&\n\130\014J\012*\001\n\012B\014^\014j\014\130\014\142\001\194\015\022\001\198\015\030\001J\012F\012J\015.\015:\015V\n\150\001\206\012N\015^\n\154\012R\001\218\015r\n\158\n\162\012V\n\166\015~\015\134\015\138\015\146\012Z\015\162\015\178\015\186\015\190\015\206\015\214\0065\015\238\007\193\n\170\n\174\015\246\016\"\012^\012b\n\178\012f\016*\001\n\016R\012z\016Z\016^\016n\016v\019.\012\134\n\186\016z\016\130\016\146\016\154\016\162\016\166\016\182\016\190\016\214\013J\016\222\017.\012\166\0192\017v\017\130\012\170\012\230\017\246\013R\018\002\n\190\018\"\012\234\018N\006\222\018Z\n\194\018b\018~\018\138\007\193\018\146\001\206\012\242\018\150\n\198\015\166\001\218\018\158\018\174\018\194\002\n\007\193\0006\000:\000J\000\142\007\162\000\146\n:\000\150\000\218\n>\000\226\018\222\000\242\019\002\000\250\nB\001\002\001\026\001\"\001&\nF\019\026\019\"\001\n\019&\0196\nJ\019>\019B\019J\019Z\019n\001.\019\138\001\142\nZ\nv\019\158\019\174\nz\019\190\019\214\019\230\0016\019\242\011\230\020\027\020C\020k\020\131\020\167\020\191\020\214\020\242\001\154\021^\021\135\011\246\021\222\021\243\022\027\022'\0065\012&\n\130\0227\012*\022?\012B\022R\022[\022c\022k\001\194\022\134\001\198\022\198\001J\012F\012J\022\219\022\235\022\243\n\150\001\206\012N\022\255\n\154\012R\001\218\023\011\n\158\n\162\012V\n\166\023\023\023*\0233\012M\012Z\023;\023~\023\178\023\199\023\207\023\219\023\235\023\243\023\254\n\170\n\174\024\002\024\019\012^\012b\n\178\012f\024\027\001\n\024\"\012z\024/\024;\024C\024N\024W\012\134\n\186\024_\024k\024\134\025\014\0256\025F\025z\025\130\025\166\013J\025\202\025\206\012\166\025\214\025\255\026\198\012\170\012\230\026\210\013R\026\226\n\190\026\234\012\234\026\242\027\027\027\"\n\194\027+\0276\027F\027{\027\138\027\147\012\242\027\183\n\198\027\211\012M\012M\027\226\027\230\002\n\012M\0006\000:\000J\000\142\007\162\000\146\n:\000\150\000\218\n>\000\226\027\234\000\242\024\202\000\250\nB\001\002\001\026\001\"\001&\nF\024\206\027\243\000\000\000\000\000\000\nJ\000\000\000\000\000\000\000\000\000\000\001.\000\000\001\142\nZ\nv\000\000\000\000\nz\000\000\000\000\000\000\0016\000\000\011\230\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\000\000\000\000\000\000\012>\n\130\000\000\000\000\000\000\012B\026J\000\000\000\000\000\000\001\194\000\000\001\198\000\000\001J\013F\012J\000\000\000\000\000\000\n\150\001\206\012N\000\000\n\154\012R\001\218\000\000\n\158\n\162\012V\n\166\000\000\000\000\000\000\000\000\012Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\n\174\000\000\000\000\012^\012b\n\178\012f\000\000\001\n\000\000\012z\000\000\000\000\004\137\000\000\000\000\012\134\n\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\012\166\000\000\000\000\000\000\012\170\012\230\000\000\013R\000\000\n\190\000\000\012\234\000\000\000\000\000\000\n\194\000\000\000\000\000\000\000\000\000\000\000\000\012\242\000\000\n\198\000\000\008\133\008\133\000\000\000\000\002\n\008\133\0006\000:\000J\000\142\007\162\000\146\n:\000\150\000\218\n>\000\226\000\000\000\242\000\000\000\250\nB\001\002\001\026\001\"\001&\nF\000\000\000\000\000\000\000\000\000\000\nJ\000\000\000\000\000\000\000\000\000\000\001.\000\000\001\142\nZ\nv\000\000\000\000\nz\000\000\000\000\000\000\0016\000\000\011\230\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\000\000\000\000\000\000\012>\n\130\000\000\000\000\000\000\012B\015\254\000\000\000\000\000\000\001\194\000\000\001\198\000\000\001J\013F\012J\000\000\000\000\000\000\n\150\001\206\012N\000\000\n\154\012R\001\218\000\000\n\158\n\162\012V\n\166\000\000\000\000\000\000\012)\012Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\n\174\000\000\000\000\012^\012b\n\178\012f\000\000\001\n\000\000\012z\000\000\000\000\000\000\000\000\000\000\012\134\n\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\012\166\000\000\000\000\000\000\012\170\012\230\000\000\013R\000\000\n\190\000\000\012\234\000\000\000\000\000\000\n\194\000\000\000\000\000\000\000\000\000\000\000\000\012\242\000\000\n\198\000\000\012)\012)\000\000\000\000\002\n\012)\0006\000:\000J\000\142\007\162\000\146\n:\000\150\000\218\n>\000\226\000\000\000\242\000\000\000\250\nB\001\002\001\026\001\"\001&\nF\000\000\000\000\000\000\000\000\000\000\nJ\000\000\000\000\000\000\000\000\000\000\001.\000\000\001\142\nZ\nv\000\000\000\000\nz\000\000\000\000\000\000\0016\000\000\011\230\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\000\000\000\000\000\000\012>\n\130\000\000\000\000\000\000\012B\025\018\000\000\000\000\000\000\001\194\000\000\001\198\000\000\001J\013F\012J\000\000\000\000\000\000\n\150\001\206\012N\000\000\n\154\012R\001\218\000\000\n\158\n\162\012V\n\166\000\000\000\000\000\000\000\000\012Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\n\174\000\000\000\000\012^\012b\n\178\012f\000\000\001\n\000\000\012z\000\000\000\000\000\000\000\000\000\000\012\134\n\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\012\166\000\000\000\000\000\000\012\170\012\230\000\000\013R\000\000\n\190\000\000\012\234\000\000\000\000\000\000\n\194\000\000\000\000\000\000\000\000\000\000\000\000\012\242\000\000\n\198\000\000\012u\012u\000\000\000\000\002\n\012u\0006\000:\000J\000\142\007\162\000\146\n:\000\150\000\218\n>\000\226\000\000\000\242\000\000\000\250\nB\001\002\001\026\001\"\001&\nF\000\000\000\000\000\000\000\000\000\000\nJ\000\000\000\000\000\000\000\000\000\000\001.\000\000\001\142\nZ\nv\000\000\000\000\nz\000\000\000\000\000\000\0016\000\000\011\230\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\000\000\000\000\000\000\012>\n\130\000\000\000\000\000\000\012B\025\018\000\000\000\000\000\000\001\194\000\000\001\198\000\000\001J\013F\012J\000\000\000\000\000\000\n\150\001\206\012N\000\000\n\154\012R\001\218\000\000\n\158\n\162\012V\n\166\000\000\000\000\000\000\000\000\012Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\n\174\000\000\000\000\012^\012b\n\178\012f\000\000\001\n\000\000\012z\000\000\000\000\000\000\000\000\000\000\012\134\n\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\012\166\000\000\000\000\000\000\012\170\012\230\000\000\013R\000\000\n\190\000\000\012\234\000\000\000\000\000\000\n\194\000\000\000\000\000\000\000\000\000\000\000\000\012\242\000\000\n\198\000\000\012q\012q\000\000\000\000\002\n\012q\0006\000:\000J\000\142\007\162\000\146\n:\000\150\000\218\n>\000\226\000\000\000\242\000\000\000\250\nB\001\002\001\026\001\"\001&\nF\000\000\000\000\000\000\000\000\000\000\nJ\000\000\000\000\000\000\000\000\000\000\001.\000\000\001\142\nZ\nv\000\000\000\000\nz\000\000\000\000\000\000\0016\000\000\011\230\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\000\000\000\000\000\000\012>\n\130\000\000\000\000\000\000\012B\017\194\000\000\000\000\000\000\001\194\000\000\001\198\000\000\001J\013F\012J\000\000\000\000\000\000\n\150\001\206\012N\000\000\n\154\012R\001\218\000\000\n\158\n\162\012V\n\166\000\000\000\000\000\000\000\000\012Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\n\174\000\000\000\000\012^\012b\n\178\012f\000\000\001\n\000\000\012z\n:\000\000\000\000\n>\000\000\012\134\n\186\024\222\000\000\nB\000\000\000\000\000\000\000\000\nF\024\226\000\000\000\000\000\000\012\166\000\000\000\000\000\000\012\170\012\230\000\000\013R\000\000\n\190\000\000\012\234\000\000\000\000\000\000\n\194\000\000\000\000\000\000\000\000\000\000\000\000\012\242\016f\n\198\000\000\0006\000:\000J\000\142\002\n\000\146\n:\000\150\000\218\n>\000\226\000\000\000\242\016j\000\250\nB\001\002\001\026\001\"\001&\nF\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001.\001\206\001\142\000\000\nv\015\166\001\218\nz\000\000\000\000\000\000\0016\000\000\018B\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\000\000\000\000\000\000\018R\n\130\000\000\000\000\001\n\000\000\000\000\000\000\000\000\004\157\001\194\000\000\001\198\000\000\001J\000\000\000\000\000\000\000\000\000\000\n\150\001\206\000\000\000\000\n\154\001\214\001\218\000\000\n\158\n\162\012V\n\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\n\174\005\205\007\190\005\205\005\205\n\178\005\205\005\205\001\n\005\205\008\002\005\205\000\000\005\205\000\000\005\205\000\000\n\186\005\205\005\205\005\205\005\205\000\000\005\205\000\000\005\205\000\000\000\000\005\205\000\000\005\205\005\205\000\000\005\205\000\000\005\205\005\205\013R\005\205\n\190\005\205\018V\005\205\005\205\005\205\n\194\005\205\000\000\005\205\000\000\005\205\000\000\018^\000\000\n\198\000\000\005\205\005\205\008\162\005\205\002\n\000\000\005\205\000>\005\205\000>\001N\005\205\008\242\005\205\000\000\000>\005\205\000>\005\205\000\000\005\205\005\205\000\000\000\000\000\000\000\000\005\205\000\000\005\205\000\000\005\205\005\205\005\205\005\205\005\205\000\000\005\205\000\000\000\000\000\000\005\205\005\205\005\205\000\000\005\205\000\000\005\205\000\000\005\205\000\000\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\000\000\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\000\000\000\000\000\000\000\000\005\205\000\000\000\000\005\205\000\000\000\000\000\000\000\000\005\205\000\000\005\205\000\000\005\205\005\205\005\205\005\205\000\000\000\000\005\205\000\000\000\000\000\000\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\000\000\005\205\000\000\000\000\005\205\005\205\005\205\005\205\000\000\005\205\000\000\005\205\0006\000:\000J\000\142\000\000\000\146\000\000\000\150\000\218\000\000\000\226\000\000\000\242\000\000\000\250\000\000\001\002\001\026\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\001.\000\000\001\142\000\000\001\146\000\000\000\000\001\150\003\022\003\030\000\142\0016\000\146\000\000\003b\003\166\000\000\003\174\000\000\003\190\000\000\003\198\001\154\003\206\003\218\001\158\003\226\000\000\000\000\000\000\000\000\001\182\001\178\000\000\001\186\000\000\000\000\000\000\000\000\003\234\000\000\001\194\000\000\001\198\000\000\001J\000\000\000\000\000\000\000\000\003\242\001\202\001\206\000\000\000\000\001\210\001\214\001\218\002.\001\222\001\226\000\000\001\230\000\000\000\000\000\000\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\234\000\000\000\000\000\000\000\000\001\238\004\002\000\000\001\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\246\0006\007\166\007\174\000\142\000\000\000\146\000\000\007\242\0086\001\250\008>\020\218\008N\000\000\008V\000\000\008^\008j\001\"\008r\000\000\001\254\000\000\020\222\000\000\000\000\000\000\002\002\000\000\001\n\004]\020\226\008z\020\230\000\000\000\000\002\006\000\000\020\234\000\000\000\000\000\000\002\n\023\250\000\000\000\000\020\250\000\000\000\000\000\000\020\254\t\n\t\018\000\142\000\000\000\146\021\002\tV\t\154\000\000\t\162\000\000\t\178\008\146\t\186\000\000\t\194\t\206\022n\t\214\000\000\000\000\021\006\023>\000\000\000\000\000\000\008\158\000\000\000\000\000\000\000\000\t\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\t\230\000\000\000\000\000\000\021\n\000\000\000\000\021\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021\018\000\000\000\000\000\000\000\000\021\022\001\n\021\026\000\000\021\030\021\"\000\000\021&\000\000\nJ\t\246\000\000\000\000\021*\000\000\000\000\021.\001\142\nZ\nv\000\000\000\000\nz\000\000\000\000\000\000\000\000\000\000\011\230\000\000\000\000\0212\000\000\000\000\000\000\0216\021:\001\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012v\n\130\000\000\000\000\000\000\012B\000\000\000\000\000\000\000\000\001\194\000\000\001\198\000\000\000\000\000\000\012J\000\000\000\000\000\000\n\150\001\206\012N\000\000\n\154\012R\001\218\000\000\n\158\n\162\000\000\n\166\000\000\000\000\000\000\000\000\012Z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\n\174\000\000\000\000\012^\012b\n\178\012f\000\000\001\n\000\000\012z\n:\000\000\000\000\n>\000\000\012\134\n\186\024\222\nJ\nB\000\000\000\000\000\000\000\000\nF\024\226\001\142\nZ\nv\012\166\000\000\nz\000\000\012\170\012\230\000\000\000\000\011\230\n\190\000\000\012\234\000\000\000\000\000\000\n\194\000\000\001\154\000\000\000\000\000\000\000\000\012\242\016f\n\198\000\000\n~\n\130\000\000\000\000\002\n\012B\000\000\000\000\000\000\000\000\001\194\000\000\001\198\016j\000\000\000\000\012J\000\000\000\000\000\000\n\150\001\206\012N\000\000\n\154\012R\001\218\000\000\n\158\n\162\000\000\n\166\000\000\001\206\000\000\000\000\012Z\015\166\001\218\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\n\174\000\000\000\000\012^\012b\n\178\012f\000\000\001\n\000\000\012z\013}\000\000\000\000\013}\000\000\012\134\n\186\000\000\000\000\001\n\000\000\000\000\000\000\000\000\004\157\000\000\000\000\000\000\013}\012\166\000\000\000\000\013}\012\170\012\230\002\"\013}\000\000\n\190\000\000\012\234\000\000\013}\000\000\n\194\013}\013}\000\000\013}\013}\000\000\012\242\002*\n\198\013}\005\014\000\000\000\000\013}\002\n\000\000\013}\000\000\013}\013}\000\000\000\000\007\129\007\129\000\000\000\000\000\000\007\129\0006\000:\000J\000\142\000\000\000\146\000\000\000\150\000\218\000\000\000\226\013}\000\242\013}\000\250\000\000\001\002\001\026\001\"\001&\000\000\000\000\000\000\013}\000\000\000\000\000\000\000\000\000\000\000\000\005\026\000\000\001.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0016\000\000\000\000\000\000\000\000\000\000\013}\013}\000\000\013}\013}\005\030\000\000\013}\000\000\000\000\000\000\000\000\000\000\000\000\001F\005&\000\000\000\000\000\000\000\000\013}\000\000\000\000\013}\013}\013}\013}\000\000\001J\000\000\000\000\013}\013}\013}\000\000\013}\013}\013}\001=\001=\001=\001=\000\000\001=\000\000\001=\001=\000\000\001=\000\000\001=\000\000\001=\000\000\001=\001=\001=\001=\000\000\000\000\004\233\000\000\020\202\004\233\000\000\000\000\000\000\000\000\000\000\001=\001=\001=\000\000\000\000\000\000\000\000\001=\000\000\004\233\000\000\000\000\001=\004\233\000\000\001=\004\233\004\233\000\000\001=\000\000\000\000\020\206\004\233\000\000\001=\004\233\004\233\000\000\004\233\004\233\000\000\001=\004\233\000\000\004\233\004\233\001=\000\000\004\233\000\000\000\000\004\233\000\000\004\233\004\233\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\000\000\000\000\000\000\000\000\000\000\000\004\233\001=\004\233\000\000\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\233\000\000\000\000\000\000\001=\000\000\000\000\004\233\000\000\001=\001\n\001=\000\000\000\000\001=\000\000\020\210\000\000\000\000\000\000\000\000\000\000\001=\000\000\000\000\001=\004\233\004\233\000\000\004\233\005\005\004\233\000\000\004\233\000\000\000\000\000\000\000\000\000\000\000\000\001=\004\233\000\000\000\000\001=\001=\004\233\004\237\000\000\004\233\004\237\004\233\000\000\000\000\000\000\021\138\000\000\004\233\004\233\004\233\000\000\004\233\004\233\004\233\000\000\004\237\000\000\000\000\000\000\004\237\000\000\000\000\004\237\004\237\000\000\000\000\000\000\000\000\000\000\004\237\000\000\000\000\004\237\004\237\000\000\004\237\004\237\000\000\000\000\004\237\000\000\004\237\004\237\000\000\000\000\004\237\000\000\000\000\004\237\000\000\004\237\004\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0006\007\166\007\174\000\142\000\000\000\146\000\000\007\242\0086\000\000\008>\004\237\008N\004\237\008V\000\000\008^\008j\001\"\008r\000\000\000\000\000\000\004\237\000\000\000\000\000\000\000\000\000\000\000\000\004\237\000\000\008z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008\130\000\000\000\000\000\000\000\000\000\000\004\237\004\237\000\000\004\237\005\t\004\237\000\000\004\237\000\000\000\000\000\000\000\000\000\000\000\000\008\146\004\237\013\209\000\000\000\000\013\209\004\237\000\000\000\000\004\237\000\000\004\237\000\000\000\000\008\158\000\000\000\000\004\237\004\237\004\237\013\209\004\237\004\237\004\237\013\209\000\000\000\000\n\218\013\209\000\000\000\000\000\000\000\000\000\000\013\209\000\000\000\000\013\209\013\209\000\000\013\209\013\209\000\000\000\000\n\226\000\000\013\209\n\238\000\000\000\000\013\209\000\000\000\000\013\209\000\000\013\209\013\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\209\000\000\013\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\209\000\000\000\000\000\000\000\000\000\000\000\000\n\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\000\000\000\000\000\000\000\013\209\013\209\000\000\013\209\000\000\n\254\000\000\013\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\209\000\000\013\209\000\000\000\000\000\000\000\000\000\000\013\209\013\209\013\209\000\000\013\209\013\209\013\209\nM\nM\nM\nM\000\000\nM\000\000\nM\nM\000\000\nM\000\000\nM\000\000\nM\000\000\nM\nM\nM\nM\000\000\000\000\001\137\000\000\000\000\001\137\000\000\000\000\000\000\000\000\000\000\nM\nM\nM\000\000\000\000\000\000\000\000\nM\000\000\001\137\000\000\000\000\nM\001\137\000\000\021\154\000\000\001\137\000\000\021\162\000\000\000\000\000\000\001\137\000\000\nM\001\137\001\137\000\000\001\137\001\137\000\000\nM\000\000\000\000\001\137\000\000\nM\000\000\001\137\000\000\000\000\001\137\000\000\001\137\001\137\nM\000\000\000\000\000\000\000\000\000\000\000\000\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\137\nM\001\137\000\000\nM\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\000\000\000\000\000\000\nM\000\000\000\000\000\000\000\000\nM\000\000\nM\000\000\000\000\nM\000\000\000\000\000\000\000\000\000\000\000\000\000\000\nM\000\000\000\000\nM\001\137\002>\000\000\001\137\001\137\000\000\000\000\001\137\000\000\000\000\000\000\000\000\000\000\000\000\nM\000\000\000\000\000\000\021\246\nM\001\137\000\000\000\000\001\137\001\137\001\137\001\137\000\000\000\000\000\000\000\000\002\230\001\137\001\137\000\000\001\137\001\137\001\137\n=\n=\n=\n=\000\000\n=\000\000\n=\n=\000\000\n=\000\000\n=\000\000\n=\000\000\n=\n=\n=\n=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\153\000\000\000\000\000\000\n=\n=\n=\000\000\000\000\000\000\000\000\n=\000\000\000\000\000\000\000\000\n=\000\000\013\153\000\000\000\000\000\000\000\000\000\000\000\000\013\234\000\000\000\000\000\000\n=\000\000\000\000\013\153\000\000\000\000\000\000\n=\000\000\013\153\013\153\000\000\n=\013\242\000\000\000\000\013\254\000\000\000\000\013\153\000\000\n=\013\153\000\000\013\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\n=\000\000\000\000\n=\013\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n=\000\000\000\000\000\000\000\000\n=\000\000\n=\014\n\000\000\n=\000\000\nA\nA\nA\nA\000\000\nA\n=\nA\nA\n=\nA\000\000\nA\000\000\nA\013\153\nA\nA\nA\nA\014\014\000\000\013\153\000\000\n=\000\000\000\000\000\000\021\158\n=\014\022\nA\nA\nA\000\000\013\153\000\000\000\000\nA\000\000\000\000\000\000\000\000\nA\000\000\000\000\021\250\000\000\000\000\000\000\013\153\013\153\000\000\000\000\000\000\000\000\nA\000\000\000\000\000\000\000\000\000\000\000\000\nA\000\000\000\000\000\000\000\000\nA\000\000\000\000\000\000\000\000\0006\007\166\007\174\000\142\nA\000\146\000\000\007\242\0086\000\000\008>\000\000\008N\000\000\008V\000\000\008^\008j\001\"\008r\000\000\000\000\000\000\000\000\nA\000\000\000\000\nA\000\000\000\000\000\000\022\002\008z\022\030\000\000\000\000\000\000\000\000\022*\nA\000\000\000\000\000\000\008\130\nA\000\000\nA\000\000\000\000\nA\000\000\000\000\000\000\000\000\000\000\000\000\022B\nA\000\000\000\000\nA\000\000\000\000\008\146\000\000\000\000\000\000\000\000\022n\000\000\002^\000\000\000\000\002\174\000\000\nA\000\000\008\158\000\000\000\000\nA\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002f\000\000\000\000\000\000\002\005\000\000\000\000\000\000\002\005\022\142\000\000\000\000\022\222\000\000\002n\000\000\000\000\002\005\002\005\000\000\002\206\002\214\000\000\000\000\022\246\000\000\002\005\000\000\000\000\023\002\002\142\008m\000\000\002v\023\014\002\134\002\005\000}\000\000\000\000\000}\000\000\023\026\000\000\000\000\023\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002f\002\150\000\000\002\005\000}\023\222\000\000\000\000\000}\000\000\023\246\000\000\000\000\002\005\002n\000\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\142\000\000\000\000\002v\000\000\002\134\000}\000\000\000\000\002\158\000\000\000\000\002\005\002\005\000\000\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\150\000\000\000}\002\005\000\000\000\000\002\005\002\005\002\005\002\005\000\000\000\000\000}\000\000\000\000\002\005\002\005\000\000\002\222\002\166\002\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\002\158\000\000\000\000\000}\000}\000\000\000\000\002~\000\000\000\000\000\000\000\000\000e\000\000\000\000\000e\000\000\000\000\000\000\000\000\000}\000\000\000\000\000}\000}\000}\000}\000\000\000\000\000\000\000e\000\000\000}\000}\000e\000}\002\166\000}\000e\000\000\000\000\000\000\000\000\000\000\002n\000\000\000\000\000e\000e\000\000\000e\000e\000\000\000\000\000\000\000\000\000e\000\000\000\000\000\000\000e\000\000\000\000\002v\000\000\002\134\000e\000]\000\000\000\000\000]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000]\000e\000\000\000e\000]\000\000\000\000\000\000\000]\000\000\000\000\000\000\000\000\000e\000]\000\000\000\000\000]\000]\000\000\000]\000]\000\000\000\000\000\000\000\000\000]\000\000\000\000\000\000\000]\000\000\000\000\002v\000\000\000]\000]\000\000\000\000\000e\000\000\000\000\000e\000e\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]\000e\000\000\000\000\000e\000e\000e\000e\000\000\000\000\000]\000\000\000\000\000e\000e\000\000\000e\000e\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000a\000\000\000\000\000a\000\000\000\000\000\000\000\000\000]\000\000\000\000\000]\000]\000]\000]\000\000\000\000\000\000\000a\000\000\000]\000]\000a\000]\000]\000]\000a\000\000\000\000\000\000\000\000\000\000\000a\000\000\000\000\000a\000a\000\000\000a\000a\000\000\000\000\000\000\000\000\000a\000\000\000\000\000\000\000a\000\000\000\000\002v\000\000\000a\000a\000q\000\000\000\000\000q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002f\000a\000\000\000a\000q\000\000\000\000\000\000\000q\000\000\000\000\000\000\000\000\000a\002n\000\000\000\000\000q\000q\000\000\000q\000q\000\000\000\000\000\000\000\000\000q\000\000\000\000\000\000\000q\000\000\000\000\002v\000\000\002\134\000q\000\000\000\000\000a\000\000\000\000\000a\000a\000\000\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\150\000\000\000q\000a\000\000\000\000\000a\000a\000a\000a\000\000\000\000\000q\000\000\000\000\000a\000a\000\000\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\000\000\000\000\000\000\000\000\000\000q\000\000\000\000\000q\000q\000\000\000\000\002~\000\000\000\000\000\000\000\000\000i\000\000\000\000\000i\000\000\000\000\000\000\000\000\000q\000\000\000\000\000q\000q\000q\000q\000\000\000\000\000\000\002f\000\000\000q\000q\000i\000q\000q\000q\000i\000\000\000\000\000\000\000\000\000\000\002n\000\000\000\000\000i\000i\000\000\000i\000i\000\000\000\000\000\000\000\000\000i\000\000\000\000\000\000\000i\000\000\000\000\002v\000\000\002\134\000i\000m\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\000\000\000\000\000\000\000\000\002f\000i\000\000\000i\000m\000\000\000\000\000\000\000m\000\000\000\000\000\000\000\000\000i\002n\000\000\000\000\000m\000m\000\000\000m\000m\000\000\000\000\000\000\000\000\000m\000\000\000\000\000\000\000m\000\000\000\000\002v\000\000\002\134\000m\000\000\000\000\000i\000\000\000\000\000i\000i\000\000\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\150\000\000\000m\000i\000\000\000\000\000i\000i\000i\000i\000\000\000\000\000m\000\000\000\000\000i\000i\000\000\000i\000i\000i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000m\000\000\000\000\000m\000m\000\000\000\000\002~\000\000\000\000\000\000\000\000\000u\000\000\000\000\000u\000\000\000\000\000\000\000\000\000m\000\000\000\000\000m\000m\000m\000m\000\000\000\000\000\000\002f\000\000\000m\000m\000u\000m\000m\000m\000u\000\000\000\000\000\000\000\000\000\000\002n\000\000\000\000\000u\000u\000\000\000u\000u\000\000\000\000\000\000\000\000\000u\000\000\000\000\000\000\002\142\000\000\000\000\002v\000\000\002\134\000u\002^\000\000\000\000\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002f\002\150\000\000\000u\000\133\000\000\000\000\000\000\000\133\000\000\000\000\000\000\000\000\000u\002n\000\000\000\000\000\133\000\133\000\000\000\133\002\214\000\000\000\000\000\000\000\000\000\133\000\000\000\000\000\000\002\142\000\000\000\000\002v\000\000\002\134\000\133\000\000\000\000\002\158\000\000\000\000\000u\000u\000\000\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\150\000\000\000\133\000u\000\000\000\000\000u\000u\000u\000u\000\000\000\000\000\133\000\000\000\000\000u\000u\000\000\000u\000u\000u\000\000\000\000\000\000\000\000\000\000\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\158\000\000\000\000\000\133\000\133\000\000\000\000\002~\000\000\000\000\000\000\000\000\002^\000\000\000\000\000y\000\000\000\000\000\000\000\000\000\133\000\000\000\000\000\133\000\133\000\133\000\133\000\000\000\000\000\000\002f\000\000\000\133\000\133\000y\002\222\002\166\000\133\000y\000\000\000\000\000\000\000\000\000\000\002n\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\002\142\000\000\000\000\002v\000\000\002\134\000y\002^\000\000\000\000\000\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\002f\002\150\000\000\000y\000\129\000\000\000\000\000\000\000\129\000\000\000\000\000\000\000\000\000y\002n\000\000\000\000\000\129\000\129\000\000\000\129\002\214\000\000\000\000\000\000\000\000\000\129\000\000\000\000\000\000\002\142\000\000\000\000\002v\000\000\002\134\000\129\000\000\000\000\002\158\000\000\000\000\000y\000y\000\000\000\000\002~\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\150\000\000\000\129\000y\000\000\000\000\000y\000y\000y\000y\000\000\000\000\000\129\000\000\000\000\000y\000y\000\000\000y\002\166\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\002\158\000\000\000\000\000\129\000\129\014Z\000\000\002~\000\000\000\000\004A\000\000\004A\000\000\000\000\004A\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\004A\000\000\000\129\000\129\000\000\000\129\002\166\000\129\000\000\004A\004A\000\000\000\000\004A\004A\000\000\000\000\000\000\000\000\004A\000\000\004A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004A\004A\000\000\000\000\004A\004A\004A\000\000\004A\004A\000\000\004A\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004A\004A\000\000\000\000\000\000\000\000\004A\000\000\000\000\004A\000\000\000\000\000\000\000\000\000\000\001\142\000\000\013v\004A\000\000\013z\000\000\000\000\000\000\000\000\000\000\004A\000\000\004A\000\000\004A\000\000\000\000\000\000\000\000\001\154\000\000\000\000\000\000\000\000\004A\000\000\000\000\000\000\013~\013\210\004A\000\000\014:\014R\000\000\000\000\004A\000\000\001\194\004A\001\198\000\000\000\000\000\000\000\000\004A\000\000\000\000\013\158\001\206\000\000\000\000\013\162\012R\001\218\000\000\013\166\013\170\000\000\013\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\013\178\000\000\000\000\000\000\000\000\013\182\000\000\000\000\001\n\000\000\000\000\000\000\000\000\000\000\001\142\000\000\013v\013\190\000\000\013z\000\000\000\000\000\000\000\000\000\000\005\245\000\000\014V\000\000\014r\000\000\000\000\000\000\000\000\001\154\000\000\000\000\000\000\000\000\013\194\000\000\000\000\000\000\013~\013\210\013\198\000\000\014:\014R\000\000\000\000\015N\000\000\001\194\013\202\001\198\000\000\000\000\000\000\000\000\002\n\000\000\000\000\013\158\001\206\000\000\000\000\013\162\012R\001\218\000\000\013\166\013\170\000\000\013\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\013\178\000\000\000\000\000\000\000\000\013\182\000\000\000\000\001\n\000\000\000\000\000\000\000\000\000\000\001\142\000\000\013v\013\190\000\000\013z\000\000\000\000\000\000\000\000\000\000\005\245\000\000\014V\000\000\014r\000\000\000\000\000\000\000\000\001\154\000\000\000\000\000\000\000\000\013\194\000\000\000\000\000\000\013~\013\210\013\198\000\000\014:\014R\000\000\000\000\014z\000\000\001\194\013\202\001\198\000\000\000\000\000\000\000\000\002\n\000\000\000\000\013\158\001\206\000\000\000\000\013\162\012R\001\218\000\000\013\166\013\170\000\000\013\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\013\178\000\000\000\000\000\000\000\000\013\182\000\000\000\000\001\n\000\000\000\000\000\000\000\000\000\000\001\142\000\000\013v\013\190\000\000\013z\000\000\000\000\000\000\000\000\000\000\005\245\000\000\014V\000\000\014r\000\000\000\000\000\000\000\000\001\154\000\000\000\000\000\000\000\000\013\194\000\000\000\000\000\000\013~\013\210\013\198\000\000\014:\014R\000\000\000\000\005a\000\000\001\194\013\202\001\198\000\000\000\000\000\000\000\000\002\n\000\000\000\000\013\158\001\206\000\000\000\000\013\162\012R\001\218\000\000\013\166\013\170\000\000\013\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\013\178\000\000\000\000\000\000\000\000\013\182\000\000\000\000\001\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\190\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\245\000\000\014V\003%\014r\000N\003%\000V\000\000\000f\003%\000\000\003%\000\000\013\194\000\000\000n\003%\003%\000\000\013\198\000\000\000\000\000\000\000\000\000\000\001\189\000\000\000\000\013\202\000\000\000\000\000\000\000\000\000\000\002\n\000\000\000\000\000\000\000\000\000v\003%\000\000\000\000\000\000\003%\0006\000:\000J\000\142\000\000\000\146\000\000\000\150\000\218\000\000\000\226\000\000\000\242\000\000\000\250\003%\001\002\001\026\001\"\001&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003%\000\134\000\000\000\000\000\000\001.\000\000\000\000\003%\000\000\000\000\000\000\003%\003%\000\000\000\000\0016\000\000\000\000\000\000\000\000\000\000\003%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003!\003%\000\154\003!\000\162\001F\000\178\003!\000\000\003!\000\000\003%\000\000\000\186\003!\003!\003%\000\000\000\000\001J\000\000\000\000\000\000\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\194\003!\000\000\000\000\000\000\003!\000\000\000\000\000\000\000\000\003%\000\000\000\000\003%\003%\000\000\000\000\003%\000\000\000\000\000\000\003!\003%\003%\000\000\000\000\000\000\003%\000\000\000\000\000\000\000\000\000\000\003!\000\210\000\000\000\000\000\000\000\000\000\000\000\000\003!\004B\000\000\000\000\003!\003!\000\000\000\000\000\000\000\000\001\161\000\000\000\000\001\161\003!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003Q\000\000\003!\000\000\000\000\000\000\001\161\000\000\000\000\000\000\001\161\000\000\003!\000\000\001\161\000\000\000\000\003!\000\000\000\000\001\161\000\000\000\000\001\161\001\161\000\000\001\161\001\161\000\000\000\000\000\000\000\000\001\161\000\000\000\000\000\000\001\161\000\000\000\000\001\161\000\000\001\161\001\161\000\000\000\000\000\000\000\000\000\000\003!\000\000\000\000\003!\003!\000\000\000\000\003!\000\000\000\000\000\000\000\000\003!\003!\001\161\000\000\001\161\003!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\161\000\000\000\000\000\000\0006\000:\000J\000\142\007\162\000\146\n:\000\150\000\218\n>\000\226\000\000\000\242\000\000\000\250\nB\001\002\001\026\001\"\001&\nF\000\000\001\161\011*\000\000\001\161\000\000\000\000\000\000\001\161\000\000\001\142\001.\013v\000\000\000\000\013z\000\000\000\000\000\000\000\000\000\000\000\000\0016\000\000\001\161\000\000\001\161\000\000\000\000\000\000\001\154\000\000\0112\001\161\001\161\000\000\001\161\001\161\001\161\013~\013\210\000\000\001F\014:\014R\000\000\000\000\000\000\001R\001\194\000\000\001\198\000\000\000\000\000\000\000\000\001J\000\000\000\000\013\158\001\206\000\000\000\000\013\162\012R\001\218\000\000\013\166\013\170\000\000\013\174\000\000\012V\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\013\178\000\000\000\000\000\000\000\000\013\182\000\000\000\000\001\n\000\000\000\000\001\n\000\000\000\000\001\142\000\000\001\146\013\190\000\000\001\150\000\000\000\000\000\000\000\000\000\000\005\245\000\000\000\000\011\234\014r\001V\000\000\000\000\000\000\001\154\000\000\000\000\001\158\000\000\013\194\013R\000\000\000\000\001\174\001\178\013\198\001\186\000\000\013r\000\000\000\000\001\201\000\000\001\194\013\202\001\198\000\000\000\000\000\000\000\000\002\n\000\000\001\137\001\202\001\206\001\137\014b\001\210\001\214\001\218\000\000\001\222\001\226\000\000\001\230\000\000\000\000\000\000\000\000\000\000\001\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\000\000\001\234\000\000\000\000\000\000\001\137\001\238\000\000\000\000\001\n\000\000\001\137\001\137\000\000\000\000\000\000\000\000\000\000\001\246\000\000\013\181\001\137\000\000\013\181\001\137\000\000\001\137\001\137\001\250\008}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\181\000\000\001\254\000\000\013\181\000\000\000\000\005\146\002\002\001\137\000\000\001\137\000\000\008}\013\181\000\000\000\000\002\006\013\181\000\000\013\181\013\181\000\000\002\n\005\154\000\000\000\000\005\166\000\000\000\000\013\181\000\000\000\000\013\181\000\000\013\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\0026\000\000\001\137\001\137\000\000\000\000\001\137\000\000\013\181\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\137\013\181\000\000\001\137\001\137\000\000\001\137\000\000\005\178\000\000\000\000\002\242\001\137\001\137\000\000\001\137\001\137\001\137\000\000\000\000\008B\005\205\000\000\000\000\000\000\000\000\000\000\013\181\013\181\000\000\013\181\000\000\005\182\005\205\013\181\000\000\000\000\000\000\t\"\005\205\000\000\005\205\005\190\005\205\000\000\000\000\tf\005\205\005\205\000\000\000\000\005\205\013\181\005\205\t\166\005\205\005\205\000\000\013\181\005\205\005\205\005\205\013\181\013\181\013\181\000\000\005\205\005\205\000\000\005\205\000\000\005\205\000\000\000\000\005\205\005\205\000\000\005\205\005\205\005\205\000\000\000\000\005\205\000>\005\205\000\000\005\205\005\205\000\000\000\000\005\205\000\000\005\205\000\000\005\205\005\205\t\250\000\000\nQ\000\000\005\205\000>\000\000\005\205\n&\005\205\000\000\005\205\005\205\000>\005\205\005\205\000\000\005\205\000\000\000\000\005\205\000>\000\000\000\000\000\000\005\205\005\205\nQ\000\000\005\205\000\000\005\205\005\205\005\205\000\000\005\205\005\205\005\205\005\205\000\000\005\205\000\000\000\000\000\000\005\205\005\205\000\000\005\205\005\205\005\205\005\205\005\205\005\205\005\205\005\205\000\000\005\205\005\205\005\205\005\205\005\205\005\205\005\205\000\000\005\205\005\205\005\205\005\205\000\000\005\205\005\205\000\000\005\205\005\205\000\000\000\000\011^\000\000\005\205\011\174\005\205\005\205\000\000\000\000\005\205\005\205\nQ\000\000\005\205\000\000\000\000\000\000\005\205\005\205\011f\000\000\005\205\000\000\002\021\000\000\005\205\005\205\002\021\000\000\000\000\000\000\000\000\000\000\011n\000\000\000\000\002\021\002\021\000\000\011\190\011\198\000\000\000\000\000\000\000\000\002\021\000\000\001%\000\000\011\142\001%\000\000\011v\000\000\011\134\002\021\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011f\000\000\000\000\000\000\001%\000\000\000\000\000\000\001%\000\000\011\150\000\000\002\021\000\000\011n\000\000\000\000\001%\001%\000\000\001%\001%\002\021\000\000\000\000\000\000\001%\000\000\000\000\000\000\011\142\000\000\000\000\011v\000\000\011\134\001%\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\158\000\000\000\000\002\021\000\000\000\000\000\000\011~\011\150\000\000\001%\000\000\001\013\000\000\000\000\001\013\000\000\000\000\000\000\000\000\001%\000\000\000\000\002\021\000\000\002\021\000\000\000\000\000\000\000\000\001\013\000\000\002\021\002\021\001\013\011\206\011\166\002\021\001\013\000\000\000\000\000\000\000\000\000\000\011n\000\000\011\158\001\013\001\013\001%\001\013\001\013\000\000\011~\000\000\000\000\001\013\000\000\001\005\000\000\001\013\001\005\000\000\011v\000\000\011\134\001\013\000\000\000\000\001%\000\000\001%\000\000\000\000\000\000\000\000\001\005\000\000\001%\001%\001\005\001%\011\166\001%\001\005\000\000\001\013\000\000\001\013\000\000\001\005\000\000\000\000\001\005\001\005\000\000\001\005\001\005\001\013\000\000\000\000\000\000\001\005\000\000\000\000\000\000\001\005\000\000\000\000\011v\000\000\001\005\001\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\013\000\000\000\000\001\013\000\000\000\000\000\000\011~\001\005\000\000\001\005\000\000\001\t\000\000\000\000\001\t\000\000\000\000\000\000\000\000\001\005\000\000\000\000\001\013\000\000\001\013\000\000\000\000\000\000\000\000\001\t\000\000\001\013\001\013\001\t\001\013\001\013\001\013\001\t\000\000\000\000\000\000\000\000\000\000\001\t\000\000\001\005\001\t\001\t\001\005\001\t\001\t\000\000\011~\000\000\000\000\001\t\000\000\001\025\000\000\001\t\001\025\000\000\011v\000\000\001\t\001\t\000\000\000\000\001\005\000\000\001\005\000\000\000\000\000\000\000\000\011f\000\000\001\005\001\005\001\025\001\005\001\005\001\005\001\025\000\000\001\t\000\000\001\t\000\000\011n\000\000\000\000\001\025\001\025\000\000\001\025\001\025\001\t\000\000\000\000\000\000\001\025\000\000\000\000\000\000\001\025\000\000\000\000\011v\000\000\011\134\001\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\t\000\000\000\000\001\t\000\000\000\000\000\000\011~\011\150\000\000\001\025\000\000\001\017\000\000\000\000\001\017\000\000\000\000\000\000\000\000\001\025\000\000\000\000\001\t\000\000\001\t\000\000\000\000\000\000\000\000\011f\000\000\001\t\001\t\001\017\001\t\001\t\001\t\001\017\000\000\000\000\000\000\000\000\000\000\011n\000\000\001\025\001\017\001\017\001\025\001\017\001\017\000\000\011~\000\000\000\000\001\017\000\000\001\021\000\000\001\017\001\021\000\000\011v\000\000\011\134\001\017\000\000\000\000\001\025\000\000\001\025\000\000\000\000\000\000\000\000\011f\000\000\001\025\001\025\001\021\001\025\001\025\001\025\001\021\000\000\001\017\000\000\001\017\000\000\011n\000\000\000\000\001\021\001\021\000\000\001\021\001\021\001\017\000\000\000\000\000\000\001\021\000\000\000\000\000\000\001\021\000\000\000\000\011v\000\000\011\134\001\021\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\017\000\000\000\000\001\017\000\000\000\000\000\000\011~\011\150\000\000\001\021\000\000\001\029\000\000\000\000\001\029\000\000\000\000\000\000\000\000\001\021\000\000\000\000\001\017\000\000\001\017\000\000\000\000\000\000\000\000\011f\000\000\001\017\001\017\001\029\001\017\001\017\001\017\001\029\000\000\000\000\000\000\000\000\000\000\011n\000\000\001\021\001\029\001\029\001\021\001\029\001\029\000\000\011~\000\000\000\000\001\029\000\000\011^\000\000\011\142\001-\000\000\011v\000\000\011\134\001\029\000\000\000\000\001\021\000\000\001\021\000\000\000\000\000\000\000\000\011f\000\000\001\021\001\021\001-\001\021\001\021\001\021\001-\000\000\011\150\000\000\001\029\000\000\011n\000\000\000\000\001-\001-\000\000\001-\011\198\001\029\000\000\000\000\000\000\001-\000\000\000\000\000\000\011\142\000\000\000\000\011v\000\000\011\134\001-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\158\000\000\000\000\001\029\000\000\000\000\000\000\011~\011\150\000\000\001-\000\000\011^\000\000\000\000\001!\000\000\000\000\000\000\000\000\001-\000\000\000\000\001\029\000\000\001\029\000\000\000\000\000\000\000\000\011f\000\000\001\029\001\029\001!\001\029\001\029\001\029\001!\000\000\000\000\000\000\000\000\000\000\011n\000\000\011\158\001!\001!\001-\001!\001!\000\000\011~\000\000\000\000\001!\000\000\011^\000\000\011\142\001)\000\000\011v\000\000\011\134\001!\000\000\000\000\001-\000\000\001-\000\000\000\000\000\000\000\000\011f\000\000\001-\001-\001)\011\206\011\166\001-\001)\000\000\011\150\000\000\001!\000\000\011n\000\000\000\000\001)\001)\000\000\001)\011\198\001!\000\000\000\000\000\000\001)\000\000\000\000\000\000\011\142\000\000\000\000\011v\000\000\011\134\001)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\158\000\000\000\000\001!\000\000\000\000\000\000\011~\011\150\000\000\001)\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\001!\000\000\000\000\000\000\000\000\000\000\000\000\001!\001!\000\000\001!\011\166\001!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\142\011\158\001\146\000\000\001)\001\150\000\000\000\000\011~\000\000\000\000\000\000\000\000\000\000\008}\000\000\000\000\000\000\000\000\000\000\001\154\000\000\000\000\001\158\001)\000\000\001)\000\000\000\000\001\174\001\178\000\000\001\186\001)\001)\000\000\001)\011\166\001)\001\194\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\202\001\206\000\000\000\000\001\210\001\214\001\218\000\000\001\222\001\226\001\142\001\230\001\146\000\000\000\000\001\150\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018F\000\000\000\000\001\234\000\000\000\000\001\154\000\000\001\238\001\158\000\000\001\n\000\000\000\000\000\000\001\174\001\178\000\000\001\186\000\000\001\246\000\000\000\000\000\000\000\000\001\194\000\000\001\198\000\000\000\000\001\250\000\000\000\000\000\000\000\000\001\202\001\206\000\000\000\000\001\210\001\214\001\218\001\254\001\222\001\226\000\000\001\230\000\000\002\002\020\218\000\000\008}\000\000\000\000\000\000\000\000\000\000\002\006\000\000\000\000\000\000\020\222\001\234\002\n\000\000\000\000\000\000\001\238\000\000\020\226\001\n\020\230\000\000\000\000\000\000\000\000\020\234\000\000\000\000\001\246\000\000\020\238\000\000\000\000\020\250\000\000\000\000\000\000\020\254\001\250\000\000\001\142\000\000\001\146\021\002\000\000\001\150\000\000\000\000\000\000\000\000\001\254\000\000\000\000\000\000\023\"\000\000\002\002\n\129\000\000\021\006\001\154\000\000\000\000\001\158\000\000\002\006\000\000\000\000\000\000\001\174\007\030\002\n\001\186\000\000\000\000\000\000\000\000\000\000\000\000\001\194\000\000\001\198\n\129\000\000\021\n\000\000\000\000\021\014\000\000\001\202\001\206\000\000\000\000\001\210\001\214\001\218\000\000\001\222\001\226\021\018\001\230\000\000\000\000\000\000\021\022\001\n\021\026\000\000\021\030\021\"\000\000\021&\000\000\000\000\000\000\000\000\001\234\021*\000\000\000\000\021.\001\238\000\000\000\000\001\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\246\000\000\0212\000\000\000\000\000\000\0216\021:\n\129\001\142\001\250\001\146\000\000\000\000\001\150\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\254\000\000\000\000\000\000\000\000\000\000\002\002\001\154\000\000\000\000\001\158\000\000\000\000\000\000\000\000\002\006\001\174\001\242\000\000\001\186\000\000\002\n\000\000\000\000\000\000\000\000\001\194\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\202\001\206\000\000\000\000\001\210\001\214\001\218\000\000\001\222\001\226\000\000\001\230\000\000\000\000\000\000\006\006\000\000\000\000\000\000\000\000\0049\000\000\0049\000\000\000\000\0049\000\000\001\234\000\000\000\000\000\000\000\000\001\238\000\000\000\000\001\n\000\000\000\000\000\000\000\000\0049\000\000\000\000\0049\001\246\000\000\000\000\000\000\000\000\0049\0049\000\000\0049\000\000\001\250\000\000\000\000\000\000\000\000\0049\000\000\0049\000\000\000\000\000\000\000\000\001\254\000\000\000\000\0049\0049\020\218\002\002\0049\0049\0049\000\000\0049\0049\000\000\0049\002\006\000\000\020\222\000\000\000\000\000\000\002\n\000\000\000\000\000\000\020\226\000\000\020\230\000\000\000\000\0049\000\000\020\234\000\000\000\000\0049\000\000\020\238\0049\000\000\020\250\000\000\000\000\000\000\020\254\000\000\000\000\0049\000\000\014\166\021\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022J\000\000\000\000\000\000\000\000\021\006\014\174\000\000\0049\000\000\000\000\000\000\000\000\000\000\0049\000\000\000\000\000\000\000\000\000\000\014\182\000\000\000\000\0049\000\000\000\000\014\246\014\254\n\129\0049\021\n\000\000\000\000\021\014\000\000\000\000\014\214\000\000\000\000\014\190\000\000\014\206\000\000\000\000\000\000\021\018\000\000\000\000\000\000\000\000\021\022\001\n\021\026\000\000\021\030\021\"\020\218\021&\000\000\000\000\000\000\000\000\014\222\021*\000\000\000\000\021.\000\000\020\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\226\000\000\020\230\000\000\000\000\0212\000\000\020\234\000\000\0216\021:\n\129\020\238\000\000\000\000\020\250\000\000\000\000\000\000\020\254\000\000\000\000\000\000\000\000\014\230\021\002\000\000\000\000\000\000\000\000\000\000\014\198\000\000\000\000\000\000\000\000\024J\000\000\000\000\n\173\000\000\021\006\005\205\000\000\005I\005\205\000Z\000\000\000\000\005\205\000\000\005\205\000\000\000\000\000\000\000\000\005\205\005\205\000\000\015\006\014\238\000\000\000\000\000\000\n\173\000\000\021\n\000\000\005\205\021\014\005\205\005\205\000\166\005\205\000\230\005\205\000\000\005\205\000\000\005\205\005\205\021\018\005\205\005\205\005\205\005\205\021\022\001\n\021\026\000\000\021\030\021\"\000\000\021&\000\000\000\000\000\000\000\000\000\000\021*\005\205\000\000\021.\000\000\004\006\000\000\005\205\000\000\005\205\000>\005\205\000\000\005\205\000\000\000\000\000\000\000\000\0212\000\000\000\000\005\205\0216\021:\n\173\005\205\005\205\005\205\000\000\005\205\000\000\004\218\000\000\007N\000\000\005\205\000>\000\000\000>\005\205\000\000\005\205\000\000\000\000\000\000\005\205\000\000\005\205\000\000\005\205\000\000\005\205\005\205\005\205\005\205\005\205\000\000\000\000\000\000\000\000\005\205\005\205\000\000\005\205\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\205\000\000\005\205\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\205\000\000\005\205\000\000\000\000\005\205\000\000\005\205\000\000\000\000\005\205\000\000\000\000\005\205\005\205\000\000\000\000\005\205\000\000\000\000\000\000\000\000\005\205\005\205\000\000\000\000\000\000\005\205\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\205\000\000\005\205\005\205\005\205\005\205\005\205\005\205\000\000\005\205\000\000\000\000\005\205\005\205\005\205\005\205\001\142\005\205\001\162\005\205\000\000\001\166\000\000\000\000\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\001\158\000\000\000\000\000\000\000\000\000\000\001\170\001\190\000\000\001\186\000\000\000\000\000\000\000\000\000\000\000\000\001\194\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005R\001\206\000\000\000\000\005V\001\214\001\218\000\000\005Z\005^\001\142\005b\001\162\000\000\000\000\001\166\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005f\000\000\000\000\001\154\000\000\005j\001\158\000\000\001\n\000\000\000\000\000\000\001\170\007\006\000\000\001\186\000\000\005r\000\000\000\000\000\000\000\000\001\194\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005R\001\206\000\000\000\000\005V\001\214\001\218\005v\005Z\005^\000\000\005b\000\000\005z\000\000\000\000\005\205\000\000\000\000\005\205\003.\000\000\005~\005\205\000\000\005\205\000\000\005f\002\n\000\000\005\205\005\205\005j\005\205\000\000\001\n\005\205\003r\000\000\000\000\005\205\000\000\005\205\000\000\005r\000\000\005\205\005\205\005\205\005\205\003\178\000\000\000\000\005\205\005\205\005\205\000\000\000\000\005\205\000\000\005\205\005\205\000\000\000\000\000\000\000\000\005v\000\000\000\000\000\000\000\000\005\205\005z\000\000\005\205\005\205\000\000\000\000\000\000\000\000\000\000\005~\000\000\000>\005\205\000\000\005\205\002\n\005\205\000\000\000\000\005\205\000\000\000\000\005\205\000\000\000\000\000\000\005\205\005\205\000>\000\000\000\000\005\205\005\205\000\000\000\000\000\000\005\205\000\000\000\000\005\205\000\000\000>\000\000\005\205\005\205\000\000\005\205\000\000\000\000\000\000\000\181\000\000\005\205\005\205\000\000\000\000\005\205\005\205\000\000\000\000\000\000\005\205\000\000\005\205\000\000\000\000\005\205\000\000\014\174\000\000\000\000\000\000\000\000\005\205\000\000\000\000\005\205\000\000\005\205\000\000\000\000\000\000\014\182\000\000\000\000\000\000\005\205\000\000\000\181\000\181\000\000\005\205\005\205\000\000\000\000\005\205\005\205\000\000\014\214\005\205\000\000\014\190\000\000\014\206\005\205\005\205\000\000\000\000\000\000\005\205\000\000\000\000\005\205\005\205\000\000\000\000\005\205\000\000\001\142\000\000\001\162\005\205\005\205\001\166\014\222\005\205\005\205\000\000\000\000\005\205\000\000\000\000\000\000\000\000\005\205\005\205\000\000\000\000\001\154\005\205\000\000\001\158\000\000\000\000\000\000\000\000\000\000\001\170\005n\000\000\001\186\000\000\000\000\000\000\000\000\000\000\000\000\001\194\000\000\001\198\000\000\000\000\014\230\000\000\000\000\000\000\000\000\005R\001\206\014\198\000\000\005V\001\214\001\218\000\000\005Z\005^\000\000\005b\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\000\000\000\005f\000\000\000\000\000\181\014\238\005j\000\000\000\000\001\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005v\000\000\000\000\000\000\000\000\000\000\005z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005~\000\000\0006\000:\000J\000\142\002\n\000\146\n:\000\150\000\218\n>\000\226\000\000\000\242\024\202\000\250\nB\001\002\001\026\001\"\001&\nF\024\206\000\000\000\000\000\000\000\000\001\142\000\000\nv\000\000\000\000\nz\001.\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0016\000\000\000\000\001\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n~\011\214\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\001\194\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\150\001\206\001J\000\000\n\154\001\214\001\218\000\000\n\158\n\162\001\142\n\166\nv\000\000\000\000\nz\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\170\n\174\000\000\000\000\001\154\000\000\n\178\000\000\000\000\001\n\000\000\000\000\000\000\n~\n\130\000\000\000\000\001\n\n\186\000\000\000\000\000\000\004\137\001\194\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\150\001\206\000\000\000\000\n\154\001\214\001\218\n\190\n\158\n\162\001\142\n\166\nv\n\194\000\000\nz\000\000\000\000\000\000\000\000\000\000\000\000\n\198\000\000\000\000\000\000\n\170\n\174\002\n\000\000\001\154\000\000\n\178\000\000\000\000\001\n\000\000\000\000\000\000\n~\n\182\000\000\000\000\000\000\n\186\000\000\000\000\000\000\000\000\001\194\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\150\001\206\000\000\000\000\n\154\001\214\001\218\n\190\n\158\n\162\001\142\n\166\013v\n\194\000\000\013z\000\000\000\000\000\000\000\000\000\000\000\000\n\198\000\000\000\000\000\000\n\170\n\174\002\n\000\000\001\154\000\000\n\178\000\000\000\000\001\n\000\000\000\000\000\000\013~\013\138\000\000\000\000\000\000\n\186\000\000\000\000\000\000\000\000\001\194\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\158\001\206\000\000\000\000\013\162\001\214\001\218\n\190\013\166\013\170\001\142\013\174\013v\n\194\000\000\013z\000\000\000\000\000\000\000\000\000\000\000\000\n\198\000\000\000\000\000\000\n\170\013\178\002\n\000\000\001\154\000\000\013\182\000\000\000\000\001\n\000\000\000\000\000\000\013~\013\186\000\000\000\000\000\000\013\190\000\000\000\000\000\000\000\000\001\194\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\158\001\206\000\000\000\000\013\162\001\214\001\218\013\194\013\166\013\170\001\142\013\174\013v\013\198\000\000\013z\000\000\000\000\000\000\000\000\000\000\000\000\013\202\000\000\000\000\000\000\n\170\013\178\002\n\000\000\001\154\000\000\013\182\000\000\000\000\001\n\000\000\000\000\000\000\013~\013\210\000\000\000\000\000\000\013\190\000\000\000\000\000\000\000\000\001\194\000\000\001\198\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\158\001\206\000\000\000\000\013\162\001\214\001\218\013\194\013\166\013\170\000\000\013\174\000\000\013\198\000\000\000\000\000\000\000\000\008u\000\000\000\000\000\000\013\202\000\000\000\000\000\000\n\170\013\178\002\n\000\000\008u\000\000\013\182\000\000\000\000\001\n\000\000\000\000\008u\000\000\008u\000\000\000\000\000\000\013\190\008u\000\000\000\000\000\000\000\000\008u\000\000\000\000\008u\000\000\000\000\023\030\008u\021\166\000\000\000\000\000\000\000\000\008u\000\000\000\000\013\194\000\000\020\222\000\000\000\000\000\000\013\198\000\000\000\000\000\000\020\226\000\000\020\230\008u\000\000\013\202\000\000\020\234\000\000\000\000\000\000\002\n\020\238\000\000\000\000\020\250\000\000\000\000\000\000\020\254\000\000\000\000\000\000\000\000\000\000\021\002\000\000\000\000\008u\000\000\000\000\008u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021\006\023>\008u\000\000\000\000\000\000\000\000\008u\008u\008u\000\000\008u\008u\000\000\008u\000\000\000\000\000\000\000\000\000\000\008u\000\000\000\000\008u\000\000\021\n\000\000\000\000\021\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008u\000\000\021\018\000\000\008u\008u\000\000\021\022\001\n\021\026\000\000\021\030\021\"\007\233\021&\000\000\000\000\000\000\000\000\000\000\021*\000\000\000\000\021.\000\000\007\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\233\000\000\007\233\000\000\000\000\0212\000\000\007\233\000\000\0216\021:\000\000\007\233\000\000\000\000\007\233\000\000\022.\000\000\007\233\000\000\000\000\000\000\000\000\000\000\007\233\000\000\000\000\000\000\020\222\000\000\n:\000\000\000\000\n>\000\000\000\000\020\226\024\222\020\230\nB\007\233\023>\000\000\020\234\nF\024\226\000\000\000\000\020\238\000\000\000\000\020\250\000\000\000\000\000\000\020\254\000\000\000\000\000\000\000\000\000\000\021\002\000\000\000\000\000\000\007\233\000\000\000\000\007\233\000\000\000\000\000\000\016f\000\000\000\000\000\000\000\000\021\006\000\000\000\000\007\233\000\000\000\000\000\000\000\000\007\233\007\233\007\233\016j\007\233\007\233\000\000\007\233\000\000\000\000\000\000\000\000\000\000\007\233\000\000\000\000\007\233\021\n\000\000\000\000\021\014\000\000\000\000\001\206\000\000\000\000\000\000\015\166\001\218\000\000\000\000\007\233\021\018\000\000\000\000\007\233\007\233\021\022\001\n\021\026\000\000\021\030\021\"\022F\021&\000\000\000\000\000\000\000\000\000\000\021*\000\000\000\000\021.\000\000\020\222\000\000\001\n\000\000\000\000\000\000\000\000\004\157\020\226\000\000\020\230\000\000\000\000\0212\000\000\020\234\000\000\0216\021:\000\000\020\238\000\000\000\000\020\250\000\000\020\218\000\000\020\254\000\000\000\000\000\000\000\000\000\000\021\002\000\000\000\000\000\000\020\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\226\000\000\020\230\000\000\021\006\008\209\008\209\020\234\000\000\000\000\008\209\000\000\020\238\000\000\000\000\020\250\000\000\000\000\000\000\020\254\000\000\000\000\000\000\000\000\000\000\021\002\000\000\000\000\000\000\021\n\000\000\000\000\021\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\022\226\000\000\000\000\021\018\000\000\000\000\000\000\000\000\021\022\001\n\021\026\000\000\021\030\021\"\000\000\021&\000\000\000\000\000\000\000\000\000\000\021*\000\000\000\000\021.\021\n\000\000\000\000\021\014\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0212\021\018\000\000\000\000\0216\021:\021\022\001\n\021\026\000\000\021\030\021\"\020\218\021&\000\000\000\000\000\000\000\000\000\000\021*\000\000\000\000\021.\000\000\020\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\020\226\000\000\020\230\000\000\000\000\0212\000\000\020\234\000\000\0216\021:\000\000\020\238\000\000\000\000\020\250\000\000\000\000\000\000\020\254\000\000\000\000\000\000\000\000\000\000\021\002\000\000\000\000\000\000\000\000\000\000\000\000\004I\004I\004I\004I\000\000\004I\000\000\004I\004I\023\226\004I\000\000\004I\000\000\004I\000\000\004I\004I\004I\004I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001Z\000\000\000\000\004I\000\000\021\n\000\000\000\000\021\014\000\000\000\000\000\000\000\000\000\000\004I\000\000\000\000\000\000\000\000\000\000\021\018\000\000\000\000\000\000\000\000\021\022\001\n\021\026\000\000\021\030\021\"\000\000\021&\000\000\004I\000\000\000\000\000\000\021*\000\000\004I\021.\000\000\000\000\000\000\000\000\000\000\000\000\004I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0212\000\000\000\000\000\000\0216\021:\0006\000:\000J\000\142\000\000\000\146\000\000\000\150\000\218\000\000\000\226\000\000\000\242\000\000\000\250\000\000\001\002\001\026\001\"\001&\000\000\0006\000:\000J\000\142\000\000\000\146\004I\000\150\000\218\000\000\000\226\001.\000\242\000\000\000\250\000\000\001\002\001\026\001\"\001&\000\000\000\000\0016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001.\000\000\000\000\001\153\000\000\000\000\001\153\000\000\000\000\000\000\001F\0016\000\000\000\000\000\000\000\000\001R\004I\000\000\000\000\000\000\001\153\000\000\000\000\001J\001\153\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\000\000\001\153\000\000\001R\000\000\001\153\000\000\001\153\001\153\000\000\000\000\001J\000\000\000\000\000\000\000\000\000\000\001\153\000\000\000\000\001\153\000\000\001\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\153\000\000\000\000\0006\000:\000J\000\142\001V\000\146\001\n\000\150\000\218\001\153\000\226\000\000\000\242\000\000\000\250\000\000\001\002\001\026\001\"\001&\000\000\000\000\000\000\000\000\000\000\001V\000\000\000\000\012\013\000\000\000\000\000\000\001.\000\000\000\000\001\153\005\226\000\000\001\153\000\000\000\000\000\000\001\153\0016\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\001\153\000\000\000\000\001F\000\000\000\000\005\234\000\000\000\000\001R\001\153\001\153\001\153\000\000\000\000\000\000\000\000\001J\000\000\000\000\000\000\025\134\004>\0006\000:\000J\000\142\000\000\000\146\000\000\000\150\000\218\000\000\000\226\000\000\000\242\000\000\000\250\000\000\001\002\001\026\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\001.\000\000\000\000\001\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0016\000\000\000\000\000\000\000\000\0006\000:\000J\000\142\000\000\000\146\025\138\000\150\000\218\000\000\000\226\000\000\000\242\000\000\000\250\001F\001\002\001\026\001\"\001&\006:\000\000\000\000\006\138\000\000\000\000\000\000\003I\000\000\001J\002%\000\000\001.\004:\004>\000\000\000\000\000\000\006B\000\000\000\000\000\000\002\013\0016\000\000\000\000\000\000\000\237\000\000\000\000\000\237\000\000\006J\000\000\000\000\000\000\002\013\000\000\006\154\006\162\000\000\000\000\000\000\001F\000\000\006B\000\000\000\000\006j\000\237\000\000\006R\000\000\006b\000\000\000\000\000\000\001J\000\000\006J\000\000\025\134\004>\000\237\000\000\000\237\000\237\000\000\000\000\004J\000\213\000\000\000\000\000\213\006r\006j\000\000\000\000\006R\000\000\006b\000\000\000\000\000\000\000\000\000\000\002\013\000\000\000\213\000\000\000\000\000\000\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006r\006J\000\000\000\000\000\000\000\213\000\000\000\213\000\213\000\000\000\000\006z\000\237\000\000\002\013\000\000\025\146\000\213\006Z\000\000\006R\000\000\006b\000\000\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\013\000\000\006z\000\000\000\000\000\237\000\000\000\213\000\000\006Z\006\170\006\130\002\013\000\000\000\000\000\000\000\000\000\000\000\205\000\213\000\000\000\205\000\000\000\000\000\000\000\000\000\000\000\237\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\205\000\237\006\130\000\237\000\205\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000\213\000\000\000\205\000\000\006Z\000\000\000\205\000\000\000\205\000\205\000\000\000\000\000\000\000\209\000\000\000\000\000\209\000\000\000\205\000\000\000\000\006R\000\213\000\205\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\209\000\213\000\213\000\213\000\209\000\000\000\000\000\000\000\000\000\225\000\000\000\000\000\225\000\205\000\209\000\000\000\000\000\000\000\209\000\000\000\209\000\209\000\000\000\000\000\000\000\205\000\000\006B\000\000\000\000\000\209\000\225\000\000\006R\000\000\000\209\000\000\000\000\000\000\000\000\000\000\006J\000\000\000\000\000\000\000\225\000\000\000\225\000\225\000\000\000\000\000\205\000\000\000\000\000\205\000\000\000\209\000\225\006Z\000\000\006R\000\000\006b\000\000\000\000\000\000\000\000\000\217\000\209\000\000\000\217\000\000\000\000\000\000\000\000\000\000\000\205\000\000\000\000\000\000\000\000\000\000\000\000\006r\000\000\006B\000\205\000\205\000\205\000\217\000\000\000\000\000\000\000\000\000\209\000\225\000\000\000\209\000\000\006J\000\000\006Z\000\000\000\217\000\000\000\217\000\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\000\006R\000\209\006b\000\225\000\000\000\000\000\225\000\000\000\000\000\000\006Z\000\209\000\209\000\209\000\221\000\000\000\000\000\221\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\000\000\000\000\000\000\225\000\000\000\000\000\000\006B\000\000\000\000\000\217\000\221\000\000\000\225\000\225\000\225\000\229\000\000\000\000\000\229\000\000\006J\000\000\000\000\000\000\000\221\000\000\000\221\000\221\000\000\000\000\000\000\000\000\000\000\006B\000\000\000\217\000\221\000\229\000\217\006R\000\000\006b\006Z\000\000\000\000\000\000\000\000\006J\000\000\000\000\000\000\000\229\000\000\000\229\000\229\000\000\000\000\000\000\006:\000\000\000\217\000\245\006r\006j\000\000\000\000\006R\000\000\006b\000\000\000\217\000\217\000\217\000\000\000\221\000\000\006B\000\000\000\000\000\000\000\245\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006r\006J\000\000\000\000\000\000\000\245\000\000\000\245\006\162\000\000\000\000\000\221\000\229\000\000\000\221\000\000\000\000\006j\006Z\000\000\006R\000\000\006b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\221\000\000\006z\000\000\000\000\000\229\000\000\006r\000\000\006Z\000\221\000\221\000\221\000\000\000\000\000\000\000\000\000\000\006:\000\245\000\000\000\233\000\000\000\000\000\000\000\000\000\000\000\229\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006B\000\229\000\229\000\229\000\233\000\000\000\000\000\000\000\000\006z\000\000\000\000\000\245\000\000\006J\000\000\006Z\000\000\000\233\000\000\000\233\000\233\000\000\000\000\000\000\006:\000\000\000\000\000\241\000\000\006j\000\000\000\000\006R\000\245\006b\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006B\006\170\006\130\000\245\000\241\000\000\000\000\000\000\000\000\000\157\000\000\000\000\000\000\006r\006J\000\000\000\000\000\000\000\241\000\000\000\241\006\162\000\000\000\000\000\000\000\233\000\000\000\157\000\000\000\000\006j\000\149\000\000\006R\000\000\006b\000\000\000\000\000\000\000\000\000\000\014\182\000\000\000\000\000\000\000\000\000\000\000\157\000\157\000\149\000\000\006z\000\000\000\000\000\233\000\000\006r\000\157\006Z\000\000\014\190\000\000\014\206\000\149\000\000\000\000\000\000\000\000\000\241\000\149\000\149\000\000\000\153\000\000\000\000\000\000\000\233\000\000\000\000\000\149\000\000\000\000\014\190\000\157\000\149\000\000\000\233\006\130\000\233\000\000\000\153\000\000\000\000\000\000\006z\000\000\000\000\000\241\000\000\000\000\000\000\006Z\000\000\000\000\000\153\000\149\000\000\000\000\000\000\000\000\000\153\000\153\000\000\000\000\000\000\000\000\000\169\000\000\000\000\000\241\000\153\000\157\000\000\014\190\000\000\000\153\000\000\000\000\014\198\000\241\006\130\000\241\000\000\000\000\014\174\000\000\000\000\000\000\000\000\000\000\000\000\000\157\000\000\000\149\000\000\000\000\000\153\000\000\014\182\000\000\014\198\000\000\000\000\000\000\000\169\000\169\000\157\000\157\000\000\000\000\000\000\000\000\000\161\000\149\000\169\000\000\000\000\014\190\000\000\014\206\000\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\149\014\174\000\000\000\000\000\000\000\153\000\000\000\000\000\000\014\174\000\000\014\222\014\198\000\000\000\000\014\182\000\000\000\000\000\000\000\000\000\000\000\161\000\161\014\182\000\000\000\153\000\000\000\000\000\000\000\165\000\165\000\161\000\000\000\000\014\190\000\173\014\206\000\000\000\000\000\165\000\153\000\153\014\190\014\166\014\206\000\000\000\000\000\000\000\000\000\169\000\000\000\000\000\000\014\174\000\000\000\000\014\198\000\161\000\000\000\000\014\166\014\174\000\000\000\000\000\000\014\222\000\000\014\182\000\000\000\169\000\000\000\000\000\000\000\173\000\173\014\182\000\000\000\000\014\174\000\000\000\000\000\189\014\254\014\214\000\169\000\169\014\190\000\000\014\206\000\000\000\000\014\214\014\182\000\000\014\190\000\161\014\206\000\000\000\177\000\177\000\000\000\000\014\198\000\165\000\000\000\000\000\000\000\000\014\214\014\222\014\198\014\190\000\000\014\206\000\000\000\161\000\000\014\222\000\000\000\000\000\000\000\000\000\000\000\165\000\000\014\166\000\000\000\000\000\000\000\000\000\161\000\161\000\000\000\000\014\222\000\000\000\000\000\000\000\165\000\165\000\000\000\000\000\000\014\174\000\000\000\000\000\000\014\230\000\000\000\000\000\000\000\000\000\000\000\000\014\198\014\230\000\000\014\182\000\000\000\000\000\000\000\000\014\198\000\185\014\254\000\000\000\000\000\173\000\000\000\000\000\000\000\000\014\230\014\214\000\000\000\189\014\190\000\000\014\206\014\198\000\000\000\000\000\173\000\173\000\000\000\000\000\000\000\000\000\000\000\000\015\006\014\238\000\177\000\000\000\000\000\000\000\000\000\000\000\000\014\222\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\177\014\238\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\230\000\000\000\000\000\000\000\000\000\000\000\000\014\198\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\185\014\238"))
+ ((16, "\000\172\000\213\000\000\000\000\n\236\000\213\000\000\000\000\000\b\000\000\000\000\000\000\000\135\000\000\000\000\000\000\000\172\000\000\000y&v\000\000\021\142\021\142\000\000\000\000?\\\021\142\000\000U\156\021\142\000\000\000\000\021\142\000\000\021\142\000\000\000!\000f\021\142\000\000\021\142\000\000\000\000\000\000\021\142\000\000\021\142\000\000@\018\021\142\000\000VP\021\142\000\000\000\000\021\142\000\000\021\142\000\000\000\146\001\004\021\142\000\000\021\142\000\000\021\142\000\000\021\142\000\000V\144\021\142\000\000\000\000\021\142\000\000\021\142\000\000\000\131\001$\001$\000\000\000\000\001\b\001\162\000\139\000\000\002\238\000\015\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\136\000\000\000\000\000\185\001$\000\000\000Z\003<\001$\000\000\000\254\002\138\000\000\000\000\000\000\001J\021\142\000\000U\156\001$\001\\\021\142\000\000\000\000\021\142\000\000\000\000\021\142\000\000\021\142\000\000\002\012\002t\021\142\000\000&vVPXX\000\000\000\000\000\000X\n\003\bXX\002\138\000\000XX\000\000\000\000\002x\021\142\000\000XX\000\000\000\139\001VAj\000\000\000\000PfQ$\000\000X~\000\000Q\188Aj\028f\028fX~Aj\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000RTAj\000\000\000\000RTRTRT\000\000RT\000\000AjRT\000\000\000\000\" \000\139\000\000\023\b\028fAj\000\000#hAj)\208Aj)\232Aj\000\000\000\000\000\000\000\000\000\000\000\000\000\0002lAj\000\0003rAj+\002Aj+dAj\000\000Aj\000\000Aj,jAj,\204Aj-\210Aj.4Aj/:Aj/\156Aj\002\202Aj\000\000\000\000\000\000\000\000\000\000Aj3\212Aj4\218Aj5<Aj6BAj0\162Aj1\004Aj2\nAj6\164Aj7\170Aj\000\000Aj8\012Aj9\018Aj9tAj\000\000Aj:zAj:\220Aj\000\000\000\000Aj\000\000\002\190\000\000\000\000\000\139\000\000\000\000\000\000\002\248\000\000\002\254\000\000\000MAj\000\000\000M\000\000\000\000\001j&v\000\000\0238\021\142\000\000\000\136\021\142\000\000YD\021\142\000\000\000\000\021\142\000\000\021\142\000\000\003R\003\252\021\142\000\000\021\142\000\000\021\142\000\000\021\142\000\000\003J\021\142\000\000YF\021\142\000\000\000\000\021\142\000\000\021\142\000\000\0042\004\146\021\142\000\000\021\142\000\000\021\142\000\000\021\142\000\000Y\130\021\142\000\000\000\000\021\142\000\000\021\142\000\000\000\015\001$\005\016\021\142\000\000V\144\001$\005*\021\142\000\000\000\000\021\142\000\000\021\142\000\000\021\142\000\000\005z\005\202\021\142\000\000YDXX\005v\021\142\000\000_\178Z\252\000\000\002\160\006X\000\139\005\180\006\130[,[,\000\000\000\000\000\000\001\023`t[,\000\251\\\n\000\000\000\000\000\000\000\138\006\138\000V\0072[,\000\000\000\000\006r\000\000\006t\007D[,\006\128\000\000\000\000\000\000\000\011\\\198\000\000\000\000\000\000\006\132\007p\000\000\007t\000\000\0238\004\190XX\006\134\021\142\000\000YFXX\006\138\021\142\000\000\000\000\000\000\000\139\007\134\000\000\000\000\000\000\001j\000\000\000\000\028f\006\162\000\000\006\164X~\000\000\000\000\000\000\000\000\000\000\000\000RT\000\000\000\000RT\000\000\000\000RT\000\000X~\000\000\000\000R\212\000\139\000\000\023\b\023\b\000\000\001\142\027R\023\b\029\028Aj\000\000Aj\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000g2AjgjAj\006\218Aj\000\000Ajg\162Ajg\218Ajh\188Ajh\244Aji,AjidAj\000\000AjjFAjj~Ajj\182Aj\000\000Ajj\238Ajk\208\001\226\024v\000\000\000\000\002\030\025\228\000\000\000\000\000\000\000\000\006\188\000\000Aj\006\192\000\000\000\000\000\139\000\000\000\000\000\000\000\000\006\204\000\000\000\000\000\000\000\000\000\000\000\000\006\206\000\000\000\000\000\000\006\218\000\000\0009S\144\007\156Aj\007d\000\000\000\000X~\0009\000\000\006\234\000\000\006\236Aj\000\000\028f\006\238\000\000\000\000\007\200\000\000\028f\006\244\000\000\000\000\028f\006\246\000\000\000\000\006\244\000\000\000\000\001V\000\000\007\232\000\000\\\142XX\007\004\021\142\000\000\000\000\007\140\000\000\007\018\021\142\000\000\000\000\002\236&v\000\000&v\000\000\007\b\000\000\002\236\000\000\0190(\202\021\136\000\000\005v\021\136\000\000B\"\021\136\000\000\000\000\021\136\000\000\021\136\000\000\007L\007\128\021\136\000\000\021\136\000\000\021\136\000\000\021\136\000\000\007\174\021\136\000\000B6\021\136\000\000\000\000\021\136\000\000\021\136\000\000\007V\007\132\021\136\000\000\021\136\000\000\021\136\000\000\021\136\000\000B|\021\136\000\000\000\000\021\136\000\000\021\136\000\000\000\138\001$\007,\021\136\000\000\021\136\001$\0070\021\136\000\000\000\000\021\136\000\000\021\136\000\000\021\136\000\000\007d\007\148\021\136\000\000gN\000\000\007H\000\000\003\148gN\000\000\000\000\003\148\000\000\000\000\021\142XX\007D\021\136\000\000\000\000\000\000\000\127\000\000\000\000\001H\000\127\000\000\000\000\000\000\b6\000\000\b\170XX\007J\021\136\000\000B\"XX\007N\021\136\000\000\000\000\025P\021\136\000\000\bj\021\136\000\000B\144\021\136\000\000\000\000\021\136\000\000\021\136\000\000\007~\007\172\021\136\000\000\021\136\000\000\021\136\000\000\021\136\000\000\b\166\021\136\000\000B\188\021\136\000\000\000\000\021\136\000\000\021\136\000\000\007\136\007\184\021\136\000\000\021\136\000\000\021\136\000\000\021\136\000\000B\202\021\136\000\000\000\000\021\136\000\000\021\136\000\000\002\004\001$\007d\021\136\000\000B\182\001$\007h\021\136\000\000\000\000\021\136\000\000\021\136\000\000\021\136\000\000\007\216\b\012\021\136\000\000B\188XX\007\192\021\136\000\000\000\000\b\204XX\007\196\021\136\000\000B\220XX\007\198\021\136\000\000\000\000\000\000\000\000\000\000\000\000\b\152Aj\007\212\031\214\b\\\000\000\b\170Aj\007\226\b\166<V\000\000\000\000\000\000&v\000\139\000\000\001xAj<4\000\000T\028\028f\007\236\000\000\000\000Aj\007\240\000\000\028f\007\242\000\000\007\244a\030\000\000\000\000\000\000\000\000\000\000\000\000\000\000RT\000\000\000\000RT\000\000\000\000RT\000\000a\030\000\000\000\000\023\142\000\139\000\000\023\b\007\246\000\000Aj\007\246\000\000\000\000\000\139\000\000\000\000\000\000\000\000\000\000\000\000Aj\000)Aj\007\250\000\000\000\000<4<4'P\003R\b\190Aj\000\000\b\130\000\000\000\000\000\139\000\000$\128\000\000\b0<4\b8<4\000\000\000\204\000\000\000\000?\234AjM\206Ajk\230Ajl\bAjl<Ajl\172Ajm\014Ajm\022Aj\000\000Ajm\140Ajn\026Ajn0Aj\000\000Ajn|Ajn\132\000\000\001v=\"\000\000\002\196>\138<4\000\000\002\250=\214\000\000\000\000\000\000\b\016\000\000\000\000\b\020\000\000\t\006\000\000\000\139\000\000\001x\t\b\000\000\001\022\b\216\000\139\b*\b\252[,\b>\000\014\000\000Aj\t2\000\000\000\000\000\000\002\214\t\"[,\bZ\tL\000\000\002\022Aj\tN\000\000\tP\000\000\0238\000\139\003\164Aj\tV\000\000\tX\000\000\000\139\004PAj\tZ\000\000\t\\\000\000\0001\b\174\b\218\000\000T\180\028f\b\136\000\000\000\000C\162\000\000\tx\000\000\002\242\tPAj\t\024\000\000\tZAj\t\028\000\000\000D\000\000\b\218\b\218\028f\b\160\000\000\b\162a\158a\158\000\000\000\000\000\000\000\000\000\000\000\000RT\000\000\000\000RT\000\000\000\000RT\000\000a\158\000\000\000\000(\202\000\139\000\000\023\b\b\164\000\000Aj\b\166\000\000\000\000\000\139\000\000\000\000\000\000\000\000\000\000@\172Aj\000\000Aj\000\000\b\178\000\000\000M\000\000\000\000\000\000\000\000\000\000D\nAjE\016Aj\b\220Aj\000\000AjErAjFxAjF\218AjG\224AjHBAjIHAj\000\000AjI\170AjJ\176AjK\018Aj\000\000AjL\024AjLz\000\000\002\242\000\000\002\242\000\000\0190\b\218\b\218\000\000\000\000\000\000\000\003\000\000\000\000\000\000\t\128Aj\b\186\031\214 \178\000\139\t\174\000\000\t\144MN\t\180MN\t\184MN\b\208\031\214\031\214\004\004\004\004\002$\004\190\004\004\000\000\000\000\003\152\007>\000\000\004h\011\172\000\000\000\000\000\000\000\000\000\000\b\210\000\000\000\000\t\196\000\000\t\198\000\000\000\000\n\002\t\174Aj\b\232\t\216\000\000\t\026\000\000\t\220\023\b\t&\031\214\000\000\000\000\000\154\000\000\007`\000\000\000\000\002\242\000\000\t\166\000\000\014\194\000M\000\000\014\194\000\000\000\000$\128\000\000\002\182\000\000\000\000\011\206\000\000\014\194\000\000\t\246\023\b\t.\n\028\000\000\002\194\000\000\t\236\000\139\t<\n\n[,\tD\000$\000\000Aj\n0\000\000\n\018[,\tT\nB\000\000\004TAj\nD\000\000\nF\000\000\0238\000\139\004\136Aj\nP\000\000\nT\000\000\000\000\000\000\011\206\000\000\000\000\001\128\000\000\b\218\000\000\023\028\000\000\000\000\004x \178\000\000\004x\000\000\000\000\tn\000\000\000\154\001x\031\214\000\000\005\230\000W\005\230\000\000\001\128\000\000\b\218\000\000\b\218\000\000\000\000\000\000\th\000\000\000\000\tr\000\000\004\226\007`\000W\005\230\000\000\000\000\000\000\005\176\000\000\b\218\000\000\004\226\000\000\000\000\002\194\t~\0190\000\000\t~\000\000\nT\0190\000\000\000\000\nT\000\000\000\000\tp\000\000\000\000\tv\000\000\005\004\b\218\000\000\005\004\000\000\000\000\t\246\000\000\001\128\000\000\b\218\000\000\000\000\000\000\020\158N\028\000\000\nd\000\000\020\158\000\000\nn\000\000\np\000\000&v\000\139\001\178\000\000Aj\nv\000\000\t\000\nH\000\139\t\148\n`[,\t\154\005@\000\000Aj\n\136\000\000\005X\000\000Aj\n\140\000\000\0238\000\139\005\244\000\000Aj\n\142\000\000\005\022\020\158\000\000$\128\006 \000\000Aj\n\150\000\000\000\000\000\000\001f\000\000\nx\023\b\t\176\n\162\000\000\003\024\000\000\nx\000\139\t\194\n\158[,\t\214\006*\000\000Aj\n\196\000\000\006,\000\000Aj\n\198\000\000\0238\000\139\006d\000\000Aj\n\200\000\000\005\022\000\000\000\000\t\226\000\000\001f\r\024\n`\000\000\000\000\000\000\nb\000\000\003\\\000D\000\000\0190\n\188\000\000\000\000Aj\n\018\b\218\000\000\t\228\000\000\0001\000\000<V\000\000\000\000\004B\0190\000\000\0190\000\000\t\218\000\000\004B\000\000Aj\004RAj\000\000Aj\000\000\t\228\000\000\004R\000\000Aj\004R\t\232\000\000\031\214\005T\031\214\000\000\031\214\000\000\t\238\000\000\005T\000\000Aj\004R\t\240\000\000<V\005\188<V\000\000<V\000\000\t\242\000\000\005\188\000\000Aj\004R\t\252\000\000\000\000\029\212\000\000\000\000\ntN\178\000\000\000\000\000\000\000\000\000\000\nH\005\230\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002zN\178\000\000\001`\001l\000\000\nJ\000\213\000\000\000\000\000\000\000\000\000u\001l\000\000\000\000\000\000\000\000\n\168\000\000\000\000\000\000\000\000\" %\250\000\000b4\000\000N\178\000\000\005\174N\178\000\000\005x\004\138\004\138\000\000\003H\004\138\000\000\n \000\000\000\000\000\000\000\000\n\174\000\000'P\000\000(\202N\178\000\000\002\228N\178\000\000\n\176\000\000N\178\n\180\000\000c\200O0\n\190\000\000\n\194\000\000d~]>N\178\000\000\000\000\n<N\178\n\200\000\000\n\204\000\000\n\206\000\000&v\000\000\0046&v\000\000\nF\0214\000\000N\178\n\212\000\000\003\004N\178\000\000\005\206N\178\000\000\005\252\011V\000\000\011X\000\000O0N\178\nR\000\000\000\000\000\000\000\000\000\000\000\000\n\222\000\000d\224N\178\n\226\000\000\n\230\000\000N\178\n\232\000\000O0\n\144\000\213\000\000\000\000\006@O0\000\000\005\252\000\000\n\238\000\000N\178\011\016\000\000N\178\011$\000\000U\142\0214\000\000\0214\000\000O0N\178\n\158N\178\011(\000\000\011,\000\000\0214\000\000b\176\000\000\000\000\006BN\178\000\000\006n\004\220\004\138\n\166\000\000\000\000\005\200\005v\000\000\000\000\000\000\005\176\005v\000\000\n\168\000\000\000\000\000\000\000\000\000\000\000\000\000\000N\178\000\000\006FN\178\000\000\002J\004H\000\213\n\170\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011:\000\000\011>\000\000N\178\011B\000\000e\150N\178\011D\000\000\011F\000\000N\178\011L\000\000\0310\n\244e\248\0214cf\n\202\000\000N\178\011V\000\000\011X\000\000\011(\0310N\178\011\\\000\000N\178\011`\000\000\011d\000\000N\178\011f\000\000\000\213\n\212\000\000\000\000\029\212\000\000\000\000\004\018\011\202\000\000\000\000\002\154\000\000\000\000\000\000Aj\000\000\000\000\000\000\004l\000\000\003\170\000\000\000\000\000\000\005\230P\136P\136P\136\000\000\002F\002F\002F\002F\000\000\000\000\000\000\000\000\000\000\000\000\002\242\0190\011\192\016<\000M\000\000\000\000\002\182\000\000\011\206\000\000<4\n\232\000\000\002\242\0190\n\242\017\182\000\000\002\242\016<\000\000\000\000\000\000P\136\026\240\000\000\000\000\000\000\011B\000\139\000\000\011\196^\150^\150\000\000\005\230a0^\150\006H^\198\000\000\000\000\004J\011\184\000\131\000\000\006T_\130\000\000\000\000\000\000\000\000\000\000\011\006\011\204\b\218\011\b\000\000\002\182\000\000\011\206\000\000\026\018\002\026\000\000\000\000\011\184\000\000\000\000\004\018\000\000\003\232\000\000\000\000\000\000Aj\000\000\004l\000\000\004\234\000\000\000\000\000\000\007`\000\000\rH\004`\rH\000\000\b\218\rH\000\000\004`\000\000\b\218\000\000\b\218\000\000\b\218\000\000\026\018\000\000\000\000\000\000\000\000\000\000\b\218\000\000\004`\000\000\b\218\000\000\029\248\000\000\000\000\nT\011<\000\213\001&\011\230\007\228\000\000\007\228\012\016\000\000\012\018\000\000\012\028\000\000\000\000\004\196\007\228\000\148\007\228\000\000\000\000\006|\001&\011\024\000\000\011 \000\000\011d\000\213\001&\011*\000\000\007\250\012>\000\000\006\152\005\006\012P\tp\012P\000\000\000\000\011\166\000\213\000\000\002\192\000\000\000\000\004(\000\000\011<\000\000\000\000\000\000\011~\000\213\001&\011D\000\000\000\000\007\250\006\152\005\006\011\166\002\192\004(\011H\000\000\006\152\005\006\011\166\002\192\004(\011J\000\000\002\004\004j\011f\000\213\011b\006l\007:\011\140\000\213\000\000\011\142\000\213\000\000\011\252\000\000\011\132\007h\011\130\006l\012\n\000\000\011\136\006l\012\018\000\000\000\000\006l\000\000\012\020\000\000"), (16, "\r\165\r\165\r\165\r\165\r\165\r\165\r\165\r\165\r\165\r\165\r\165\r\165\r\165\r\165\001:\r\165\r\165\r\165\r\165\r\165\r\165\r\165\r\165\r\165\r\165\016\030\011\030\015v\000\n\r\165\016\030\001B\015z\006*\017\170\001f\r\165\t}\r\165\017\170\001F\0075\r\165\r\165\005\177\r\165\011\"\0066\r\165\004\150\000&\tm\r\145\r\165\r\165\r\165\000N\t\166\023\006\023.\023>\023f\023v\023\158\r\165\000\n\015f\r\165\r\165\000\n\000*\000\n\005\142\r\165\r\165\014i\r\165\019Z\r\165\004\198\001\150\016F\004\206\r\165\004\222\r\165\r\165\t\025\r\165\r\165\r\165\004\230\001b\001f\r\165\r\165\r\165\001j\r\165\r\165\r\165\001n\001r\r\165\r\165\r\165\r\165\r\165\r\165\004\141\024f\018\214\r\165\r\165\r\145\016J\018\214\0007\000;\001v\000\006\000\"\004\238\r\165\r\165\r\165\b\198\000\n\r\165\r\165\r\165\r\165\005\177\r\165\014\006\r\165\018\198\007\005\r\165\015\238\000\150\r\165\r\165\001f\006J\004\141\014i\014i\n\130\0075\022\182\014i\r\165\r\165\b\029\006\181\r\165\004\254\014\018\015j\r\165\r\165\r\165\r\165\004\150\001N\r\165\006\138\r\165\001f\019^\002\157\r\165\r\165\r\165\021\n\r\165\000\n\r\165\r\165\r\254\r\165\021\014\r\165\r\165\000\154\021\018\r\165\r\165\r\177\r\177\r\177\r\177\r\177\r\177\r\177\r\177\r\177\r\177\r\177\r\177\r\177\r\177\000\n\r\177\r\177\r\177\r\177\r\177\r\177\r\177\r\177\r\177\r\177\015J\004\141\000.\001\162\r\177\006R\022\138\004\141\004\141\r\137\t)\r\177\001>\r\177\024F\000\242\006\173\r\177\r\177\004\141\r\177\015v\024J\r\177\021\234\001B\015z\003\229\r\177\r\177\r\177\003\229\001B\r1\001F\002f\004\141\018\198\007\005\r\177\006\197\001F\r\177\r\177\014>\004\141\016\030\030\166\r\177\r\177\000\246\r\177\004\150\r\177\004\174\017\170\006\205\006\205\r\177\000\n\r\177\r\177\021J\r\177\r\177\r\177\000\n\000\n\024V\r\177\r\177\r\177\012\137\r\177\r\177\r\177\001R\024Z\r\177\r\177\r\177\r\177\r\177\r\177\012\218\001\178\001J\r\177\r\177\012\222\004\193\014i\002m\030n\028j\001\138\012\226\004\193\r\177\r\177\r\177\012\230\028n\r\177\r\177\r\177\r\177\029\147\r\177\006\173\r\177\t\029\r1\r\177\024B\029\151\r\177\r\177\004\145\031\142\025\182\025\190\011*\012F\026\182\029\154\r2\020\014\r\177\006\173\001\198\r\177\018\214\006\173\012\137\r\177\r\177\r\177\r\177\001\218\007\005\r\177\006\253\r\177\001f\014\234\0152\r\177\r\177\r\177\002:\r\177\t5\r\177\r\177\021N\r\177\007v\r\177\r\177\027\"\b\241\r\177\r\177\007=\007=\007=\007=\007=\007=\007=\007=\007=\007=\007=\007=\007=\007=\000\n\007=\007=\007=\007=\007=\007=\007=\007=\007=\007=\n1\002>\001>\018\198\007=\016\"\0162\016B\006\002\019:\b>\007=\016\030\007=\b\225\002\006\015\154\007=\007=\006\173\007=\017\170\001B\007=\ry\019>\t\134\005}\007=\005\026\007=\001F\005\"\001B\0052\005]\0152\004\174\002f\007=\bN\005:\001F\0182\002M\002\n\015v\t\r\007=\007=\001B\015z\022\006\007=\007=\014&\000\n\014i\007=\001F\007=\007=\n1\007=\007=\007=\0022\000\n\022\n\007=\007=\007=\005B\007=\007=\007=\001J\rQ\007=\007=\007=\007=\007=\007=\000\n\005\r\0246\007=\007=\015v\031\022\001\166\002N\001B\015z\t\142\0055\031\026\018\214\007=\007=\002q\001F\007=\007=\007=\007=\005R\007=\003\186\007=\001B\006\173\007=\028\031\028#\007=\007=\n\021\028'\001F\025\158\r1\014\246\001^\006\253\004j\000\n\014i\014i\tE\007=\006\173\014i\0055\007=\007=\007=\007=\025\006\r!\007=\n\230\007=\005\r\000\n\rQ\007=\007=\007=\015\006\005\r\004\134\007=\007=\004\142\007=\002}\007=\007=\006\213\007]\007=\007=\007]\007]\007]\007]\007]\007]\007]\007]\007]\007]\007]\007]\007]\007]\004\242\007]\007]\007]\007]\007]\007]\007]\007]\007]\007]\024\202\t-\018*\007]\007]\004\201\007]\rA\022\230\031\146\022\158\007]\004\201\007]\028\014\007]\023\014\007]\007]\r1\007]\r1\001B\007]\007]\007]\015\186\018\198\007]\007]\007]\001F\029>\007]\007]\027&\016\030\007]\007]\007]\018F\007\029\007]\023\218\b\253\017\170\0152\r1\007]\007]\007]\007]\004\246\007]\002:\007]\000\n\001f\007]\028\014\007]\028G\028K\007]\007]\007]\028O\019\234\024\190\007]\007]\007]\007]\007]\007]\007]\018.\022\238\007]\007]\007]\007]\007]\007]\023\218\023\022\030\242\031\"\007]\030\158\000\n\000\n\029\179\029\183\006\182\0186\007]\029\187\004\233\007]\007]\005F\007]\007]\007]\007]\007]\000\n\007]\026\186\007]\007]\015\214\007]\019\130\001B\007]\007]\t\186\025z\020^\t\194\018\214\t\210\001F\006E\r)\005J\007]\003\229\t\218\007]\0152\003\229\0152\007]\007]\020\222\007]\021z\019\162\007]\006\237\007]\018R\023F\021\190\007]\002]\000\n\006\229\021\142\nU\nU\007]\007-\007]\nU\007]\007]\0152\t\226\007]\007]\000R\000V\000f\000\170\t\170\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\023\198\001&\028V\001.\012\226\0016\001\230\001\238\001\242\012\230\028Z\024\186\023\202\t\017\007M\012\234\030\174\018\198\t\242\023~\007M\007M\012\250\023\206\001\250\023\210\016\030\030\166\002j\r\002\007\r\015\246\007M\023\214\015\250\017\170\023N\025\182\025\190\002\002\007m\016\014\023\226\029\211\029\215\005\177\023\230\007\021\029\219\026\206\002z\021\170\023\234\028\142\021~\026\210\007%\005\150\007M\017\190\016R\028\186\028\198\000\n\017\194\020\026\021\146\r\129\023\238\002\158\005\170\002\162\005\141\021\206\002\022\018\206\017\202\025\198\022&\022:\016j\002\170\017\206\ri\016n\014\030\002\178\005\210\023\134\016r\016v\r\022\r\026\016z\017\210\004\149\026\210\023\242\026\182\017\214\023\246\006\245\007m\031\162\000\n\005\214\n9\022V\005\234\004\145\r\134\016~\018\214\023\250\017\218\017\222\016\130\017\226\023\254\000\n\024\002\017\246\024\006\024\n\005i\024\014\006\006\018\002\016\138\024\174\026\226\030\158\024\018\005\177\026\202\024\022\006\014\r9\006\018\028\218\rq\rY\018\"\ra\021\174\025\170\018&\018r\005\141\r\030\024\026\006N\016\142\006\221\018v\024\030\024\"\029\"\016\150\005\141\005\141\ta\031\247\n)\005\141\018~\021\210\016\154\n9\007e\007e\022*\022>\002\238\007e\000R\000V\000f\000\170\t\170\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\031\166\001&\028V\001.\012\226\0016\001\230\001\238\001\242\012\230\028Z\022Z\004\149\026.\026\170\012\234\027\022\029.\004\149\004\149\031\178\tQ\012\250\029N\001\250\031\206\004\145\002\141\002j\r\002\004\149\015\246\004\145\004\145\015\250\n\014\n)\006V\n\022\002\002\n&\016\014\006f\006n\004\145\030n\006r\n.\018*\006z\002z\006\158\006\162\016\030\006\170\006\190\004\149\006\210\030\166\017\190\016R\028\186\017\170\006\234\017\194\020b\007\n\007\018\001B\002\158\004\145\002\162\005\157\007\202\002\022\018\206\017\202\001F\n6\bf\016j\002\170\017\206\br\016n\014\030\002\178\b\146\b\174\016r\016v\r\022\r\026\016z\017\210\b\190\b\206\005Q\018\210\017\214\b\214\b\238\000\n\b\246\t\006\030v\t\018\t\030\t.\t:\r\134\016~\tN\nF\017\218\017\222\016\130\017\226\t^\000\n\tn\017\246\018.\000\n\005i\tv\030z\018\002\016\138\011~\t\155\t\230\011\134\030~\011\150\t\234\n:\n>\n\138\018\214\n\158\011\158\018\"\n\198\t\001\n\202\018&\018r\n\222\r\030\011\n\011>\016\142\011N\018v\011b\011\170\011\174\016\150\011\210\005\157\011\254\011\218\012\002\011\234\018~\012N\016\154\012b\007u\007u\011\242\011\166\002\238\007u\000R\000V\000f\000\170\t\170\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\002:\001&\028V\001.\012\226\0016\001\230\001\238\001\242\012\230\028Z\030\134\012\138\011\250\005Q\012\234\012\142\002:\011\182\030\226\005Q\005Q\012\250\012\162\001\250\012\186\012\206\012\238\002j\r\002\012\246\015\246\005Q\005Q\015\250\012\254\r\006\r\014\r\018\002\002\011F\016\014\rJ\rZ\030\142\rf\rn\r\206\012\n\r\218\002z\014\014\014*\016\030\0146\014R\014Z\012\178\005Q\016N\016R\001B\017\170\015\026\017\194\015&\015.\015B\015N\002\158\001F\002\162\005\185\015V\002\022\017\198\017\202\015Z\001B\021^\016j\002\170\017\206\015b\016n\014\030\002\178\001F\015r\016r\016v\r\022\r\026\016z\017\210\000\n\015\134\015\142\014q\017\214\015v\015\146\015\162\015\170\001B\015z\015\194\015\202\015\222\015\230\r\134\016~\000\n\001F\017\218\017\222\016\130\017\226\015\242\000\n\016\006\017\246\b\165\016\026\005i\016&\018\198\018\002\016\138\016.\0166\016>\016Z\016b\016\194\016\030\b\165\016\206\000\n\018\214\017\006\0176\018\"\017\230\017\170\017\238\018&\018r\005\185\r\030\017\254\018\006\016\142\018\014\018v\018\022\018\030\018n\016\150\005\185\005\185\018z\018\130\018\142\005\185\018~\018\146\016\154\018\154\n]\n]\018\158\018\166\002\238\n]\000R\000V\000f\000\170\t\170\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\018\174\001&\b\165\001.\012\226\0016\001\230\001\238\001\242\012\230\018\182\018\226\r\025\019&\019.\012\234\0192\019B\r\025\r\025\005Q\019J\012\250\019N\001\250\019V\019f\019n\002j\r\002\r\025\015\246\018\214\019v\015\250\019z\019\138\019\146\030b\002\002\b\173\016\014\019\170\030\250\019\178\020\002\020J\020V\020\202\020\214\002z\020\246\021\"\016\030\b\173\b\165\r\025\0212\021:\016N\016R\021V\017\170\021b\017\194\021j\021n\b\165\021v\002\158\021\134\002\162\021\154\021\182\002\022\017\198\017\202\021\218\021\242\021\250\016j\002\170\017\206\021\254\016n\014\030\002\178\022\014\022\022\016r\016v\r\022\r\026\016z\017\210\rI\rI\022\026\022\"\017\214\0222\022F\022b\022v\022\134\022\150\022\174\022\190\022\202\b\173\r\134\016~\030\202\022\251\017\218\017\222\016\130\017\226\023#\000\n\023;\017\246\030\222\023[\023s\023\147\005Q\018\002\016\138\0316\023\171\030\226\005Q\005Q\023\194\023\222\024N\024\127\024\214\018\214\024\235\025\019\018\"\025\031\005Q\005Q\018&\018r\025/\r\030\0257\025R\016\142\025[\018v\025c\025k\025\134\016\150\025\151\025\186\025\194\b\173\025\210\025\239\018~\025\255\016\154\026\007\026\019\005Q\026\030\026C\002\238\b\173\000R\000V\000f\000\170\t\170\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\026O\001&\rI\001.\012\226\0016\001\230\001\238\001\242\012\230\026[\026~\026\135\rI\026\143\012\234\026\194\026\238\027.\rI\rI\027O\012\250\027W\001\250\027c\027s\027{\002j\r\002\027\135\015\246\027\146\027\162\015\250\027\175\027\183\027\190\027\203\002\002\027\215\016\014\027\223\027\235\000\022\027\247\028\018\028\154\018*\028\194\002z\rI\028\210\016\030\029\006\029\018\rI\rI\029B\016N\016R\029j\017\170\029n\017\194\029v\029\159\030f\001B\002\158\030r\002\162\030\130\030\138\002\022\017\198\017\202\001F\030\146\030\191\016j\002\170\017\206\030\199\016n\014\030\002\178\030\206\030\219\016r\016v\r\022\r\026\016z\017\210\030\230\030\246\031+\014q\017\214\031:\031G\000\n\031k\031\135\031\150\007U\031\158\031\170\031\182\r\134\016~\007U\007U\017\218\017\222\016\130\017\226\031\195\000\n\031\202\017\246\018.\031\210\031\n\031\219\031\226\018\002\016\138\031\235\031\255\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\214\000\000\000\000\018\"\000\000\002a\000\000\018&\018r\000\000\r\030\007U\000\000\016\142\000\000\018v\000\000\000\000\000\000\016\150\000\000\000\000\000\000\000\000\000\000\000\000\018~\000\000\016\154\000\000\014q\014q\000\000\000\000\002\238\014q\000R\000V\000f\000\170\t\170\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\000\000\001&\028V\001.\012\226\0016\001\230\001\238\001\242\012\230\028Z\000\000\000\000\000\000\000\000\012\234\000\000\000\000\000\000\000\000\022\006\000\000\012\250\000\000\001\250\000\000\000\000\000\000\002j\r\002\000\000\015\246\000\000\000\000\015\250\000\000\022\n\000\000\000\000\002\002\000\000\016\014\000\000\000\000\000\000\000\000\000\000\000\000\004\174\000\000\002z\000\000\000\000\000\000\000\000\000\000\000\000\015v\000\000\017\190\016R\001B\015z\000\000\017\194\029\234\000\000\000\000\000\000\002\158\001F\002\162\000\000\000\000\002\022\018\206\017\202\000\000\000\000\000\000\016j\002\170\017\206\000\000\016n\014\030\002\178\000\000\000\000\016r\016v\r\022\r\026\016z\017\210\000\n\000\000\000\000\000\000\017\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\134\016~\000\000\000\000\017\218\017\222\016\130\017\226\000\000\000\n\000\000\017\246\000\000\000\000\005i\000\000\000\000\018\002\016\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\253\000\000\000\000\000\000\000\000\000\000\018\"\000\000\000\000\000\000\018&\018r\000\000\r\030\000\000\000\000\016\142\000\000\018v\000\000\000\000\000\000\016\150\000\000\000\000\000\000\000\000\000\000\000\000\018~\000\000\016\154\000\000\nA\nA\000\000\000\000\002\238\nA\000R\000V\000f\000\170\t\170\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\000\000\001&\000\000\001.\012\226\0016\001\230\001\238\001\242\012\230\000\000\000\000\000\000\000\000\000\000\012\234\000\000\000\000\000\000\000\000\000\000\000\000\012\250\000\000\001\250\000\000\000\000\000\000\002j\r\002\000\000\015\246\000\000\000\000\015\250\000\000\000\000\000\000\000\000\002\002\000\000\016\014\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\000\000\000\000\000\000\000\000\017\190\016R\000\000\000\000\000\000\017\194\018\234\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\002\022\018\206\017\202\000\000\000\000\000\000\016j\002\170\017\206\000\000\016n\014\030\002\178\000\000\000\000\016r\016v\r\022\r\026\016z\017\210\000\000\000\000\000\000\014M\017\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\134\016~\000\000\000\000\017\218\017\222\016\130\017\226\000\000\000\n\000\000\017\246\000\000\000\000\000\000\000\000\000\000\018\002\016\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\"\000\000\000\000\000\000\018&\018r\000\000\r\030\000\000\000\000\016\142\000\000\018v\000\000\000\000\000\000\016\150\000\000\000\000\000\000\000\000\000\000\000\000\018~\000\000\016\154\000\000\014M\014M\000\000\000\000\002\238\014M\000R\000V\000f\000\170\t\170\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\000\000\001&\000\000\001.\012\226\0016\001\230\001\238\001\242\012\230\000\000\000\000\000\000\000\000\000\000\012\234\000\000\000\000\000\000\000\000\000\000\000\000\012\250\000\000\001\250\000\000\000\000\000\000\002j\r\002\000\000\015\246\000\000\000\000\015\250\000\000\000\000\000\000\000\000\002\002\000\000\016\014\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\000\000\000\000\000\000\000\000\017\190\016R\000\000\000\000\000\000\017\194\028\158\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\002\022\018\206\017\202\000\000\000\000\000\000\016j\002\170\017\206\000\000\016n\014\030\002\178\000\000\000\000\016r\016v\r\022\r\026\016z\017\210\000\000\000\000\000\000\000\000\017\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\134\016~\000\000\000\000\017\218\017\222\016\130\017\226\000\000\000\n\000\000\017\246\000\000\000\000\000\000\000\000\000\000\018\002\016\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\"\000\000\000\000\000\000\018&\018r\000\000\r\030\000\000\000\000\016\142\000\000\018v\000\000\000\000\000\000\016\150\000\000\000\000\000\000\000\000\000\000\000\000\018~\000\000\016\154\000\000\014\153\014\153\000\000\000\000\002\238\014\153\000R\000V\000f\000\170\t\170\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\000\000\001&\000\000\001.\012\226\0016\001\230\001\238\001\242\012\230\000\000\000\000\000\000\000\000\000\000\012\234\000\000\000\000\000\000\000\000\000\000\000\000\012\250\000\000\001\250\000\000\000\000\000\000\002j\r\002\000\000\015\246\000\000\000\000\015\250\000\000\000\000\000\000\000\000\002\002\000\000\016\014\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\000\000\000\000\000\000\000\000\017\190\016R\000\000\000\000\000\000\017\194\028\158\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\002\022\018\206\017\202\000\000\000\000\000\000\016j\002\170\017\206\000\000\016n\014\030\002\178\000\000\000\000\016r\016v\r\022\r\026\016z\017\210\000\000\000\000\000\000\000\000\017\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\134\016~\000\000\000\000\017\218\017\222\016\130\017\226\000\000\000\n\000\000\017\246\000\000\000\000\000\000\000\000\000\000\018\002\016\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\"\000\000\000\000\000\000\018&\018r\000\000\r\030\000\000\000\000\016\142\000\000\018v\000\000\000\000\000\000\016\150\000\000\000\000\000\000\000\000\000\000\000\000\018~\000\000\016\154\000\000\014\149\014\149\000\000\000\000\002\238\014\149\000R\000V\000f\000\170\t\170\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\000\000\001&\000\000\001.\012\226\0016\001\230\001\238\001\242\012\230\000\000\000\000\000\000\000\000\000\000\012\234\000\000\000\000\000\000\000\000\000\000\000\000\012\250\000\000\001\250\000\000\000\000\000\000\002j\r\002\000\000\015\246\000\000\000\000\015\250\000\000\000\000\000\000\000\000\002\002\000\000\016\014\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\000\000\000\000\000\000\000\000\017\190\016R\000\000\000\000\000\000\017\194\020\150\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\002\022\018\206\017\202\000\000\000\000\000\000\016j\002\170\017\206\000\000\016n\014\030\002\178\000\000\000\000\016r\016v\r\022\r\026\016z\017\210\000\000\000\000\000\000\000\000\017\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\134\016~\000\000\000\000\017\218\017\222\016\130\017\226\000\000\000\n\000\000\017\246\000\000\000\000\000\000\000\000\000\000\018\002\016\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\"\000\000\000\000\000\000\018&\018r\000\000\r\030\000\000\000\000\016\142\000\000\018v\000\000\000\000\000\000\016\150\000\000\000\000\000\000\000\000\000\000\000\000\018~\000\000\016\154\000\000\000R\000V\000f\000\170\002\238\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\000\000\001&\000\000\001.\012\226\0016\001\230\001\238\001\242\012\230\000\000\000\000\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\250\000\000\000\000\000\000\002j\000\000\000\000\015\246\000\000\000\000\015\250\000\000\000\000\000\000\000\000\002\002\000\000\021\022\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\000\000\000\000\000\000\000\000\021&\016R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\002\022\006\165\000\000\000\000\000\000\000\000\016j\002\170\000\000\000\000\016n\001f\002\178\006\165\000\000\016r\016v\r\022\021*\016z\000\000\000\000\000\000\000\000\006\165\000\000\006\165\012\r\012\r\000\000\000\000\012\r\000\000\000\000\006\165\000\000\r\134\016~\006\165\000\000\006\165\000\000\016\130\006\165\000\000\000\n\006\165\006\165\006\165\000\000\006\165\000\000\000\000\006\165\016\138\006\165\006\165\000\000\006\165\000\000\000\000\000\000\000\000\000\000\006\165\000\000\006\165\012\r\006\165\006\165\000Z\006\165\000\000\000\000\000\000\r\030\006\165\000\000\016\142\006\165\021.\000\000\006\165\000\000\016\150\006\165\006\165\000\000\006\165\006\165\006\165\0216\006\165\016\154\000\000\006\165\012\r\000\000\006\165\002\238\000\000\006\165\000\000\000\000\000\000\000\000\006\165\n\150\000\000\006\165\011\002\006\165\000Z\000\000\006\165\000Z\000\000\006\165\006\165\006\165\006\165\006\165\000\000\006\165\006\165\000\000\006\165\006\165\000\000\000\000\000\000\006\165\006\165\006\165\000\000\000\000\006\165\006\165\000\000\000\000\006\165\000\000\000\000\006\165\006\165\000\000\006\165\000\000\000\000\000\000\000\000\006\165\000\000\000\000\000\000\006\165\006\165\006\165\012\r\006\165\000\000\006\165\006\165\006\165\006\165\006\165\006\165\000\000\006\165\006\165\006\165\006\165\000\000\000\000\000\000\006\165\000\000\000\000\006\165\000\000\000\000\006\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\165\000\000\000\000\006\165\000\000\006\165\006\165\000\000\006\165\006\165\006\165\000\000\000\000\006\165\006\165\000\000\000\000\006\165\000\000\000\000\000\000\000\000\006\165\006\165\000\000\000\000\000\000\006\165\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000\000\004\186\004\194\000\170\000\000\000\174\000\000\005\006\005\014\005\022\005Z\000\000\005b\005j\001\250\005z\000\000\005\130\002j\005\138\005\182\002\130\005\190\000\000\002\134\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\005\198\000\000\002z\000\000\000\000\002~\019:\000\000\000\000\000\000\000\000\003\018\007\002\000\000\002\150\005\206\000\000\007j\000\000\000\000\000\000\002\158\019>\002\162\000\000\000\000\002\022\000\000\000\000\000\000\015\245\000\000\007\022\002\170\000\000\000\000\007\026\001f\002\178\000\000\007n\007\030\007\"\015v\000\000\007&\002\194\001B\015z\000\000\005\222\000\000\000\000\000\000\015\245\015\245\001F\000\000\000\000\000\000\019\222\000\000\r\190\007*\000\000\000\000\000\000\000\000\007.\015\245\000\000\000\n\000\000\000\000\000\000\015\245\015\245\000\000\000\000\r\198\0076\000\n\r\210\000\000\000\000\015\245\000\000\000\000\015\245\000\000\015\245\007r\000\000\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007:\000\000\000\000\000\000\000\000\000\000\007B\000\000\000\000\004\225\000\000\015\245\000\000\000\000\000\000\007F\000\000\000R\000V\000f\000\170\002\238\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\r\222\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\245\000\000\000\000\000\000\001\250\r\226\000\000\015\245\002j\000\000\000\000\002\130\000\000\000\000\002\134\000\000\r\234\000\000\000\000\002\002\000\000\015\245\000\000\000\000\000\000\000\000\000\000\000\000\015\245\000\000\002z\000\000\000\000\002~\000\000\000\000\015\245\015\245\000\000\003\018\007\002\000\000\002\150\000\000\000\000\007j\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\002\022\000\000\000\000\000\000\000\000\000\000\007\022\002\170\000\000\000\000\007\026\001f\002\178\000\000\007n\007\030\007\"\000\000\000\000\007&\002\194\000\000\011r\011z\000\170\000\000\000\174\000\000\011\190\011\198\011\206\012\018\000\000\012\026\012\"\000\000\0122\007*\012:\000\000\012B\012n\007.\012v\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0076\000\000\000\000\000\000\000\000\012~\000\000\000\000\000\000\000\000\000\000\007r\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\134\000\000\000\000\000\000\007:\000\000\000\000\000\000\000\000\000\000\007B\000\000\000\000\b\229\000\000\000\000\000\000\000\000\000\000\007F\000\000\000R\000V\000f\000\170\002\238\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\012\150\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000\000\000\000\000\000\000\000\000\000\012\218\000\000\000\000\000\000\000\000\012\222\000\000\000\000\000\000\001\250\028j\000\000\012\226\002j\000\000\000\000\002\130\012\230\028n\002\134\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\002z\000\000\000\000\002~\000\000\000\000\000\000\000\000\000\000\003\018\007\002\000\000\002\150\000\000\000\000\007j\000\000\019:\000\000\002\158\000\000\002\162\000\000\000\000\002\022\000\000\000\000\000\000\000\000\000\000\007\022\002\170\000\000\019>\007\026\001f\002\178\000\000\007n\007\030\007\"\000\000\000\000\007&\002\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015v\000\000\000\000\000\000\001B\015z\000\000\007*\000\000\000\000\000\000\000\000\007.\001F\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\012\218\000\000\0076\000\000\000\000\012\222\000\000\000\000\000\000\000\000\028j\000\000\012\226\007r\000\000\000\000\000\n\012\230\028n\000\000\000\000\005}\000\000\000\000\000\000\000\000\007:\000\000\000\000\000\000\000\000\000\000\007B\000\000\000\000\002Q\000\000\000\000\000\000\000\000\000\000\007F\000\000\000R\000V\000f\000\170\002\238\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\bi\bi\015J\000\000\000\000\bi\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\250\000\000\000\000\000\000\002j\000\000\000\000\002\130\015v\000\000\002\134\000\000\001B\015z\000\000\002\002\000\000\000\000\000\000\000\000\000\000\001F\000\000\000\000\000\000\000\000\002z\000\000\000\000\002~\000\000\000\000\000\000\000\000\000\000\003\018\007\002\000\000\002\150\000\000\000\000\007z\000\000\000\000\000\000\002\158\000\n\002\162\000\000\000\000\002\022\005}\000\000\000\000\000\000\000\000\007\022\002\170\000\000\000\000\007\026\001f\002\178\000\000\007n\007\030\007\"\000\000\000\000\007&\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\007*\000\000\000\000\000\000\000\000\007.\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\0076\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000\000\000\000\000\000\000\000\007:\000\000\000\000\000\000\000\000\000\000\007B\000\000\000\000\b\245\001\250\000\000\000\000\000\000\002j\007F\000\000\002n\000\000\000\000\002r\002\238\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\002z\000\000\000\000\002~\000\000\000\000\000\000\000\000\000\000\002\146\002\142\000\000\002\150\000\000\000\000\000\000\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\002\022\000\000\000\000\000\000\000\000\000\000\002\166\002\170\000\000\000\000\002\174\001f\002\178\000\000\000\000\002\182\002\186\000\000\000\000\002\190\002\194\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\002\198\000\000\000\000\000\000\000\000\002\202\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\001\225\001\225\002\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\214\000\000\001\225\000\000\000\000\000\000\001\225\000\000\001\225\001\225\000\000\000\000\000\000\002\218\000\000\000\000\000\000\000\000\001\225\002\230\000\000\001\225\000\000\001\225\000\000\000\000\000\000\000\000\002\246\000\000\001\133\001\133\001\133\001\133\002\238\001\133\000\000\001\133\001\133\001\133\001\133\000\000\001\133\001\133\000\000\001\133\000\000\001\133\001\225\001\133\001\133\001\133\001\133\000\000\012\218\000\000\000\000\023\182\000\000\012\222\000\000\000\000\000\000\000\000\028j\000\000\012\226\001\133\001\133\001\133\000\000\012\230\028n\000\000\000\000\000\000\000\000\001\133\000\000\000\000\000\000\000\000\000\000\001\133\000\000\000\000\001\133\000\000\001\225\007\130\001\133\001\225\000\000\023\186\000\000\001\225\001\133\000\000\000\000\000\000\000\000\000\000\000\000\001\133\000\000\000\000\019:\000\000\001\133\001\225\000\000\000\000\000\000\001\225\001\225\000\000\000\000\001\133\001\133\000\000\007\138\000\000\019>\000\000\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\001\133\000\000\000\000\001\133\000\000\015v\001\133\000\000\000\000\001B\015z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\001\133\000\000\000\000\000\000\000\000\001\133\000\000\001\133\000\000\000\000\001\133\000\000\023\190\000\000\000\000\000\000\000\000\001\133\000\000\001\133\000\000\000\000\001\133\000\000\000\n\000\000\000\000\000\000\000\000\005}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\133\001\133\000\000\000\000\000\000\001\133\001\133\000\000\000\000\000\000\000R\t\174\t\182\000\170\000\000\000\174\024\130\t\250\n\002\n\n\nN\000\000\nV\n^\023\198\nn\000\000\nv\000\000\n~\n\170\001\238\n\178\000\000\000\000\000\000\023\202\n\141\n\141\000\000\000\000\000\000\n\141\000\000\000\000\000\000\000\000\023\206\n\186\023\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\214\000\000\000\000\000\000\000\000\000\000\027\142\000\000\000\000\023\226\000\000\000\000\000\000\023\230\000\000\000\000\000\000\000\000\000\000\023\234\000\000\000\000\000\000\000\000\000\000\000\000\n\210\000\000\000\000\000\000\000\000\025n\000\000\000\000\000\000\023\238\026\154\000\000\000\000\000\000\000\000\n\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\022\000\000\000\000\023\242\012\234\000\000\023\246\000\000\000\000\000\000\000\000\012\250\000\000\000\000\000\000\000\000\000\000\002j\r\002\023\250\015\246\000\000\000\000\015\250\023\254\000\n\024\002\000\000\024\006\024\n\016\014\024\014\000\000\000\000\000\000\000\000\000\000\000\000\024\018\002z\000\000\024\022\000\000\000\000\000\000\000\000\000\000\000\000\017\242\016R\000\000\000\000\000\000\017\194\000\000\000\000\024\026\000\000\002\158\000\000\002\162\024\030\024\"\000\000\000\000\017\202\000\000\000\000\000\000\016j\002\170\017\206\000\000\016n\014\030\002\178\000\000\000\000\016r\016v\000\000\000\000\016z\017\210\000\000\000\000\000\000\000\000\017\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\134\016~\000\000\000\000\017\218\017\222\016\130\017\226\000\000\000\n\000\000\017\246\000\000\000\000\000\000\012\234\000\000\018\002\016\138\000\000\000\000\000\000\012\250\000\000\000\000\000\000\000\000\000\000\002j\r\002\000\000\015\246\018\"\000\000\015\250\000\000\018&\018r\000\000\000\000\000\000\016\014\016\142\000\000\018v\000\000\000\000\000\000\016\150\000\000\002z\000\000\000\000\000\000\000\000\018~\000\000\016\154\000\000\016f\016R\000\000\000\000\002\238\017\194\000\000\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\000\000\000\000\017\202\000\000\000\000\000\000\016j\002\170\017\206\000\000\016n\014\030\002\178\000\000\000\000\016r\016v\000\000\000\000\016z\017\210\000\000\000\000\000\000\000\000\017\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\134\016~\000\000\000\000\017\218\017\222\016\130\017\226\000\000\000\n\000\000\017\246\000\000\000\000\000\000\000\000\000\000\018\002\016\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\018\"\000\000\000\000\000\000\018&\018r\000\000\000\000\000\000\000\000\016\142\000\000\018v\000\000\000\000\000\000\016\150\000\000\000\000\000\000\000\000\000\000\000\000\018~\000\000\016\154\000\000\012\t\012\t\012\t\012\t\002\238\012\t\000\000\012\t\012\t\012\t\012\t\000\000\012\t\012\t\000\000\012\t\000\000\012\t\000\000\012\t\012\t\012\t\012\t\000\000\000\000\016I\000\000\000\000\016I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\t\012\t\012\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\012\t\000\000\016I\016I\000\000\000\000\012\t\016I\000\000\024\146\003\006\016I\000\000\024\154\000\000\000\000\000\000\016I\000\000\012\t\016I\016I\000\000\016I\016I\000\000\012\t\003\014\000\000\016I\003\"\012\t\000\000\016I\000\000\000\000\016I\000\000\016I\016I\012\t\012\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\012\t\000\000\016I\012\t\016I\000\000\012\t\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016I\000\000\000\000\000\000\012\t\000\000\000\000\004n\000\000\012\t\000\000\012\t\000\000\000\000\012\t\000\000\000\000\000\000\000\000\000\000\000\000\012\t\000\000\012\t\000\000\000\000\012\t\016I\016I\000\000\016I\016I\004r\000\000\016I\000\000\000\000\000\000\000\000\000\000\000\000\012\t\012\t\004z\000\000\000\000\024\238\012\t\016I\000\000\000\000\016I\016I\016I\016I\016I\000\000\000\000\000\000\016I\016I\016I\000\000\016I\016I\016I\015\217\000\000\000\000\015\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\217\015\217\000\000\000\000\000\000\015\217\000\000\000\000\003\006\015\217\000\000\000\000\000\000\000\000\000\000\015\217\000\000\000\000\015\217\015\217\000\000\015\217\015\217\000\000\000\000\003\014\000\000\015\217\003\"\000\000\000\000\015\217\000\000\000\000\015\217\000\000\015\217\015\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\217\000\000\015\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\015\217\000\000\000\000\000\000\000\000\000\000\000\000\004n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\217\015\217\000\000\015\217\015\217\004r\000\000\015\217\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\225\004z\000\000\005\225\000\000\000\000\015\217\000\000\000\000\015\217\015\217\015\217\015\217\015\217\000\000\000\000\000\000\015\217\015\217\015\217\000\000\015\217\015\217\015\217\005\225\005\225\000\000\000\000\000\000\005\225\000\000\000\000\005\225\005\225\000\000\000\000\000\000\000\000\000\000\005\225\000\000\000\000\005\225\005\225\000\000\005\225\005\225\000\000\000\000\005\225\000\000\005\225\005\225\000\000\000\000\005\225\000\000\000\000\005\225\000\000\005\225\005\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\001B\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001F\000\000\005\225\000\000\005\225\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\225\000\000\000\000\000\000\000\000\000\000\000\000\005\225\000\000\000\000\000\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\000\000\000\000\000\005\225\005\225\000\000\005\225\b\025\005\225\000\000\005\225\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\225\000\000\000\000\000\000\000\000\005\225\000\000\000\000\005\225\000\000\005\225\000\000\005\225\000\000\000\000\000\000\005\225\005\225\005\225\000\000\005\225\005\225\005\225\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\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\011\249\011\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\249\000\000\000\000\000\000\000\000\000\000\011\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\011\249\000\174\000\000\000\178\000\186\000\194\001\006\011\249\001\014\001\022\000\000\001&\011\249\001.\000\000\0016\001\230\001\238\001\242\000\000\000\000\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\001\250\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\249\000\000\000\000\011\249\000\000\000\000\011\249\002\002\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\000\000\000\000\000\000\011\249\000\000\011\249\002\018\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\002\022\000\000\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\011\249\000\000\000\000\000\000\024\150\011\249\011\253\011\253\011\253\011\253\000\000\011\253\000\000\011\253\011\253\011\253\011\253\000\000\011\253\011\253\000\000\011\253\000\000\011\253\000\000\011\253\011\253\011\253\011\253\000\000\000\n\005\229\000\000\000\000\005\229\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\253\011\253\011\253\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011\253\000\000\005\229\005\229\000\000\000\000\011\253\005\229\000\000\024\242\005\229\005\229\000\000\000\000\000\000\000\000\000\000\005\229\000\000\011\253\005\229\005\229\000\000\005\229\005\229\000\000\011\253\005\229\000\000\005\229\005\229\011\253\000\000\005\229\000\000\000\000\005\229\000\000\005\229\005\229\011\253\011\253\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\253\000\000\005\229\011\253\005\229\000\000\011\253\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005\229\000\000\000\000\000\000\011\253\000\000\000\000\005\229\000\000\011\253\000\000\011\253\000\000\000\000\011\253\000\000\000\000\000\000\000\000\000\000\000\000\011\253\000\000\011\253\000\000\000\000\011\253\005\229\005\229\000\000\005\229\b!\005\229\000\000\005\229\000\000\000\000\000\000\000\000\000\000\000\000\011\253\011\253\005\229\000\000\000\000\000\000\011\253\005\229\000\000\000\000\005\229\000\000\005\229\000\000\005\229\000\000\000\000\000\000\005\229\005\229\005\229\000\000\005\229\005\229\005\229\000R\t\174\t\182\000\170\000\000\000\174\000\000\t\250\n\002\n\n\nN\000\000\nV\n^\000\000\nn\000\000\nv\000\000\n~\n\170\001\238\n\178\000\000\000\000\016-\000\000\000\000\016-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\250\n\186\025\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025\"\000\000\016-\016-\000\000\000\000\n\194\016-\000\000\000\000\016\178\016-\000\000\000\000\000\000\000\000\000\000\016-\000\000\025:\016-\016-\000\000\016-\016-\000\000\n\210\016\186\000\000\016-\016\198\025n\000\000\016-\000\000\000\000\016-\000\000\016-\016-\025\142\n\254\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\022\000\000\016-\025\154\016-\000\000\025\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016-\000\000\000\000\000\000\026\n\000\000\000\000\016\210\000\000\026\022\000\000\n\017\000\000\000\000\026F\000\000\000\000\000\000\000\000\000\000\000\000\026R\000\000\026^\000\000\000\000\027Z\016-\016-\000\000\016-\000\000\016\214\001\209\016-\000\000\001\209\000\000\000\000\000\000\000\000\027f\027~\016\222\000\000\001\209\000\000\027\138\001\209\000\000\000\000\016-\000\000\016-\000\000\000\000\000\000\001\209\001\209\016-\016-\016-\001\209\016-\016-\016-\001\209\000\000\000\000\001\209\001\209\000\000\001\209\000\000\001\209\001\209\001\209\000\000\001\209\001\209\000\000\000\000\000\000\000\000\001\209\000\000\000\000\001\209\001\209\000\000\001\209\001\209\000\000\001\209\001\209\000\000\001\209\000\000\000\000\000\000\001\209\000\000\000\000\001\209\000\000\001\209\001\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\209\000\000\001\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\209\001\209\001\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\209\000\000\000\000\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\209\003*\000\000\001\209\001\209\000\000\000\000\001\209\000\000\000\000\000\000\000\000\001\209\0032\000\000\001\209\001\209\000\000\000\000\001\209\000\000\001\209\000\000\000\000\001\209\001\209\001\209\001\209\001Y\000\000\000\000\001Y\004^\001\209\001\209\000\000\001\209\001\209\001\209\001\209\000\000\000\000\000\000\000\000\004R\001\209\001\209\000\000\001\209\001\209\001\209\000\000\001Y\001Y\000\000\000\000\000\000\001Y\000\000\000\000\000\000\001Y\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\001Y\001Y\000\000\001Y\001Y\000\000\000\000\001M\000\000\001Y\001M\000\000\000\000\001Y\000\000\000\000\003r\000\000\003\130\001Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001M\001M\000\000\000\000\000\000\001M\000\000\000\000\000\000\001M\000\000\000\000\001Y\000\000\001Y\001M\000\000\000\000\001M\001M\000\000\001M\001M\000\000\000\000\001Y\000\000\001M\000\000\000\000\000\000\001M\000\000\000\000\003r\000\000\001M\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\001Y\000\000\000\000\001Y\001Y\000\000\000\000\003z\000\000\001M\000\000\001M\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001Y\001M\000\000\001Y\001Y\001Y\001Y\001Y\000\000\000\000\000\000\000\000\001Y\001Y\000\000\001Y\001Y\001Y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001M\000\000\000\000\001M\001M\000\000\001Q\003z\000\000\001Q\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\000\000\001M\001M\001M\001M\001M\000\000\001Q\001Q\000\000\001M\001M\001Q\001M\001M\001M\001Q\000\000\000\000\000\000\000\000\000\000\001Q\000\000\000\000\001Q\001Q\000\000\001Q\001Q\000\000\000\000\001U\000\000\001Q\001U\000\000\000\000\001Q\000\000\000\000\003r\000\000\001Q\001Q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001U\001U\000\000\000\000\000\000\001U\000\000\000\000\000\000\001U\000\000\000\000\001Q\000\000\001Q\003j\000\000\000\000\001U\001U\000\000\001U\001U\000\000\000\000\001Q\000\000\001U\000\000\000\000\000\000\001U\000\000\000\000\003r\000\000\003\130\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\001Q\000\000\000\000\001Q\001Q\000\000\000\000\003z\000\000\001U\000\000\001U\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001Q\001U\000\000\001Q\001Q\001Q\001Q\001Q\000\000\000\000\000\000\000\000\001Q\001Q\000\000\001Q\001Q\001Q\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\001e\003z\000\000\001e\000\000\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\001U\001U\001U\000\000\003b\003\138\000\000\001U\001U\001e\001U\001U\001U\001e\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\001e\001e\000\000\001e\001e\000\000\000\000\001]\000\000\001e\001]\000\000\000\000\001e\000\000\000\000\003r\000\000\003\130\001e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\000\000\000\001]\000\000\000\000\000\000\001]\000\000\000\000\003\154\000\000\001e\003j\000\000\000\000\001]\001]\000\000\001]\001]\000\000\000\000\001e\000\000\001]\000\000\000\000\000\000\001]\000\000\000\000\003r\000\000\003\130\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\001e\000\000\000\000\001e\001e\000\000\000\000\003z\000\000\001]\000\000\001]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001e\001]\000\000\001e\001e\001e\001e\001e\000\000\000\000\000\000\000\000\001e\001e\000\000\001e\001e\001e\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]\001]\000\000\001a\003z\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\001]\000\000\000\000\001]\001]\001]\001]\001]\000\000\003b\003\138\000\000\001]\001]\001a\001]\001]\001]\001a\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\001a\001a\000\000\001a\001a\000\000\000\000\001i\000\000\001a\001i\000\000\000\000\001a\000\000\000\000\003r\000\000\003\130\001a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\000\000\000\001i\000\000\000\000\000\000\001i\000\000\000\000\003\154\000\000\001a\003j\000\000\000\000\001i\001i\000\000\001i\001i\000\000\000\000\001a\000\000\001i\000\000\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\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\001a\000\000\000\000\001a\001a\000\000\000\000\003z\000\000\003\154\000\000\001i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001a\001i\000\000\001a\001a\001a\001a\001a\000\000\000\000\000\000\000\000\001a\001a\000\000\001a\001a\001a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\162\000\000\000\000\001i\001i\000\000\001q\003z\000\000\001q\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\000\000\001i\001i\001i\001i\001i\000\000\003b\003\138\000\000\001i\001i\001q\001i\001i\001i\001q\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\001q\001q\000\000\001q\001q\000\000\000\000\003\242\000\000\001q\001m\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\001q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\000\000\000\001m\000\000\000\000\000\000\001m\000\000\000\000\003\154\000\000\001q\003j\000\000\000\000\001m\001m\000\000\001m\001m\000\000\000\000\001q\000\000\001m\000\000\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\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\003\162\000\000\000\000\001q\001q\000\000\000\000\003z\000\000\003\154\000\000\001m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001q\001m\000\000\001q\001q\001q\001q\001q\000\000\000\000\000\000\000\000\001q\001q\000\000\001q\003\170\001q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\162\000\000\000\000\001m\001m\000\000\003\242\003z\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\001m\000\000\000\000\001m\001m\001m\001m\001m\000\000\003b\003\138\000\000\001m\001m\001u\001m\003\170\001m\001u\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\001u\001u\000\000\001u\003\250\000\000\000\000\003V\000\000\001u\003\178\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\001u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\210\003\218\000\000\000\000\000\000\002-\000\000\000\000\000\000\002-\000\000\000\000\003\154\000\000\001u\003\226\000\000\000\000\002-\002-\000\000\003\234\004\n\000\000\000\000\001u\000\000\002-\000\000\000\000\000\000\004\018\000\000\000\000\004\026\000\000\004\"\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\003\162\000\000\000\000\001u\001u\000\000\000\000\003z\000\000\004*\000\000\002-\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001u\002-\000\000\001u\001u\001u\001u\001u\000\000\000\000\000\000\000\000\001u\001u\000\000\001u\003\170\001u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0042\000\000\000\000\002-\002-\000\000\000\129\004:\000\000\000\129\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\002-\002-\002-\002-\000\000\000\000\003b\003\138\000\000\002-\002-\000\129\004B\004J\002-\000\129\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\000\129\000\129\000\000\000\129\000\129\000\000\000\000\000i\000\000\000\129\000i\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\000\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000i\000i\000\000\000\000\000\000\000i\000\000\000\000\000\000\000i\000\000\000\000\003\154\000\000\000\129\003j\000\000\000\000\000i\000i\000\000\000i\000i\000\000\000\000\000\129\000\000\000i\000\000\000\000\000\000\000i\000\000\000\000\003r\000\000\003\130\000i\000\000\000\000\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\162\000\000\000\000\000\129\000\129\000\000\000\000\003z\000\000\000i\000\000\000i\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\129\000i\000\000\000\129\000\129\000\129\000\129\000\000\000\000\000\000\000\000\000\000\000\129\000\129\000\000\000\129\003\170\000\129\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000i\000\000\000\000\000i\000i\000\000\000e\003z\000\000\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000i\000\000\000\000\000i\000i\000i\000i\000\000\000\000\000e\000e\000\000\000i\000i\000e\000i\000i\000i\000e\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\000e\000e\000\000\000e\000e\000\000\000\000\000]\000\000\000e\000]\000\000\000\000\000e\000\000\000\000\003r\000\000\003\130\000e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000]\000]\000\000\000\000\000\000\000]\000\000\000\000\000\000\000]\000\000\000\000\000e\000\000\000e\000]\000\000\000\000\000]\000]\000\000\000]\000]\000\000\000\000\000e\000\000\000]\000\000\000\000\000\000\000]\000\000\000\000\003r\000\000\000]\000]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000e\000\000\000\000\000e\000e\000\000\000\000\003z\000\000\000]\000\000\000]\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000e\000]\000\000\000e\000e\000e\000e\000\000\000\000\000\000\000\000\000\000\000e\000e\000\000\000e\000e\000e\000\000\000\000\000\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\242\003z\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\000\000]\000]\000]\000]\000\000\000\000\003b\003\138\000\000\000]\000]\000\137\000]\000]\000]\000\137\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\000\137\000\137\000\000\000\137\003\250\000\000\000\000\003\242\000\000\000\137\000}\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\000\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\000\000\000\000}\000\000\000\000\000\000\000}\000\000\000\000\003\154\000\000\000\137\003j\000\000\000\000\000}\000}\000\000\000}\000}\000\000\000\000\000\137\000\000\000}\000\000\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\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\003\162\000\000\000\000\000\137\000\137\000\000\000\000\003z\000\000\003\154\000\000\000}\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\137\000}\000\000\000\137\000\137\000\137\000\137\000\000\000\000\000\000\000\000\000\000\000\137\000\137\000\000\004\002\003\170\000\137\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\162\000\000\000\000\000}\000}\000\000\000u\003z\000\000\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000}\000\000\000\000\000}\000}\000}\000}\000\000\000\000\003b\003\138\000\000\000}\000}\000u\000}\003\170\000}\000u\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\000u\000u\000\000\000u\000u\000\000\000\000\000a\000\000\000u\000a\000\000\000\000\000u\000\000\000\000\003r\000\000\003\130\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000a\000\000\000\000\000\000\000a\000\000\000\000\000\000\000a\000\000\000\000\003\154\000\000\000u\000a\000\000\000\000\000a\000a\000\000\000a\000a\000\000\000\000\000u\000\000\000a\000\000\000\000\000\000\000a\000\000\000\000\003r\000\000\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\000\000\000\000u\000\000\000\000\000u\000u\000\000\000\000\003z\000\000\000a\000\000\000a\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000u\000a\000\000\000u\000u\000u\000u\000\000\000\000\000\000\000\000\000\000\000u\000u\000\000\000u\000u\000u\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000\000\000\000\000a\000a\000\000\000m\003z\000\000\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000a\000\000\000\000\000a\000a\000a\000a\000\000\000\000\003b\003\138\000\000\000a\000a\000m\000a\000a\000a\000m\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\000m\000m\000\000\000m\000m\000\000\000\000\000q\000\000\000m\000q\000\000\000\000\000m\000\000\000\000\003r\000\000\003\130\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\000\000\000\000q\000\000\000\000\000\000\000q\000\000\000\000\000m\000\000\000m\003j\000\000\000\000\000q\000q\000\000\000q\000q\000\000\000\000\000m\000\000\000q\000\000\000\000\000\000\000q\000\000\000\000\003r\000\000\003\130\000q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000m\000\000\000\000\000m\000m\000\000\000\000\003z\000\000\003\154\000\000\000q\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000m\000q\000\000\000m\000m\000m\000m\000\000\000\000\000\000\000\000\000\000\000m\000m\000\000\000m\000m\000m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000q\000\000\000\000\000q\000q\000\000\003\242\003z\000\000\000\133\000\000\000\000\000\000\000\000\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\003b\003\138\000\000\000q\000q\000\133\000q\000q\000q\000\133\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\000\133\000\133\000\000\000\133\003\250\000\000\000\000\000y\000\000\000\133\000y\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\000\000\000\000y\000\000\000\000\000\000\000y\000\000\000\000\003\154\000\000\000\133\003j\000\000\000\000\000y\000y\000\000\000y\000y\000\000\000\000\000\133\000\000\000y\000\000\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\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\003\162\000\000\000\000\000\133\000\133\000\000\000\000\003z\000\000\003\154\000\000\000y\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\133\000y\000\000\000\133\000\133\000\133\000\133\000\000\000\000\000\000\000\000\000\000\000\133\000\133\000\000\000\133\003\170\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\162\000\000\000\000\000y\000y\000\000\000\000\003z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\000\000y\000y\000\000\000y\000y\000y\000R\000V\000f\000\170\t\170\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\000\000\001&\000\000\001.\012\226\0016\001\230\001\238\001\242\012\230\000\000\002j\000\000\000\000\r:\000\000\000\000\r>\000\000\000\000\000\000\000\000\000\000\000\000\001\250\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\000\000\002\002\000\000\000\000\rR\r^\000\000\000\000\r\254\014\022\014\026\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\000\000\000\000\002\018\000\000\000\000\000\000\rr\002\170\000\000\000\000\rv\014\030\002\178\000\000\000\000\rz\r~\002\022\000\000\r\130\001F\000\000\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\022\r\026\r\134\r\138\000\000\000\000\000\000\000\000\r\142\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\150\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\006\197\000\000\014\"\000\000\014>\000\000\000\000\000\000\000\000\000\000\002j\000\000\000\000\r:\000\000\r\154\r>\000\000\000\000\000\000\000\000\r\162\000\000\000\000\000\000\000\000\000\000\004\241\006\189\r\030\r\166\000\000\002z\000\000\000\000\000\000\002\238\000\000\000\000\006\189\000\000\rR\r^\000\000\006\189\r\254\014\022\014\026\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\rr\002\170\000\000\000\000\rv\014\030\002\178\000\000\000\000\rz\r~\000\000\000\000\r\130\001F\000\000\000\000\000\000\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\134\r\138\000\000\000\000\000\000\000\000\r\142\000\000\002j\000\n\000\000\r:\000\000\000\000\r>\000\000\000\000\000\000\r\150\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\197\000\000\014\"\002z\014>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\rR\r^\000\000\r\154\r\254\014\022\014\026\000\000\000\000\r\162\002\158\000\000\002\162\000\000\000\000\t9\000\000\000\000\r\166\000\000\000\000\rr\002\170\000\000\002\238\rv\014\030\002\178\000\000\000\000\rz\r~\000\000\000\000\r\130\001F\000\000\000\000\000\000\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\134\r\138\000\000\000\000\000\000\000\000\r\142\000\000\002j\000\n\000\000\r:\000\000\000\000\r>\000\000\000\000\000\000\r\150\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\197\000\000\014\"\002z\014>\000\000\000\000\000\000\000\000\000\000\000\000\000\000\rR\r^\000\000\r\154\r\254\014\022\014\250\000\000\000\000\r\162\002\158\000\000\002\162\000\000\000\000\002\129\000\000\000\000\r\166\000\000\000\000\rr\002\170\000\000\002\238\rv\014\030\002\178\000\000\000\000\rz\r~\000\000\000\000\r\130\001F\000\000\000\000\003\213\000\000\000\000\000\000\000j\003\213\000\000\000r\000\000\000\130\003\213\000\000\003\213\r\134\r\138\000\000\000\138\003\213\003\213\r\142\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\r\150\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\197\000\000\000\000\000\000\014>\000\000\000\000\000\146\003\213\000\000\000\000\000\000\003\213\000\000\000\000\r\154\000\000\000\000\000\000\000\000\000\000\r\162\000\000\000\000\000\000\000\000\000\000\tI\003\213\000\000\r\166\000\000\000\000\000\000\000\000\000\000\002\238\000\000\000\000\000\000\003\213\000\000\000\162\000\000\000\000\000\000\000\000\000\000\000\000\003\213\014r\003\209\000\000\003\213\003\213\000\198\003\209\000\000\000\206\000\000\000\222\003\209\003\213\003\209\000\000\000\000\003\213\000\230\003\209\003\209\000\000\000\000\000\000\000\000\014z\014\130\000\000\003\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\213\000\000\014\138\000\000\000\000\003\213\000\000\000\000\014\146\014\154\000\000\000\238\003\209\000\000\000\000\000\000\003\209\000\000\014\162\000\000\000\000\014\170\000\000\014\178\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\209\000\000\000\000\000\000\000\000\000\000\003\213\000\000\000\000\003\213\003\213\000\000\003\209\003\213\000\254\000\000\014\186\000\000\003\213\003\213\000\000\003\209\000\000\003\213\000\000\003\209\003\209\000\000\001\233\000\000\000\000\001\233\000\000\000\000\003\209\000\000\000\000\000\000\003\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\209\000\000\000\000\001\233\001\233\000\000\000\000\014\194\001\233\000\000\003\209\000\000\001\233\000\000\014\202\003\209\000\000\000\000\001\233\000\000\000\000\001\233\001\233\000\000\001\233\001\233\000\000\000\000\006-\000\000\001\233\000\000\000\000\000\000\001\233\006-\000\000\001\233\000\000\001\233\001\233\000\000\000\000\014\210\014\218\000\000\000\000\000\000\003\209\000\000\000\000\003\209\003\209\000\000\000\000\003\209\000\000\000\000\000\000\000\000\003\209\003\209\000\000\000\000\001\233\003\209\001\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\233\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002j\000\000\000\000\002n\000\000\000\000\002r\000\000\000\000\000\000\000\000\000\000\000\000\001\233\016\242\000\000\001\233\000\000\000\000\000\000\001\233\000\000\002z\000\000\000\000\002~\000\000\000\000\000\000\000\000\000\000\002\138\002\142\000\000\002\150\000\000\r6\001\233\000\000\001\233\000\000\002\158\000\000\002\162\000\000\016\250\001\233\001\233\000\000\001\233\001\233\001\233\002\166\002\170\000\000\014.\002\174\001f\002\178\000\000\000\000\002\182\002\186\t\198\006\165\002\190\002\194\000\000\000\000\000\000\000\000\000\000\000\000\n\026\006\165\000\000\006\165\000\000\000\000\000\000\000\000\000\000\000\000\002\198\000\000\000\000\006\165\006\165\002\202\006\165\000\000\000\n\000\000\000\000\000\000\000\000\000\000\006\165\000\000\006\165\002\210\000\000\000\000\006\165\000\000\000\000\006\165\006\165\nb\006\165\006\165\002\214\n!\006\165\000\000\000\000\006\165\000\000\011\138\006\165\006\165\006\165\000\000\000\000\002\218\000\000\006\165\006\165\011Z\000\000\002\230\006\165\006\165\000Z\006\165\n!\000\000\006\165\006\165\002\246\011\222\006\165\006\165\000Z\006\165\002\238\000\000\012&\006\165\000\000\006\165\006\165\006\165\006\165\000\000\006\165\000\000\006\165\006\165\000\000\006\165\006\165\000\000\006\165\006\165\006\165\006\165\000\000\006\165\006\165\000\000\006\165\006\165\006\165\006\165\000\000\000\000\006\165\000Z\000\000\006\165\006\165\006\165\006\165\006\165\000\000\006\165\006\165\000Z\006\165\006\165\000\000\006\165\006\165\006\165\000\000\006\165\006\165\000\000\006\165\006\165\006\165\012Z\006\165\006\165\012\154\006\165\000Z\000\000\006\165\000Z\006\165\006\165\006\165\006\165\006\165\006\165\000Z\000\000\006\165\006\165\012\198\006\165\000\000\006\165\006\165\000Z\006\165\006\165\006\165\006\165\006\165\006\165\000\000\006\165\006\165\000\000\006\165\006\165\006\165\000\000\006\165\006\165\000\000\006\165\006\165\000\000\000\000\006\165\000\000\000\000\006\165\000\000\000\000\006\165\000\000\006\165\006\165\006\165\006\165\006\165\006\165\000\000\006\165\006\165\006\165\006\165\006\165\006\165\006\165\006\165\006\165\000\000\006\165\006\165\006\165\006\165\006\165\000\000\006\165\006\165\000\000\006\165\006\165\002j\000\000\000\000\002n\006\165\006\165\002r\006\165\006\165\006\165\006\165\000\000\006\165\006\165\006\165\000\000\016\018\000\000\000\000\006\165\006\165\000\000\002z\006\165\000\000\002~\000\000\000\000\006\165\006\165\000\000\002\138\002\142\000\000\002\150\017&\000\000\000\000\017.\000\000\000\000\002\158\000\000\002\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\166\002\170\000\000\000\000\002\174\001f\002\178\017>\017F\002\182\002\186\000\000\002=\002\190\002\194\000\000\002=\000\000\000\000\000\000\000\000\000\000\017N\000\000\000\000\002=\002=\000\000\017V\017^\000\000\002\198\000\000\000\000\002=\000\000\002\202\000\000\017f\000\n\000\000\017n\000\000\017v\002=\000\000\000\000\000\000\002\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\017~\000\000\002=\000\000\002\218\000\000\000\000\000\000\000\000\000\000\002\230\000\000\000\000\002=\000\000\000\000\000\000\000\000\000\000\002\246\000\000\000\000\000\000\000\000\000\000\002\238\000\000\000\000\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\134\000\000\000\000\002=\000\000\000\000\0015\017\142\000\000\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=\000\000\002=\000\000\000\000\000\000\003b\003\138\000\000\002=\002=\0015\017\150\017\158\002=\0015\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\0015\0015\000\000\0015\0015\000\000\000\000\001\029\000\000\0015\001\029\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\0015\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\029\001\029\000\000\000\000\000\000\001\029\000\000\000\000\000\000\001\029\000\000\000\000\003\154\000\000\0015\003j\000\000\000\000\001\029\001\029\000\000\001\029\001\029\000\000\000\000\0015\000\000\001\029\000\000\000\000\000\000\001\029\000\000\000\000\003r\000\000\003\130\001\029\000\000\000\000\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\162\000\000\000\000\0015\000\000\000\000\000\000\003z\000\000\001\029\000\000\001\029\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\029\000\000\0015\000\000\0015\000\000\000\000\000\000\000\000\000\000\000\000\0015\0015\000\000\0015\003\170\0015\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\029\000\000\000\000\001\029\000\000\000\000\001\025\003z\000\000\001\025\000\000\000\000\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\029\000\000\001\029\000\000\000\000\000\000\001\025\001\025\000\000\001\029\001\029\001\025\001\029\001\029\001\029\001\025\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\001\025\001\025\000\000\001\025\001\025\000\000\000\000\001\017\000\000\001\025\001\017\000\000\000\000\001\025\000\000\000\000\003r\000\000\003\130\001\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\017\001\017\000\000\000\000\000\000\001\017\000\000\000\000\000\000\001\017\000\000\000\000\001\025\000\000\001\025\001\017\000\000\000\000\001\017\001\017\000\000\001\017\001\017\000\000\000\000\001\025\000\000\001\017\000\000\000\000\000\000\001\017\000\000\000\000\003r\000\000\001\017\001\017\000\000\000\000\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\025\000\000\000\000\001\025\000\000\000\000\000\000\003z\000\000\001\017\000\000\001\017\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\017\000\000\001\025\000\000\001\025\000\000\000\000\000\000\000\000\000\000\000\000\001\025\001\025\000\000\001\025\001\025\001\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\017\000\000\000\000\001\017\000\000\000\000\003\242\003z\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\001\017\000\000\001\017\000\000\000\000\000\000\003b\003\138\000\000\001\017\001\017\001=\001\017\001\017\001\017\001=\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\001=\001=\000\000\001=\003\250\000\000\000\000\003\242\000\000\001=\0011\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\000\000\000\0011\000\000\000\000\000\000\0011\000\000\000\000\003\154\000\000\001=\003j\000\000\000\000\0011\0011\000\000\0011\0011\000\000\000\000\001=\000\000\0011\000\000\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\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\000\000\003\162\000\000\000\000\001=\000\000\000\000\000\000\003z\000\000\003\154\000\000\0011\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0011\000\000\001=\000\000\001=\000\000\000\000\000\000\000\000\000\000\000\000\001=\001=\000\000\004\002\003\170\001=\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\162\000\000\000\000\0011\000\000\000\000\001)\003z\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\0011\000\000\0011\000\000\000\000\000\000\003b\003\138\000\000\0011\0011\001)\0011\003\170\0011\001)\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\001)\001)\000\000\001)\001)\000\000\000\000\001\021\000\000\001)\001\021\000\000\000\000\001)\000\000\000\000\003r\000\000\003\130\001)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\021\001\021\000\000\000\000\000\000\001\021\000\000\000\000\000\000\001\021\000\000\000\000\003\154\000\000\001)\001\021\000\000\000\000\001\021\001\021\000\000\001\021\001\021\000\000\000\000\001)\000\000\001\021\000\000\000\000\000\000\001\021\000\000\000\000\003r\000\000\001\021\001\021\000\000\000\000\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\003z\000\000\001\021\000\000\001\021\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\021\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\021\000\000\000\000\001\021\000\000\000\000\001!\003z\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\001\021\000\000\001\021\000\000\000\000\000\000\003b\003\138\000\000\001\021\001\021\001!\001\021\001\021\001\021\001!\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\001!\001!\000\000\001!\001!\000\000\000\000\001%\000\000\001!\001%\000\000\000\000\001!\000\000\000\000\003r\000\000\003\130\001!\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\000\000\000\001%\000\000\000\000\000\000\001%\000\000\000\000\001!\000\000\001!\003j\000\000\000\000\001%\001%\000\000\001%\001%\000\000\000\000\001!\000\000\001%\000\000\000\000\000\000\001%\000\000\000\000\003r\000\000\003\130\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\001!\000\000\000\000\000\000\003z\000\000\003\154\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\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\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001%\000\000\000\000\001%\000\000\000\000\003\242\003z\000\000\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\000\000\001%\000\000\001%\000\000\000\000\000\000\003b\003\138\000\000\001%\001%\0019\001%\001%\001%\0019\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\0019\0019\000\000\0019\003\250\000\000\000\000\001-\000\000\0019\001-\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\0019\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\000\000\000\001-\000\000\000\000\000\000\001-\000\000\000\000\003\154\000\000\0019\003j\000\000\000\000\001-\001-\000\000\001-\001-\000\000\000\000\0019\000\000\001-\000\000\000\000\000\000\003\146\000\000\000\000\003r\000\000\003\130\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\003\162\000\000\000\000\0019\000\000\000\000\000\000\003z\000\000\003\154\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\0019\000\000\0019\000\000\000\000\000\000\000\000\000\000\000\000\0019\0019\000\000\0019\003\170\0019\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002j\000\000\003\162\002n\000\000\001-\002r\000\000\000\000\003z\000\000\000\000\000\000\000\000\000\000\000\000\n!\000\000\000\000\000\000\000\000\000\000\002z\000\000\000\000\002~\001-\000\000\001-\000\000\000\000\002\138\002\142\000\000\002\150\001-\001-\000\000\001-\001-\001-\002\158\000\000\002\162\000\000\000\000\000\000\000\189\000\000\000\000\000\000\000\000\002\166\002\170\000\000\000\000\002\174\001f\002\178\000\000\000\000\002\182\002\186\000\000\000\000\002\190\002\194\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\198\000\000\000\000\003j\000\000\002\202\000\000\000\000\000\n\000\189\000\189\000\000\000\000\000\000\000\000\000\000\000\000\002\210\000\000\003\146\002j\000\000\003r\002n\003\130\000\000\002r\000\000\002\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\021\026\000\000\000\000\000\000\000\000\002\218\002z\000\000\000\000\002~\000\000\002\230\000\000\003\154\n!\002\138\002\142\000\000\002\150\000\000\002\246\000\000\000\000\000\000\000\000\002\158\002\238\002\162\000\000\000\000\000\000\023\198\000\000\000\000\000\000\000\000\002\166\002\170\000\000\000\000\002\174\001f\002\178\023\202\000\000\002\182\002\186\000\000\000\000\002\190\002\194\000\000\000\000\003\162\023\206\000\000\023\210\012a\012a\000\000\003z\000\000\000\000\000\000\023\214\000\000\000\000\002\198\000\000\000\000\023\218\000\000\002\202\023\226\000\189\000\n\000\000\023\230\000\000\000\000\000\000\000\189\000\000\023\234\002\210\000\000\000\000\000\000\000\000\000\189\003\170\000\000\000\000\000\000\023\198\002\214\000\000\012a\000\000\023\238\000\000\000\000\000\000\000\000\000\000\000\000\023\202\000\000\002\218\000\000\000\000\000\000\000\000\026\026\002\230\000\000\000\000\023\206\000\000\023\210\000\000\000\000\000\000\002\246\0125\000\000\012a\023\214\023\242\002\238\000\000\023\246\000\000\023\218\000\000\000\000\023\226\000\000\000\000\000\000\023\230\000\000\025F\000\000\023\250\000\000\023\234\000\000\000\000\023\254\000\n\024\002\000\000\024\006\024\n\000\000\024\014\026v\025\202\000\000\0125\000\000\023\238\024\018\000\000\000\000\024\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\026\000\000\000\000\000\000\000\000\024\030\024\"\012a\0125\000\000\023\242\000\000\000\000\023\246\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\250\000\000\000\000\000\000\000\000\023\254\000\n\024\002\000\000\024\006\024\n\000\000\024\014\000\000\000\000\000\000\000\000\000\000\000\000\024\018\000\000\000\000\024\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\026\000\000\000\000\000\000\000\000\024\030\024\"\0125\000R\000V\000f\000\170\000\000\000\174\012\218\000\178\000\186\000\194\001\006\012\222\001\014\001\022\000\000\001&\028V\001.\012\226\0016\001\230\001\238\001\242\012\230\028Z\002j\000\000\000\000\002n\000\000\000\000\002v\000\000\000\000\000\000\000\000\000\000\000\000\001\250\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002z\000\000\000\000\002~\000\000\000\000\002\002\000\000\000\000\002\138\t&\000\000\002\150\000\000\000\000\000\000\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\000\000\000\000\002\018\000\000\000\000\000\000\002\166\002\170\000\000\000\000\002\174\001f\002\178\000\000\000\000\002\182\002\186\002\022\000\000\002\190\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\002\198\000\000\000\000\000\000\000\000\002\222\000\000\000\000\000\n\000\000\000\000\000\000\002j\000\000\000\000\002n\000\000\002\210\002v\000\000\000\000\000\000\000\000\000\000\000\000\000\n\000\000\000\000\002\214\000\000\005i\000\000\000\000\000\000\002z\000\000\000\000\002~\000\000\000\000\000\000\002\226\000\000\002\138\t\022\000\000\002\150\002\230\000\000\000\000\000\000\000\000\000\000\002\158\000\000\002\162\002\234\000\000\000\000\000\000\000\000\000\000\002\238\000\000\002\166\002\170\000\000\000\000\002\174\001f\002\178\000\000\000\000\002\182\002\186\000\000\000\000\002\190\002\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002j\000\000\000\000\002n\000\000\000\000\002v\002\198\000\000\000\000\000\000\000\000\002\222\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\002z\000\000\002\210\002~\000\000\000\000\000\000\000\000\000\000\002\138\b\254\000\000\002\150\002\214\000\000\000\000\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\000\000\000\000\002\226\000\000\000\000\000\000\002\166\002\170\002\230\000\000\002\174\001f\002\178\000\000\000\000\002\182\002\186\002\234\000\000\002\190\002\194\000\000\000\000\002\238\000\000\000\000\000\000\000\000\000\000\000\000\002j\000\000\000\000\002n\000\000\000\000\002v\002\198\000\000\000\000\000\000\000\000\002\222\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\002z\000\000\002\210\002~\000\000\000\000\000\000\000\000\000\000\002\138\002\206\000\000\002\150\002\214\000\000\000\000\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\000\000\016\017\002\226\000\000\016\017\000\000\002\166\002\170\002\230\000\000\002\174\001f\002\178\000\000\000\000\002\182\002\186\002\234\000\000\002\190\002\194\000\000\000\000\002\238\000\000\016\017\016\017\000\000\000\000\000\000\000\000\000\000\000\000\007^\000\000\000\000\000\000\002\198\000\000\000\000\016\017\000\000\002\222\000\000\016\017\000\n\016\017\016\017\000\000\000\000\007f\000\000\000\000\bj\002\210\000\000\016\017\000\000\000\000\016\017\000\000\016\017\000\000\000\000\000\000\002\214\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\226\000\000\000\000\000\000\000\000\000\000\002\230\000\000\016\017\000\000\000\000\000\000\000\000\000\000\000\000\002\234\000\000\000\000\000\000\000\000\000\000\002\238\000\000\000\000\b\202\000\000\000\000\000\000\bv\000\000\000\000\000\000\000\000\000\000\004\185\000\000\000\000\004\185\000\000\000\000\004\185\000\000\000\000\000\000\000\000\000\000\000\000\000\000\016\017\016\017\000\000\016\017\000\000\bz\000\000\016\017\004\185\000\000\000\000\004\185\000\000\000\000\000\000\000\000\b\130\004\185\004\185\000\000\004\185\016\017\000\000\000\000\000\000\016\017\016\017\004\185\000\000\004\185\000\000\000\000\016\017\000\000\000\000\000\000\016\017\016\017\004\185\004\185\000\000\000\000\004\185\004\185\004\185\000\000\000\000\004\185\004\185\000\000\000\000\004\185\004\185\000\000\000\000\000\000\002j\000\000\000\000\002n\000\000\000\000\002v\000\000\000\000\000\000\000\000\000\000\000\000\004\185\000\000\000\000\000\000\000\000\004\185\000\000\000\000\004\185\002z\000\000\000\000\002~\000\000\000\000\000\000\000\000\004\185\002\138\rB\000\000\002\150\000\000\000\000\000\000\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\166\002\170\004\185\000\000\002\174\001f\002\178\000\000\004\185\002\182\002\186\000\000\000\000\002\190\002\194\000\000\000\000\004\185\000\000\000\000\000\000\000\000\000\000\004\185\002j\000\000\000\000\002n\000\000\000\000\002v\002\198\000\000\000\000\000\000\000\000\002\222\000\000\000\000\000\n\000\000\000\000\000\000\000\000\000\000\000\000\002z\000\000\002\210\002~\000\000\000\000\000\000\000\000\000\000\002\138\015\254\000\000\002\150\002\214\000\000\000\000\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\000\000\000\000\002\226\000\000\000\000\000\000\002\166\002\170\002\230\000\000\002\174\001f\002\178\000\000\000\000\002\182\002\186\002\234\000\000\002\190\002\194\000\000\000\000\002\238\026b\000\000\026j\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\165\026r\000\000\002\198\000\000\006\165\026\146\000v\002\222\000\000\006\165\000\n\006\165\023\202\000\000\000\000\000\000\006\165\006\165\000\000\002\210\000\000\000\000\000\000\023\206\000\000\023\210\000\000\000\000\000\000\000\000\002\214\000\000\000\000\023\214\000\000\000\000\000\000\000\000\000\000\023\218\000\000\000\000\023\226\002\226\000\000\000\000\023\230\006\165\000\000\002\230\000\000\006\165\023\234\000\000\000\000\000\000\000\000\000\000\002\234\000\000\000\000\000\000\000\000\000\000\002\238\000\000\000\000\006\165\023\238\026\154\000\000\001\210\000\000\000\000\000\000\000\000\000Z\000\000\000\000\006\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\165\006\165\000\000\000\000\006\165\006\165\006\165\000\000\000\210\023\242\000\000\006\165\023\246\006\165\000\000\000\000\000\000\006\165\006\165\006\165\000\000\000\000\000\000\000\000\000\000\023\250\000\000\000\000\006\165\000\000\023\254\000\n\024\002\006\165\024\006\024\n\000\000\024\014\006\165\000\000\001\026\000\000\000\000\006\165\024\018\006\165\000\000\024\022\000\000\006\165\006\165\006\165\000\000\006\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\026\000\000\000\000\000\000\000\000\024\030\024\"\006\165\000\000\000\000\000\000\002\026\000\000\000\000\006\165\000\000\000Z\006\165\006\165\006\165\000\000\006\165\000\000\006\165\000\000\000\000\006\165\006\165\006\165\000\000\000\000\006\165\006\165\006\165\000\000\000\000\000\000\000\000\000\000\006\165\000\000\006\165\000\000\005\162\000\000\006\165\000\000\000\000\000Z\000\000\000\000\006\165\000\000\000\000\000\000\000\000\006\165\000\000\000\000\000\000\006\165\000\000\000\000\000\000\006\165\006\165\006\165\000\000\000\000\000\000\000\000\006\165\000\000\006\165\000\000\000\000\000\000\006\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\165\000\000\000\000\000\000\000\000\006\165\006\165\000\000\000\000\006\165\006\165\000\000\000\000\006\165\000\000\000\000\000\000\000\000\006\165\006\165\000\000\000\000\000\000\006\165\000\000\000\000\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\165\000\000\000\000\006\165\006\165\000\000\000\000\006\165\000\000\000\000\000\000\000\000\006\165\006\165\000\000\000\000\000\000\006\165\004\209\004\209\004\209\004\209\000\000\004\209\000\000\004\209\004\209\004\209\004\209\000\000\004\209\004\209\000\000\004\209\000\000\004\209\000\000\004\209\004\209\004\209\004\209\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\004\209\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\004\209\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\209\000\000\000\000\000\000\001\250\000\000\004\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\209\000\000\000\000\000\000\002\002\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002j\004\209\000\000\002\130\000\000\000\000\002\134\000\000\004\209\000\000\000\000\000\000\002\018\000\000\000\000\000\000\000\000\000\000\002\030\000\000\000\000\000\000\002z\000\000\000\000\002~\000\000\002\022\000\000\000\000\000\000\002\154\007\002\004\209\002\150\000\000\000\000\000\000\000\000\000\000\002\"\002\158\000\000\002\162\000\000\000\000\000\000\002&\000\000\000\000\000\000\000\000\007\022\002\170\000\000\000\000\007\026\001f\002\178\000\000\000\000\007\030\007\"\006\165\006\165\007&\002\194\000\000\006\165\006\165\004\210\005&\000\n\006\165\006\165\006\165\006\165\000\000\004\209\000\000\006\165\006\165\006\165\007*\000\000\000\000\000\000\000\000\007.\000\000\000\000\000\n\002*\000\000\006\165\000\000\000\000\000\000\000\000\006\165\0076\005n\000\000\000\000\006\165\000\000\006\165\000\000\000\000\000\000\000\000\006\165\006\165\000\000\000\000\006\165\006\165\014\017\000\000\000\000\000\000\000\000\000\000\000\000\007:\000\000\000\000\000\000\000\000\000\000\007B\006\165\006\165\000\000\000\000\005\226\006\202\000\000\000\000\007F\000Z\000Z\006\165\006\165\006\165\002\238\006\165\000\000\000\000\000\000\000\000\000\000\006\165\006\165\000\000\000\000\006\165\006\165\006\165\000\000\000\000\000\000\006\165\000\000\000\000\006\165\006\165\000\000\000\000\006\165\006\165\000Z\000\000\000\000\006\165\000\000\000\000\000\000\000\000\000\000\006\165\006\165\000\000\006\165\000\000\000\000\000\000\006\165\006\165\000\000\006\165\006\165\000\000\000\000\000\000\006\165\006\165\000\000\000\000\000\000\006\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\165\000\000\000\000\000\000\000\000\006\165\000\000\006\165\006\165\000\000\006\165\006\165\006\165\000\000\006\165\006\165\000\000\000\000\000\000\006\165\006\165\006\165\000\000\000\000\006\165\006\165\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\165\000\000\000\000\006\165\006\165\000\000\000\000\006\165\000\000\000\000\000\000\000\000\006\165\006\165\000\000\000\000\000\000\006\165\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\001\250\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\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\001\250\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\000\000\000\000\000\002\002\000\000\002\030\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\000\000\000\000\000\002\"\000\000\006\022\000\000\000\000\000\000\000\000\002&\000\000\000\000\000\000\002\022\000\000\000\000\000\000\006\026\006\030\000\000\000\000\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\"\000\n\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\002*\0016\001\230\001\238\001\242\000\000\000\000\000\000\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\250\000\000\000\000\000\000\006&\002\181\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\005\001\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\165\002\018\000\000\000\000\000\000\006\165\000\000\006\022\000\000\000\000\006\165\000\000\006\165\000\000\000\000\000\000\002\022\006\165\006\165\000\000\006\026\006\030\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\006\"\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000\000\000\000\006\165\000\000\000\000\000\000\006\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\250\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\165\000\000\000\000\000\000\tV\000\000\000\000\002\002\000\000\000Z\000\000\000\000\006\165\006&\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\165\000\000\000\000\000\000\006\165\006\165\002\018\023\198\000\000\000\000\000\000\000\000\006\022\006\165\tq\000\000\000\000\006\165\000\000\023\202\000\000\002\022\000\000\000\000\000\000\006\026\006\030\000\000\006\165\000\000\023\206\000\000\023\210\000\000\000\000\000\000\000\000\000\000\006\165\000\000\023\214\006\"\000\000\006\165\000\000\000\000\023\218\000\000\000\000\023\226\000\000\000\000\000\000\023\230\000\000\000\000\000\000\000\000\000\000\023\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025B\000\000\000\000\000\000\000\000\023\238\006\165\000\000\000\000\006\165\006\165\000\000\000\000\006\165\000\000\000\000\006&\000\000\006\165\006\165\000\000\000\000\000\000\006\165\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0125\000\000\023\242\000\000\000\000\023\246\002\161\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\250\000\000\000\000\000\000\000\000\023\254\000\n\024\002\000\000\024\006\024\n\000\000\024\014\000\000\000\000\000\000\000\000\000\000\000\000\024\018\000\000\000\000\024\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\026\000\000\000\000\000\000\000\000\024\030\024\"\0125\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\001\250\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\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\001\250\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\000\000\000\000\000\002\002\000\000\029\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\022\000\000\000\000\000\000\029\026\006\030\000\000\000\000\000\000\002\018\000\000\000\000\000\000\000\000\000\000\029\022\000\000\000\000\000\000\000\000\006\"\000\000\000\000\000\000\002\022\000\000\000\000\000\000\029\026\006\030\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\006\"\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\029\030\001\014\001\022\001\250\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000\000\000\000\000\000\000\000\000\000\002\002\000\000\000\000\000\000\004\249\000\000\029\030\000\000\000\000\001\250\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\000\000\000\000\000\000\002\002\000\000\029\022\000\000\tU\000\000\000\000\000\000\000\000\000\000\000\000\002\022\000\000\000\000\000\000\029\026\006\030\000\000\000\000\000\000\002\018\000\000\000\000\000\000\000\000\000\000\002\030\000\000\000\000\000\000\000\000\006\"\000\000\000\000\000\000\002\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000R\000V\000f\000\170\002\"\000\174\000\000\000\178\000\186\000\194\001\006\002&\001\014\001\022\000\000\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\029\030\000\000\000\000\000\000\000\n\000\000\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\002\002\002\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\002\018\000\000\000\000\000\000\000\000\000\000\006.\000\000\002\173\000\000\000\000\000\000\000\000\000\000\000\000\002\022\000\000\000\000\000\000\006\026\006\030\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\000\000\001\014\001\022\006\"\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002j\000\000\000\000\r:\000\000\001\250\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\002\002\000\000\002z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\rR\r^\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\018\002\158\000\000\002\162\000\000\000\000\029&\000\000\t\129\000\000\000\000\000\000\rr\002\170\000\000\002\022\rv\001f\002\178\029\026\006\030\rz\r~\000\000\002j\r\130\000\000\015\246\000\000\000\000\015\250\000\000\000\000\000\000\000\000\006\"\000\000\000\000\000\000\000\000\000\000\000\000\r\134\r\138\000\000\000\000\002z\000\000\r\142\000\000\000\000\000\n\000\000\000\000\000\000\016f\016R\000\000\000\000\000\000\r\150\000\000\000\000\000\000\000\000\002\158\000\000\002\162\000\000\000\000\000\000\n\025\000\000\000\000\000\000\000\000\016j\002\170\000\000\000\000\016n\001f\002\178\n\025\r\154\016r\016v\000\000\000\000\016z\r\162\000\000\000\000\000\000\n\025\000\000\n\025\000\000\000\000\r\166\000\000\000\000\te\000\000\n\025\002\238\r\134\016~\000\000\000\000\n\025\000\000\016\130\n\025\000\000\000\n\000\000\n\025\024\158\000\000\000\000\000\000\000\000\n\025\016\138\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\217\000\000\000\000\000\000\000\000\000\000\n\025\000\000\000\000\000\000\000\000\000\000\b\217\000\000\000\000\016\142\000\000\000\000\000\000\000\000\000\000\016\150\000\000\b\217\000\000\b\217\000\000\000\000\000\000\000\000\016\154\000\000\000\000\b\217\000\000\n\025\002\238\000\000\n\025\b\217\000\000\000\000\b\217\000\000\000\000\000\000\b\217\000\000\000\000\000\000\000\000\n\025\b\217\000\000\000\000\000\000\n\025\n\025\n\025\000\000\n\025\n\025\000\000\n\025\000\000\000\000\000\000\000\000\b\217\026\154\n\025\000\000\000\000\n\025\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\025\000\000\000\000\007\133\000\000\n\025\n\025\000\000\000\000\b\217\000\000\000\000\b\217\000\000\000\000\007\133\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\217\007\133\000\000\007\133\000\000\b\217\b\217\b\217\000\000\b\217\b\217\007\133\b\217\000\000\000\000\000\000\000\000\007\133\000\000\b\217\007\133\000\000\b\217\000\000\007\133\000\000\000\000\025&\000\000\000\000\007\133\000\000\000\000\000\000\000\000\000\000\000\000\b\217\000\000\023\202\000\000\027\158\b\217\b\217\000\000\000\000\007\133\000\000\000\000\000\000\023\206\000\000\023\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\214\000\000\000\000\000\000\000\000\000\000\023\218\000\000\000\000\023\226\000\000\000\000\000\000\023\230\000\000\007\133\000\000\000\000\007\133\023\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\133\000\000\000\000\000\000\023\238\007\133\007\133\007\133\000\000\007\133\007\133\000\000\007\133\000\000\000\000\000\000\000\000\000\000\000\000\007\133\000\000\000\000\007\133\000\000\000\000\000\000\000\000\025>\000\000\000\000\000\000\000\000\000\000\023\242\000\000\000\000\023\246\007\133\000\000\023\202\000\000\000\000\007\133\007\133\000\000\000\000\000\000\000\000\000\000\023\250\023\206\000\000\023\210\000\000\023\254\000\n\024\002\000\000\024\006\024\n\023\214\024\014\000\000\000\000\000\000\000\000\023\218\000\000\024\018\023\226\000\000\024\022\000\000\023\230\000\000\000\000\023\198\000\000\000\000\023\234\000\000\000\000\000\000\000\000\000\000\000\000\024\026\000\000\023\202\000\000\000\000\024\030\024\"\000\000\000\000\023\238\000\000\000\000\000\000\023\206\000\000\023\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\214\000\000\000\000\000\000\000\000\000\000\023\218\000\000\000\000\023\226\000\000\000\000\000\000\023\230\000\000\023\242\000\000\000\000\023\246\023\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\250\000\000\000\000\000\000\025\246\023\254\000\n\024\002\000\000\024\006\024\n\000\000\024\014\000\000\000\000\000\000\000\000\000\000\000\000\024\018\000\000\000\000\024\022\000\000\000\000\000\000\000\000\023\198\000\000\000\000\000\000\000\000\000\000\023\242\000\000\000\000\023\246\024\026\000\000\023\202\000\000\000\000\024\030\024\"\000\000\000\000\000\000\000\000\000\000\023\250\023\206\000\000\023\210\000\000\023\254\000\n\024\002\000\000\024\006\024\n\023\214\024\014\000\000\000\000\000\000\000\000\023\218\000\000\024\018\023\226\000\000\024\022\000\000\023\230\000\000\000\000\023\198\000\000\000\000\023\234\000\000\000\000\000\000\000\000\000\000\000\000\024\026\000\000\023\202\000\000\000\000\024\030\024\"\000\000\000\000\027j\000\000\000\000\000\000\023\206\000\000\023\210\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\226\000\000\000\000\000\000\023\230\000\000\023\242\000\000\000\000\023\246\023\234\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\250\000\000\000\000\000\000\023\238\023\254\000\n\024\002\000\000\024\006\024\n\000\000\024\014\000\000\000\000\000\000\000\000\000\000\000\000\024\018\000\000\000\000\024\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\023\242\000\000\000\000\023\246\024\026\000\000\000\000\000\000\000\000\024\030\024\"\000\000\000\000\000\000\000\000\000\000\023\250\000\000\000\000\000\000\000\000\023\254\027\150\024\002\000\000\024\006\024\n\000\000\024\014\000\000\000\000\000\000\000\000\000\000\000\000\024\018\000\000\000\000\024\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\024\026\000\000\000\000\000\000\000\000\024\030\024\"\000R\000V\000f\000\170\000\000\000\174\000\000\000\178\000\186\000\194\001\006\007\186\001\014\001\022\007\194\001&\000\000\001.\000\000\0016\001\230\001\238\001\242\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\210\007\218\000\000\001\250\000\249\000\000\000\000\000\249\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\226\000\000\000\000\002\002\0025\000\000\007\234\007\242\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\007\250\000\225\000\000\b\002\000\225\b\n\000\000\002\018\000\000\000\000\000\000\000\000\003j\000\000\000\000\000\000\000\249\000\000\000\249\000\249\000\000\000\000\002\022\000\000\000\000\000\225\000\225\000\000\003\146\000\221\b\018\003r\000\221\003\130\000\000\000\000\000\000\000\000\000\000\000\000\003j\000\000\n\214\000\000\000\225\000\000\000\225\000\225\000\000\000\000\000\000\000\000\000\000\000\221\000\221\000\000\000\225\000\000\003\154\003r\000\000\003\130\000\000\000\000\000\000\000\000\000\000\000\000\003j\000\000\b\026\000\000\000\221\0025\000\221\000\221\000\000\b\"\000\000\000\000\000\000\000\000\000\000\000\000\000\221\000\000\000\225\003r\000\000\003\130\000\000\0025\000\000\000\000\000\000\0025\0025\000\000\003\162\000\000\000\000\000\249\000\000\000\000\000\000\003z\b*\b2\000\000\000\000\000\000\000\000\000\000\000\000\000\221\000\000\000\000\000\000\000\000\000\249\000\000\000\000\000\000\000\249\000\249\000\000\000\225\000\000\000\000\000\225\000\000\000\000\000\000\003z\000\249\003\170\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000\213\000\000\000\225\000\000\000\000\000\000\000\225\000\225\000\000\000\221\000\000\000\000\000\221\000\000\000\000\000\000\003z\000\225\000\225\000\000\000\000\000\213\000\213\000\000\000\000\003\242\000\000\000\000\001\001\000\000\000\221\000\000\000\000\000\000\000\221\000\221\000\213\000\000\000\000\000\000\000\213\000\000\000\213\000\213\000\000\000\221\000\221\000\000\000\000\003b\003\138\000\000\000\213\003\242\000\000\003r\000\245\000\213\000\000\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\000\000\001\001\000\000\001\001\003\250\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\003\146\000\237\000\213\003r\000\237\003\130\000\000\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\000\000\000\245\000\000\000\245\000\245\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\003\146\000\000\003\154\003r\000\000\003\130\000\000\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\213\000\000\000\237\000\213\000\237\000\237\000\000\003z\000\000\000\000\000\000\000\000\000\000\000\000\000\237\000\000\003\154\003r\000\000\003\130\000\000\000\213\000\000\000\000\000\000\000\213\000\213\000\000\003\162\000\000\000\000\001\001\000\000\000\000\000\000\003z\000\213\000\213\000\000\000\000\000\000\000\000\000\000\000\000\003\154\000\000\000\000\000\000\000\000\001\001\000\000\000\000\000\000\001\001\001\001\000\000\003\162\000\000\000\000\000\245\000\000\000\000\000\000\003z\004\002\003\170\000\000\000\000\000\000\000\000\000\000\000\000\000\217\000\000\000\000\000\217\000\000\000\245\000\000\000\000\000\000\000\245\000\245\000\000\000\237\000\000\000\000\000\237\000\000\000\000\000\000\003z\000\245\003\170\000\000\000\000\000\217\000\217\000\000\000\000\000\229\000\000\000\000\000\229\000\000\000\237\000\000\000\000\000\000\000\237\000\237\000\217\000\000\000\000\000\000\000\217\000\000\000\217\000\217\000\000\000\237\000\237\000\000\000\000\003b\003\138\000\000\000\217\000\233\000\000\003r\000\233\000\217\000\000\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\000\000\000\229\000\000\000\229\000\229\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\229\003\242\000\217\003r\000\253\003\130\000\000\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\000\000\000\000\233\000\000\000\233\000\233\000\000\000\000\000\000\000\000\000\000\003b\003\138\000\000\000\233\000\000\000\229\003r\000\000\003\130\000\000\000\000\000\000\000\000\000\000\000\000\003j\000\000\000\217\000\000\000\253\000\217\000\253\003\250\000\000\003z\000\000\000\000\000\000\000\000\000\000\000\000\003\146\000\000\003\154\003r\000\000\003\130\000\000\000\217\000\000\000\000\000\000\000\217\000\217\000\000\000\229\000\000\000\000\000\229\000\000\000\000\000\000\003z\000\217\000\217\000\000\000\000\000\000\000\000\000\000\000\000\003\154\000\000\000\000\000\000\000\000\000\229\000\000\000\000\000\000\000\229\000\229\000\000\000\233\000\000\000\000\000\233\000\000\000\000\000\000\003z\000\229\000\229\000\000\000\000\000\000\000\000\000\000\000\000\000\241\000\000\000\000\000\241\000\000\000\233\000\000\000\000\000\000\000\233\000\233\000\165\003\162\000\000\000\000\000\253\000\000\000\000\000\000\003z\000\233\000\233\000\000\000\000\003b\003\138\000\000\000\000\000\161\000\000\000\000\000\000\000\000\000\253\000\000\000\165\000\165\000\253\000\253\003j\000\000\000\000\000\000\000\241\000\000\000\241\000\241\000\000\000\253\003\170\003j\000\000\000\161\000\161\000\153\003\146\000\165\000\165\003r\000\000\003\130\000\000\000\000\000\000\000\000\000\000\000\165\003j\000\000\003r\000\000\003\130\000\000\000\161\000\161\000\000\000\000\000\000\000\153\000\153\000\000\000\000\000\000\000\161\000\000\003\154\003r\000\000\003\130\000\000\000\000\000\000\000\000\000\153\000\000\000\000\000\165\000\000\000\000\000\153\000\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\153\003\242\000\000\003r\000\161\000\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\162\000\000\000\000\000\241\000\000\000\000\000\000\003z\000\000\003b\003\138\000\165\000\000\000\000\000\153\000\000\000\000\000\000\003z\000\000\000\000\000\241\000\000\000\000\003j\000\241\000\241\000\000\000\161\000\000\000\197\003\250\000\165\000\000\003\242\003z\000\241\000\241\000\177\000\165\003\146\000\000\000\000\003r\000\000\003\130\000\000\000\165\000\165\000\161\000\000\000\000\000\000\000\000\000\153\000\000\000\161\000\000\003b\003\138\000\000\003z\003b\003\138\000\161\000\161\000\000\000\000\000\000\000\000\003\154\000\000\000\000\003j\000\000\000\153\000\000\003j\000\000\000\185\000\185\000\000\000\153\000\177\000\177\000\000\000\000\000\000\000\000\003\146\000\153\000\153\003r\000\177\003\130\000\000\003r\000\157\003\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\162\000\000\000\000\000\000\000\000\000\000\000\000\003z\000\000\003\154\000\000\000\157\000\157\003\154\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\197\000\000\000\000\000\000\000\000\000\157\000\000\000\197\000\000\000\000\000\000\000\157\000\157\000\000\000\000\004\002\003\170\000\000\000\000\000\000\000\000\000\157\000\000\000\000\003r\000\000\000\157\000\000\003\162\000\000\000\000\000\000\000\177\000\000\000\000\003z\000\000\000\169\000\000\003z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\173\000\185\000\000\000\157\000\000\000\177\000\000\000\000\000\185\000\000\000\000\000\000\000\177\003b\003\138\000\000\000\185\003\170\000\000\000\000\000\177\000\177\000\000\000\000\003b\003\138\000\000\000\000\003j\000\000\000\000\000\000\000\000\000\000\000\169\000\169\000\000\000\000\003\242\003j\000\000\000\000\000\181\000\157\000\169\000\173\000\173\003r\000\000\003\130\003z\000\000\000\000\000\000\000\000\000\173\000\000\000\000\003r\000\000\003\130\000\000\003b\003\138\000\157\000\000\003b\003\138\000\000\000\000\000\000\000\157\000\000\000\000\000\169\000\000\000\000\003j\000\000\000\157\000\157\003j\000\000\000\193\003\250\003\154\000\000\000\181\000\181\000\000\000\000\000\000\000\000\003\146\000\000\000\000\003r\003\146\003\130\000\000\003r\000\000\003\130\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\169\000\000\000\000\000\000\000\000\000\000\000\000\003z\000\000\003\154\000\000\000\173\000\000\003\154\000\000\000\000\000\000\000\000\003z\000\000\000\000\000\169\000\000\000\000\000\000\000\000\000\000\000\000\000\169\000\000\000\000\000\000\000\173\000\000\000\000\000\000\000\169\000\169\000\000\000\173\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\173\000\173\003\162\000\000\000\000\000\000\003\162\000\000\000\000\003z\000\000\000\000\000\000\003z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\193\000\000\000\000\000\000\000\181\000\000\000\000\000\193\000\000\000\000\000\000\000\181\000\000\000\000\000\000\000\193\003\170\000\000\000\000\000\181\000\181"))
let lhs =
- (16, "\000\012\000\011\000\n\000\t\000\008\000\007\000\006\000\005\000\004\000\003\000\002\000\001\000\000\001\006\001\006\001\006\001\005\001\005\001\005\001\005\001\004\001\004\001\004\001\004\001\004\001\004\001\004\001\004\001\004\001\004\001\004\001\004\001\004\001\004\001\003\001\003\001\003\001\003\001\003\001\003\001\003\001\003\001\003\001\003\001\003\001\003\001\003\001\003\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\001\002\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\000\001\000\001\000\001\000\000\255\000\254\000\254\000\254\000\253\000\253\000\253\000\252\000\252\000\252\000\251\000\251\000\251\000\250\000\249\000\248\000\247\000\247\000\246\000\246\000\245\000\245\000\244\000\244\000\243\000\243\000\242\000\241\000\241\000\240\000\240\000\239\000\239\000\239\000\238\000\238\000\237\000\236\000\235\000\234\000\233\000\232\000\231\000\230\000\229\000\228\000\227\000\226\000\225\000\224\000\224\000\223\000\223\000\222\000\222\000\221\000\221\000\220\000\220\000\220\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\219\000\218\000\217\000\217\000\217\000\217\000\216\000\216\000\215\000\215\000\214\000\214\000\213\000\213\000\213\000\212\000\212\000\212\000\211\000\211\000\211\000\211\000\210\000\210\000\210\000\210\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\209\000\208\000\207\000\207\000\206\000\206\000\206\000\205\000\205\000\204\000\204\000\204\000\203\000\203\000\202\000\202\000\202\000\201\000\200\000\199\000\199\000\198\000\198\000\197\000\197\000\196\000\196\000\195\000\195\000\194\000\193\000\192\000\192\000\191\000\191\000\190\000\190\000\190\000\189\000\188\000\187\000\187\000\186\000\185\000\185\000\185\000\185\000\185\000\184\000\184\000\184\000\184\000\183\000\183\000\183\000\183\000\182\000\182\000\182\000\182\000\181\000\180\000\180\000\179\000\179\000\179\000\178\000\177\000\177\000\177\000\177\000\176\000\175\000\175\000\174\000\174\000\173\000\173\000\172\000\172\000\172\000\171\000\171\000\170\000\170\000\170\000\170\000\169\000\169\000\169\000\169\000\168\000\168\000\168\000\168\000\168\000\167\000\166\000\166\000\166\000\165\000\164\000\164\000\163\000\163\000\162\000\162\000\161\000\161\000\160\000\160\000\159\000\159\000\158\000\158\000\158\000\158\000\158\000\158\000\158\000\157\000\156\000\155\000\155\000\154\000\154\000\153\000\153\000\152\000\152\000\151\000\151\000\150\000\150\000\149\000\149\000\148\000\148\000\147\000\147\000\146\000\146\000\145\000\145\000\144\000\144\000\143\000\143\000\142\000\142\000\141\000\141\000\140\000\140\000\139\000\139\000\138\000\138\000\137\000\137\000\136\000\136\000\135\000\135\000\134\000\134\000\133\000\133\000\132\000\132\000\131\000\131\000\130\000\130\000\129\000\129\000\128\000\128\000\127\000\127\000~\000~\000}\000}\000|\000|\000{\000z\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000y\000x\000w\000v\000u\000t\000s\000r\000q\000p\000o\000o\000o\000n\000n\000n\000m\000m\000m\000m\000l\000k\000j\000i\000h\000g\000f\000f\000e\000e\000e\000d\000d\000c\000c\000c\000b\000b\000a\000`\000`\000`\000_\000^\000^\000]\000]\000\\\000\\\000[\000[\000Z\000Z\000Y\000Y\000X\000X\000W\000W\000W\000W\000W\000W\000W\000W\000W\000W\000W\000W\000W\000W\000W\000W\000W\000W\000W\000V\000V\000U\000U\000T\000T\000S\000S\000S\000S\000S\000R\000R\000Q\000Q\000Q\000Q\000P\000O\000N\000N\000N\000M\000M\000M\000L\000L\000L\000L\000L\000L\000K\000K\000K\000K\000K\000J\000J\000J\000J\000J\000J\000J\000I\000I\000I\000I\000I\000I\000I\000H\000H\000H\000H\000H\000H\000H\000G\000G\000G\000G\000G\000G\000G\000F\000F\000F\000F\000F\000F\000F\000F\000F\000F\000F\000F\000F\000E\000E\000E\000E\000E\000E\000E\000E\000E\000E\000E\000E\000E\000D\000D\000D\000D\000D\000D\000D\000D\000D\000D\000D\000D\000D\000C\000C\000C\000C\000C\000C\000C\000C\000C\000C\000C\000C\000C\000B\000B\000B\000B\000B\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?\000>\000=\000<\000;\000;\000:\0009\0009\0009\0009\0009\0009\0009\0008\0008\0008\0008\0008\0008\0007\0006\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\031\000\031\000\030\000\029\000\028\000\028\000\028\000\028\000\027\000\027\000\027\000\026\000\026\000\025\000\025\000\025\000\024\000\024\000\024\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\000\022\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\017\000\017\000\016\000\016\000\016\000\016\000\016\000\015\000\015\000\014\000\013\000\013\000\013\000\013\000\013")
+ (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\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!\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\031\001\031\001\031\001\031\001\031\001\031\001\031\001\031\001\031\001\031\001\031\001\031\001\031\001\031\001\030\001\030\001\030\001\030\001\030\001\030\001\030\001\030\001\030\001\030\001\030\001\030\001\030\001\030\001\029\001\029\001\029\001\029\001\028\001\027\001\027\001\027\001\026\001\026\001\026\001\025\001\025\001\025\001\024\001\024\001\024\001\023\001\022\001\021\001\020\001\020\001\019\001\019\001\018\001\018\001\017\001\017\001\016\001\016\001\015\001\014\001\r\001\012\001\011\001\n\001\t\001\b\001\007\001\006\001\005\001\004\001\003\001\002\001\001\001\000\001\000\000\255\000\255\000\254\000\254\000\253\000\253\000\252\000\252\000\252\000\252\000\251\000\251\000\251\000\251\000\250\000\250\000\250\000\250\000\249\000\249\000\249\000\249\000\248\000\248\000\248\000\248\000\247\000\247\000\247\000\247\000\246\000\246\000\246\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\245\000\244\000\243\000\243\000\243\000\243\000\243\000\242\000\242\000\241\000\240\000\239\000\239\000\239\000\239\000\238\000\238\000\238\000\238\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\237\000\236\000\235\000\235\000\234\000\234\000\234\000\233\000\233\000\232\000\232\000\232\000\231\000\230\000\229\000\229\000\228\000\227\000\227\000\226\000\226\000\225\000\225\000\224\000\224\000\223\000\222\000\221\000\221\000\220\000\220\000\219\000\219\000\218\000\218\000\217\000\217\000\216\000\215\000\215\000\214\000\214\000\214\000\214\000\214\000\214\000\213\000\213\000\213\000\212\000\211\000\210\000\210\000\210\000\210\000\209\000\209\000\208\000\207\000\207\000\207\000\206\000\206\000\206\000\206\000\206\000\205\000\205\000\205\000\205\000\204\000\204\000\204\000\204\000\203\000\203\000\203\000\203\000\202\000\201\000\201\000\200\000\200\000\200\000\199\000\198\000\198\000\198\000\197\000\196\000\196\000\195\000\195\000\194\000\194\000\193\000\193\000\193\000\193\000\192\000\192\000\191\000\191\000\191\000\191\000\191\000\191\000\190\000\190\000\190\000\189\000\189\000\189\000\189\000\188\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\180\000\180\000\180\000\180\000\180\000\180\000\179\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\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\159\000\159\000\158\000\158\000\157\000\157\000\156\000\156\000\155\000\155\000\154\000\154\000\153\000\153\000\152\000\152\000\151\000\151\000\150\000\150\000\149\000\149\000\148\000\148\000\148\000\147\000\147\000\146\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\145\000\144\000\144\000\144\000\143\000\142\000\141\000\140\000\139\000\138\000\137\000\136\000\135\000\134\000\133\000\133\000\133\000\132\000\132\000\132\000\131\000\131\000\131\000\131\000\130\000\129\000\128\000\127\000~\000}\000|\000{\000{\000z\000z\000z\000y\000y\000x\000x\000x\000w\000w\000w\000v\000u\000u\000u\000t\000s\000s\000r\000r\000r\000r\000r\000r\000r\000q\000q\000q\000q\000q\000q\000q\000p\000p\000p\000p\000p\000p\000p\000o\000o\000o\000o\000o\000o\000o\000n\000n\000n\000n\000n\000n\000n\000m\000m\000m\000m\000m\000m\000m\000l\000l\000k\000k\000j\000j\000i\000i\000h\000h\000g\000g\000f\000f\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000e\000d\000d\000c\000c\000b\000b\000a\000a\000`\000`\000_\000_\000^\000^\000^\000^\000^\000]\000]\000\\\000\\\000\\\000\\\000[\000Z\000Y\000Y\000Y\000X\000X\000X\000W\000W\000W\000W\000W\000W\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\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000Q\000P\000P\000P\000P\000P\000P\000P\000P\000P\000P\000P\000P\000P\000O\000O\000O\000O\000O\000O\000O\000O\000O\000O\000O\000O\000O\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000N\000M\000M\000M\000M\000M\000L\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000K\000J\000J\000J\000I\000H\000G\000F\000F\000E\000E\000D\000C\000C\000C\000B\000B\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;\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\031\000\030\000\030\000\030\000\030\000\029\000\029\000\029\000\028\000\028\000\027\000\027\000\027\000\026\000\026\000\026\000\025\000\025\000\025\000\025\000\025\000\025\000\025\000\024\000\024\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\000\023\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\017\000\017\000\016\000\016\000\016\000\016\000\016\000\015\000\015\000\014\000\r\000\r\000\r\000\r\000\r")
let goto =
- ((16, "\001\005\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\237\000\000\001\029\001\230\000\000\000\215\000\191\000\000\000\000\000\000\000:\000\000\000B\000j\000\000\000\000\002,\000\000\002F\000\000\000\000\000\000\003n\000\000\003\132\000\000\000\000\000\000\000\000\003\194\000\000\004\018\004l\000\000\000\000\004\228\000\000\005.\000\000\000\000\000\000\005\158\000\000\005\246\000\000\005\252\000\000\006\198\007\020\000\000\000\000\007D\000\000\007\174\000\000\000\014\000\000\000\000\000\000\007\202\000\000\007\218\000\000\000\000\008\014\000\000\008*\000\000\000\000\000\000\008\182\000\000\001\200\008\222\000;\000\000\000\000\000\000\002*\000\022\000\204\000\000\000\000\t\006\000\000\0003\000\000\000#\000\231\004J\000\000\000\000\025R\000\000\0006\000\000\000*\000\156\005,\000\017\014h\t\128\012\022\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\025\212\000\017\000\000\000\000\027\224\000\000\029X\000\000\005\164\000\000\000\000\000\000\000\000\000h\000\000\018\218\000\000\000\000\017\024\000\000&R\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\180\000\000\001\228\000\000\004r\000\000\011h\000\000\015P\000\000\015\134\000\000\018\138\000\000\021\198\000\000\029\150\000\000\031\254\000\000\006\224\000\000\000t\000\000\000\000\000\000\000\000\000\000\"\254\000\000$\002\000\000$<\000\0003\148\000\000\000\00046\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\027\tD\000\000\000\000\td\000\000\tz\t\132\000\000\000\000\t\180\000\000\t\202\000\000\000\000\000\000\t\234\000\000\t\238\000\000\000\000\t\246\000\000\n\128\n\156\000\000\000\000\n\178\000\000\n\184\000\000\000\000\000\000\011\006\000\000\011\020\000\000\011\030\000\000\011\"\011&\000\000\000\000\011*\000\000\0118\000\000\000\132\011<\000\000\011F\000\000\011J\000\000\011L\000\000\000\000\000\000\011P\000\000\011V\006\128\000\000\011X\000\000\000b\000\220\000\000\000\164\000\000\001\226\000\000\000\000\003\208\000\000\000\000\000\233\000\240\000\000\000\000\000\000\000\000\002\008\000\000\002\142\000\000\005B\000\000\007~\000\000\000\000\000\000\000\000\000\000\000\000\007\166\000\000\000\000\000\000\000\000\000\127\000\000\000\000\000\000\000\000\000\000\000\000\000\027\002\214\tJ\000\000\011`\000\000\011b\022V\000\000\011r\000\000\000\000\004\000\000\000\000\000\000\000\000\000\000\000$>\000\000/\018\000\000\000\000\000\000\003x\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\140\000\000\000\000\000\000\000\000\000\000\000\000\000P\012\022\000\000\006\148\000\000\013\170\019\030\000\000\000\000\000\000\003\212\000\000 :\000\000\000\000/\132\000\000\000\000\000\000\004\182\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0004L\000\0004N\000\000\000\000\000\000\000\000\000\201\000\000\000\000/\218\000\000\000\000\000\000\011T\000\134\000\000\000\000\000\000\000\000\000\000\000\000\020\128\000\000\024Z\000\000\025\022\000\000\026F\000\000\0314\000\000#\194\000\000'\020\000\000(\156\000\000*\226\000\000+6\000\000\t,\000\000\014(\000\000-f\000\000-\166\000\000/X\000\000\000\000\000\000\000\000\000\000\001\2460\016\000\000\002R\000\000\000\000\000\n\002\134\000\000\002Z\000\000\000\000\000\000\007\176\000\000\000\000\000\000\016>\000\000\000\000\000\000\000\000\000\000\021\144\000\000\000\000\000\000\000\000\000\000\000\000\001$\000\000\000\000\000\000\011t\025J\000\000\011x\000\000\000\000\000\000\000\000\000\000\011~\000\000\000\000\000}\003\182\000\000\003\224\000\000\000\000\000\000\000\176\000\000\012\158\000\019\011\162\000\000\000\000\011\170\000\000\011\172\011\202\000\000\000\000\011\206\000\000\011\208\000\000\000\000\000\000\011\216\000\000\011\226\000\000\000\000\011\238\000\000\011\246\012\000\000\000\000\000\012\002\000\000\012\004\000\000\000\000\000\000\012\006\000\000\012\024\000\000\012\028\000\000\012\030\012&\000\000\000\000\0128\000\000\012:\000\000\005\154\012>\000\000\012B\000\000\012F\000\000\012N\000\000\000\000\000\000\012V\000\000\001\248\000\000\000\000\012X\027\022\000\000\012`\000\000\000\000\000.\000\000\000\000\000p\000\000\000\000\000\000\000\000\000\000\005\194\028\188\000\000\012h\000\000\012j\030\128\000\000\012l\000\000\000\000\013j\012v\000\000\000\000\012~\000\000\012\132\012\134\000\000\000\000\012\136\000\000\012\138\000\000\000\000\000\000\012\140\000\000\012\142\000\000\000\000\012\148\000\000\012\164\012\172\000\000\000\000\012\176\000\000\012\186\000\000\000\000\000\000\012\188\000\000\012\192\000\000\012\194\000\000\012\212\012\220\000\000\000\000\012\236\000\000\012\242\000\000\005\198\012\250\000\000\013\000\000\000\013\008\000\000\013\n\000\000\000\000\000\000\013\018\000\000\013\022#\134\000\000\013\030\000\000\000\000\006\144%\024\000\000\013*\000\000\013,-\224\000\000\013.\000\000\000\000\000\000\000\000\000\000\000\000\000\0000f\000\000%,\000\0000\156\000\000\000\000\002\154\000\000\006\198\000\000\000\226\n\002\027\208\000\000\000\000\000\000\n\232\000\000\000\000\000\000\000\000\000\000\000\000\000\000\tv\027\208\000\000\015~\000\000\017\230\012\250\000\000\000\000\000\000\006\146\000\000 \210\000\000\000\0000\226\000\000\000\000\000\000\006\164\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0004\146\000\0004\204\000\000\000\000\000\000\003\216\000\000\000\000\000\000\000\000\000\000\000\000\002\174\000\000\003F\000\000\018\"\000\000\022\028\000\000 \200\000\000!\130\000\000$\194\000\000,\026\000\000/h\000\0000j\000\000\026R\000\000\002\234\000\0002\012\000\0004\188\000\0004\246\000\000\030\176\000\000\000\000\000\0000\252\000\000\000\000\000\000\000\022\000\0001\"\000\000\000\000\000\0001n\000\000\000\000\000\132\000\000\024\142\000!\004\170\000\000\0062\000\000\013 \002,\0070\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0001\178\000\000%t$6\007`\000\000\000\000\000\000\031\240\000\000(\230\000\000)<\000\000%\198&\030\001\"\003 \008\008\000\000\000\000\000\000\003\212\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\0002t\000\000\000\000\000\000\000\000\000\000!R\000\000&p\000\000\000\000\000\000\000\000\000\000\000\000\013\148\000\000\006\138\000\000\000\000\000\000\000\000\006\238\004\172\000\000\000\000\023\184$\142\000\000\008x)\250\000\000\000\000&\194\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\230&\194\000\000\019\148\000\000\026\134\018\208(\168\000\000\019n\000\000\000\000\000\000\008 \000\000\"$\000\000\000\0002\142\000\000\000\000\000\000\008\150\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0002\184\000\0003\004\000\000\000\000\000\000(h\000\000\000\000)\174\000\000\000\000\000\000\000\000\008\224\000\000\000\000\000\000,P\000\000\000\0003\000\000\000\003F\000\000\000\000\000\000\003\158\000\000\007\148\000\000\t*\000\000\t\218\000\000\015\174\000\000\016d\000\000\020\162\000\000\0210\000\000\023\204\000\000\029\206\000\0004,\000\0005<\000\0005F\000\000\000\000\000\000\000\000\000\000*\130\000\000\012\156\000\000\023:\002Z\000\000\024\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\194\000\000\000\000\000\000\000\000\004\008\000\000\004\200\000\000\000\000\021\244\000\000\000\000\000\000*\154\000\000\000\000\000\000\000\000\000\000\030*\000\000\000\000\000\000\000\000*\190\000\000\000\000\000\000\000\000\000f\008\242\000\000+\012\000\000\000\000\000\000\000\000\0258\002\146\000\000\025\214\000\000\000\000\nn\000\000+0\000\000\000\000\000\000\000\000\000\000\006f\000\000\000\000\014\224\000\000\026\128\000\000\000\000\"n\000\000\000\000\000\000\004\134\000\000\000\000\006\014\000\000\000\000!n\000\000\000\000\000\000+\162\000\000\000\000\000\000!\142\000\000\000\000\000\000\000\000+\200\000\000\000\000\000\000\000\000\004v\011\174\000\000,T\000\000\000\000\000\000\000\000\000\000\000\000\015J\000\000\000\000\007\196\000\000\015x\000\000\004\134\000\000\000\000\004\228(\204\000\000\007R\000\000\000\000\000\000\000\000\003\216\000\000&\184\000\000\027\030\001\194\027h\000\000\004<\000\000\016.\000\000\017$\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\008b\028d\002$\028\240\000\000\000\000\000\000\002n\000\000\017\208\000\000\tB\000\000\000\000\011>\002L\029Z\000\000\005z\000\000\018\002\029\234\000\000\000\000\018z\000\000\000\000\000\000\000\000\000\000\000\000\000\000\tF\008z\000\000\tT\000\000\000\000\000\000\000\000\t\018\000\000\019\196\000\000\000\000\000\000\"\2383D\000\000\000\000\000\000 \194\000\000\000\000\000\000\000\000\008r\007\000\000\000\000\000,\176\000\000\000\000\005F\000\000\0088\000\000\000\000!\214\000\000\000\000\000\000,\180\000\000\000\000\000\000\000\000,\234\000\000\000\000\006:\008\162\000\000\000\000-@\000\000\000\000\t\160#x\000\000\008\244\000\000\000\000-\204\000\000\000\000\000\000\000\000\000\000\000\000\000\000#v\000\000\000\000\000\000\000\n\000\000\000\000\t\202\000\000\000\000%\190\000\000\000\000\000\000-\240\000\000\000\000\000\000\000\000.>\000\000\000\000\006b\t\236\000\000\000\000.b\000\000\000\000\t\204\000\000\000\000\000\000\000\000\003\216\000\n\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005r\000\000\020.\000\000\000\000\000\0003H\000\000\008\228\000\000\000\000\000\000\005\174\000\000\000\000\004\022\020\204\000\000\021\022\000\000\000\000\000\000\004\190\000\000\012\212\007p\025\138\000\000\029h\000\000\000\000\000\000\t`\000\000'\174\n2'\220\000\000(L\000\000\000\000\000\000\nB\000\000!\002\nt\000\000\000\000\000\144\nn\n\172\004\252\000\000\019*\000\000\000\000\000\000\n\228\000\0000 \011\"\000\000\000\000\000\000\001\154\000\000\000\000\000\000\006X\000\000\000\000\000\000\000\000\000\000\000\000\013\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\230\000\000\000\000\007Z\000\000\000\000\013\234\000\000\000\000\000\000\000\000\008\160\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\013\238\000\000\000\000\013\204\000\000\000\008\000\000\000\000\000A\000\000\001\160\013\138\003\202\000\000\000\000\006\020\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\020\002\134\000\000\000\000\011*\000\000\000\000\000\000\007\012\000\000\000\000\t\140\013\168\000\000\000\000\000\000\000\000\014d\014\186\000M\000\000\014\190\000\000\000\000\000\000\000\000\000\000\000\000\006\152\000\000\000\000\005\016\000\000\000\000\013V\000\000\000\000\002\204\000\000\000\000\007\146\000\000\007\166\014\n\004\136\000\000\000\000\007p\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\162\015\196\000\000\000\000\000\000\000\000\017\252\000\000\000\000\006\228\000\000\000\000\007\216\000\000\000\000\015`\020|\002\158\000\000\020\192\000\000\000\000\000\000\000\000\013\216\000\000\000\000\000\000\002x\000\000\0088\007$\007\016\000\000\000\000\000\000\000\000\007\182\000\000\000\000\000\000\000\000\000\000\000\000\000\214\000\000\000\000\0118\000\000\t\008\014\022\006\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002^\000\000\000\000\011F\021\006\000\000\000\000\000\000\000\000\008\154\000\000\013\226\012V\000\000\008\238\000\000\000\000\000\000\000\000\000\000\004H\016\206\000\000\000\000\017\004\000\000\000\000\000\000\000\000\003\150\000\000\020(\000\000\000\000\000\000\000\000\002\130\000\000\000\000\000\000\000\183\000\000\000\000\003\158\000\000\000\000\000\000\000\000\000\000\000\000\000\000.\212\000\000\000\000\000\000\000y\000\000\000\000\000\000\000\000\000\000\000X\005\128\007\134\t\138\000\000\t4\tp\tt\t\132\000\000\000\000\000\000\000\000\000\000\000\000\007@\021\180\000\000\030\228\t~\000\000\000\000\t\194\000\000\022\186\000\000(\194\000\000\000\000\007\196\023<\000\000\031t\000\000\tj\031\222\000\000\000\000\000\000\005\018\n\200\000\000\000\000\000\000\000\000\n*\000\000\001\254\000\000\006\164\011\220\000\000\000\000\000\000\002\008\000\000\002\142\000\000\007\240\000\000\000\000\t\224\000\000\000\000\000\000\000\000\t`\000\000\000\000\n\030\000\000\023\176\000\000\029*\013\220\000\000\000\000\000\000\000\000\000\000\006D\000\000\000\000\000\000\000\000\000\000.\238\000\000\000\133\000\000\000\000\000\000\000\000\000\000\001\160\000\000\n\172\n2\011\022\000\000\002\168\011\142\000\000\011:\000\000\003\184\000\000\0040\000\000\004\154\000\000\029*\000\000\000\000\000\000\000\000\000\000\005\228\000\000\011^\000\000\006N\000\000\029*\0140\000\000\002\182\000\000\014&\013\022\000\000\005\232\000\000\n\214\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\011<\000\000\011b\000\000\000\000\000\000\000\000\000\000\000\000\014,\000\000\000\000\013<\000\000\000\000\013\030\t(\014L\000\000\014T\000\000\000\000\n^\008\234\000\000\013L\000\000\000\000\013\132\000\000\000\000\000\000\000\000\000\000\000\000\014P\000\000\000\000\000\000\013^\013L\n\158\n\246\013|\013\178\000\000\000\000\013h\n\208\0118\013\136\013\192\000\000\000\000\n\212\000\000\000\000\000\000\000\000\014\136\000\000\000\000"), (16, "\002\179\002\202\000Y\000[\001\219\000_\000Y\000`\000\132\000_\005o\006\139\000\141\002.\006\140\000Y\0051\000\006\0011\003X\004Q\0049\0027\000Y\003\012\003\013\005\148\005_\005m\000\011\006\030\006\031\005p\005_\001(\001\134\000a\001a\001\206\001\197\000a\000\t\000\n\001a\0020\001x\005l\000\018\000D\004\005\006-\002\181\001<\006.\000\n\002\182\001a\000\134\001v\000\017\002\179\002\202\000\135\0024\005m\006\144\000\136\006W\005p\005_\003\235\0062\000D\006X\000\132\000Y\000D\0020\000\133\006Y\000Y\004\004\0011\001\007\001\228\005`\000\134\001*\0023\001c\000\145\005`\000\134\001d\000\132\001c\0022\001\135\000\141\001d\004\128\001\230\002\207\000Y\001\175\000\134\000\132\003X\001c\004\005\000\133\002\181\001d\001\186\000a\002\182\003\248\000D\004\238\001q\006+\0023\001}\000\134\001)\001q\006+\005`\000\135\002\179\002\249\000D\000\136\000Y\000[\000\\\000_\005#\001q\003G\001\207\000Y\001\008\000\134\000_\004\244\001\188\000D\000\135\002\195\005\229\000Y\000\136\006[\003L\000\134\000\145\000b\003M\004\012\000\135\002\196\004\130\004_\000\136\005f\001\006\000a\005\230\000\146\001\006\005\233\005_\004M\006\\\000a\000\145\001)\000\134\000b\002\181\000E\004&\000\021\002\182\001\211\001N\000\025\000\145\003Q\001\t\000\147\0010\004:\001\t\004Y\0010\001\192\001r\003G\004\020\001\209\001\137\004p\001r\0041\002\211\000\024\001\020\002\195\000D\001\189\002B\000\197\003L\001\198\000\177\001r\003M\004\012\006]\002\196\001\021\004\216\002\179\002\202\000\138\002\212\001\128\006^\005`\005|\002\213\006w\001\231\000\146\002\214\006\145\000\149\000Y\000\245\002\215\000\178\006Y\006\146\004\004\000\179\004\012\0025\003Q\001\138\001\230\000\151\004\015\006y\000\146\000b\000\147\000\132\000Y\004\020\004S\000\133\006{\001\135\0041\002\211\000\146\001\t\001?\0010\001\139\001\177\004\005\000Y\002\181\001\140\000\147\002\195\002\182\001\141\005$\000\175\000Y\006\165\001\142\000Y\002\212\004\020\000\147\002\196\004\025\002\213\0041\002\179\002\202\002\214\001\006\005z\001\208\001.\002\215\000\177\004\239\000\149\001\006\000D\000\134\000Y\000Y\004e\001\217\000\135\003X\004Q\0049\000\136\003t\000\151\0033\003x\001\t\000D\0010\000\149\000D\005d\004\241\000\178\001\t\004r\0010\000\179\006\166\005{\005\241\000\149\001\022\000\151\001\023\000\145\000\197\000a\004\005\006n\002\181\005\229\004e\001\175\002\182\000\153\0036\0037\0039\000Y\004\001\002\179\002\202\001\180\002\179\002\180\005\213\005e\003G\005\230\004\002\003F\005\233\005_\005\130\003y\000Y\002&\002\195\003z\006Y\006\151\0049\003L\005\211\005\214\005_\003M\004\012\006\167\002\196\006\026\005\131\005_\002\179\002\180\001\182\000D\006^\004|\004`\002\207\006\169\001\175\005\202\005_\001\207\005\166\006\230\001\180\004\005\004[\002\181\000\134\001\186\002\181\002\182\006\231\003Q\002\182\000b\006\002\004\015\006\171\000\146\005\167\006\162\005\170\005_\004\020\0027\005`\006\173\000D\0041\002\211\0033\000\027\003G\001'\002\179\002\180\001\181\000\134\005`\002\181\000\147\001\187\002\195\002\182\000\029\005`\001\183\003L\000\197\003\160\002\212\003M\004\012\004g\002\196\002\213\004b\005`\001\012\002\214\005f\001\223\0035\000\197\002\215\003\135\004M\006q\003\206\006r\001\183\006g\000\197\006h\003\163\000\197\006\028\003\136\003t\006\008\005`\003x\003Q\000\134\004\252\002\181\004:\000\149\004Y\002\182\004j\002\179\002\202\004\020\003G\001\t\004p\0010\0041\002\211\001\"\000\155\003\166\005\210\002\195\000Y\000Y\002\195\000D\003L\006Y\006\151\0049\003M\004\012\006\157\002\196\006\018\000Y\002\196\002\212\005\211\005\214\005_\006^\002\213\000Y\000\134\003O\002\214\005\246\003y\005s\006\239\002\215\003z\0016\002\195\003\209\005S\004\005\001\185\002\181\000\197\003Q\003\168\002\182\0030\004:\002\196\006\159\002\179\002\202\005\134\000D\004\020\006\156\005Q\006\161\003\169\0041\002\211\005T\005_\000\132\003Z\000Y\003\167\000\141\006\002\006Y\006\151\0049\006#\006$\001\028\000D\004S\0027\004\254\003\235\005`\002\212\002\195\000\132\002\212\005\182\002\213\000\133\001\021\005\229\002\214\000!\006(\002\239\002\196\002\215\0031\001\180\002\217\004\005\0011\002\181\000#\002\179\002\202\002\182\005t\005\230\003\012\003\013\005\233\005_\000\134\002B\002\212\006\158\001I\000\135\000Y\003\166\005`\000\136\006Y\006\151\0049\005\173\003\135\003Z\002\215\003G\002\210\001\204\000\134\000(\0042\005\166\0032\000\135\003\136\002\195\006\n\000\136\003\235\005\174\003L\000\145\003Z\006+\003M\004\012\006\157\002\196\004\005\005\167\002\181\005\170\005_\003\218\002\182\006^\002\212\000D\001f\003O\005\006\000\145\000D\000Y\006\160\005`\006\013\003X\000D\000,\002\219\000D\000\132\000Y\000Y\003Q\000\141\005\008\0065\004:\000b\006\159\0031\006\023\000b\003G\004\020\003\236\001\225\006\161\000\197\0041\002\211\005\160\001\031\002\195\001+\005#\000Y\001\022\003L\001\023\003\168\000\197\003M\004\012\006\157\002\196\003Y\001\227\005`\000\197\005w\002\212\000+\006^\003\171\004V\002\213\003O\000\146\000\134\002\214\004H\001=\003\015\000\135\002\215\003\241\000Y\000\136\004r\000\132\0065\003\235\003Q\000\133\000\176\003G\004:\000\146\006\159\000\147\004\243\005\t\003\245\004\020\000b\002\195\006\161\004&\0041\002\211\003L\000\145\001\028\004J\003M\004\012\006\157\002\196\005\008\000\147\002B\002\179\002\202\000b\000\177\006^\001\021\006\016\001o\003O\002\212\000.\001\173\000D\000b\002\213\000Y\000b\000\134\002\214\006Y\006\151\0049\000\135\002\215\003Q\000\149\000\136\004+\004:\000\178\006\159\004u\000D\000\179\000D\004\020\003\012\003\013\006\161\000\151\0041\002\211\005\177\004\012\004/\000\149\003[\0000\005\173\004\005\000\145\002\181\005\188\002\179\002\202\002\182\005v\003\219\0011\000\157\003\225\006\190\002\212\003\220\0066\006\168\005\174\002\213\000Y\000\146\000D\002\214\006Y\006\151\0049\004\014\002\215\005&\0011\000b\003\012\003\013\003\236\005P\004\020\004\002\001\177\004\025\001a\0041\001u\000\147\004\179\000Y\000[\001\003\000_\005\158\006Z\000\197\003\247\005Q\004\005\0004\002\181\000Y\005T\005_\002\182\004\255\006\131\006\132\004\222\002\179\002\202\001\031\000\177\001 \006\172\006@\001\022\002\025\001\023\004\173\000\197\005\157\000\132\000a\000Y\000\146\000\141\005t\003X\004Q\0049\000D\000D\000\134\000\149\003G\001c\002<\000\178\002r\001d\000D\000\179\0006\000Y\002\195\0008\000\147\000\151\0067\003L\000\197\005\166\003\014\003M\004\012\006\157\002\196\004\005\006\136\002\181\005`\002\179\002\202\002\182\006^\001q\003\012\003\013\003O\005\167\000\134\005\170\005_\005\130\000b\000\135\000Y\003Y\005\218\000\136\003X\004Q\0049\004\241\003Q\006\197\000D\003G\004:\000\173\006\159\005\131\005_\001K\005\219\004\020\003T\002\195\006\161\004\254\0041\002\211\003L\000\145\005\219\005[\003M\004\012\006\157\002\196\004\005\003t\002\181\006+\003x\000Y\002\182\006^\004\029\000Y\005\\\003O\002\212\0065\005\176\000\132\006k\002\213\005\236\000\133\005`\002\214\003\012\003\013\000D\000Y\002\215\003Q\005\169\002\137\002\184\004:\005\174\006\159\001r\004?\000<\003G\004\020\002\193\005`\006\161\001\006\0041\002\211\004\002\005\167\002\195\005\170\005_\000\134\005\222\003L\005a\003y\004H\003M\004\012\003z\002\196\004\247\004_\001\028\005\166\000\134\002\212\001\t\005\219\0010\000\135\002\213\003O\000\146\000\136\002\214\000;\001\021\006B\005\158\002\215\000\197\005\167\001\028\005\170\005_\000b\005\180\003Q\004I\000\176\003G\004:\005\220\004Y\000\147\005\161\001\021\000\145\004\020\000>\002\195\004\025\005\225\0041\002\211\003L\006l\005`\000D\003M\004\012\005\016\002\196\004]\004_\003t\002\179\002\202\003\142\000\177\000D\003\222\005\181\003\247\003O\002\212\005\194\000Y\005\018\004\156\002\213\000Y\000D\003 \002\214\003X\004Q\0049\006\002\002\215\003Q\000\149\005`\006P\004:\000\178\004Y\0027\005\137\000\179\003\135\004\020\000@\005\223\004\025\000\151\0041\002\211\005^\005\229\005\226\004\155\003\136\006?\000\134\004\005\000F\002\181\003y\002\179\002\202\002\182\003z\005\\\000H\005\220\000\146\005\230\002\212\000D\005\233\005_\006m\002\213\000Y\000D\001\030\002\214\003X\004Q\0049\001\022\002\215\001\023\004m\000\197\005\227\0067\000\147\000\197\000K\005\229\004\139\006\216\003t\000\132\001\031\003x\001%\000\141\003Z\001\022\004\002\001\023\000M\000\197\000D\003/\004\005\005\230\002\181\005\174\005\233\005_\002\182\000D\000D\004o\006:\003|\003\168\002\179\002\202\003\012\003\013\000Y\000[\0013\000_\005`\006\003\000b\002\179\002\200\003\173\001\191\000Y\001a\005\197\001x\003X\004Q\0049\000\134\000\134\003G\006F\003y\006:\000\135\006:\003z\005\239\000\136\003\135\002\195\004\002\000Y\006:\000a\003L\0065\006l\001\164\003M\004\012\003\136\002\196\004\132\004_\004\005\005`\002\181\005\130\000Q\004\164\002\182\000\145\003\133\003O\006I\000\134\003t\002\181\000b\003x\000\134\002\182\005\240\001c\004\002\005\131\005_\001d\001\222\003Q\004m\004\133\003G\004:\000Y\004Y\002\179\002\202\004\133\004\161\004\020\004\178\002\195\004\025\006\214\0041\002\211\003L\000^\003\158\001}\003M\004\012\001q\002\196\004\251\004_\000D\000b\000b\006x\002B\004\180\004n\004\135\000\134\003O\002\212\006\006\003y\004\002\004\134\002\213\003z\000D\004\228\002\214\003\135\006U\000\199\006\148\002\215\003Q\005\019\005`\000\134\004:\002\181\004Y\003\136\000\146\002\182\006n\004\020\003G\000\202\004\025\004\228\0041\002\211\005\018\006>\003\249\004\189\002\195\000\134\000\206\000\176\004\230\003L\006\004\000\205\000\147\003M\004\012\002\195\002\196\006u\004_\003\253\002\212\002\179\002\202\001\006\003Z\002\213\006\163\002\196\003O\002\214\004\229\006=\001r\006<\002\215\000\208\000Y\000\177\002\207\000D\006Y\006;\004\004\001~\003Q\0066\000\210\001\t\004:\0010\004Y\002\179\002\180\006\225\006:\004\020\001\128\003\168\004\025\000\149\0041\002\211\000\214\000\178\000\216\003\135\000b\000\179\000\219\003Z\004\005\003\175\002\181\000\151\002\179\002\202\002\182\003\136\001\138\0067\006\247\000\197\002\212\000b\003\235\002\195\005\026\002\213\006\164\000Y\006\248\002\214\005\143\006Y\005\029\004\004\002\215\002\196\006\217\001\139\000\134\006\190\002\181\005\028\001\140\001a\002\182\001x\001\141\002\209\004\207\005\028\006\148\001\142\005\133\000\132\006p\006`\005\232\000\133\006g\005 \006h\004\005\000\197\002\181\005\166\004\223\003Z\002\182\006\148\006\234\005\131\005_\002\179\002\202\005\230\000\223\005\018\005\233\005_\006\149\002\211\003\235\005\167\003\168\005\170\005_\000b\000Y\005)\000\222\006\190\006Y\000\134\004\004\006\241\001c\006\154\003\177\003G\001d\000\225\002\212\000\134\000\227\006\224\005+\002\213\000\135\002\195\006\190\002\214\000\136\006\235\003L\006\170\002\215\005,\003M\004\012\006\150\002\196\004\005\003Z\002\181\001\186\001q\000Y\002\182\006^\005`\004\006\000b\006\153\005+\003\236\000\145\005`\000D\002\195\006\152\000\132\006>\000\231\005`\000\141\006\242\005/\004\n\003Q\000\233\002\196\003G\004\015\006\155\000\235\000Y\000\239\001\188\000\238\004\020\000\241\002\195\006\161\005\018\0041\002\211\003L\000\243\006\191\000\246\003M\004\012\006\150\002\196\000\248\003\241\000\250\000\252\006\225\001\000\006\224\006^\001@\001\005\006f\006\153\002\212\0015\001;\000\134\000b\002\213\003\245\004&\000\135\002\214\001:\001\216\000\136\001\215\002\215\003Q\001\221\006\225\001r\004\015\006\155\003t\002\179\002\202\003x\003G\004\020\006\224\000\146\006\161\002\201\0041\002\211\006\193\001\235\002\195\000\145\000Y\001\238\001\242\003L\003X\001\136\004\004\003M\004\012\006\150\002\196\004+\001a\000\147\001x\006\195\002\212\001\241\006^\001\244\001\246\002\213\006\153\000b\001\250\002\214\005\252\001\138\004/\001\252\002\215\002\179\002\180\003F\004\005\001\255\002\181\003y\003Q\002\003\002\182\003z\004\015\006\155\002\002\002\005\002\007\002\011\001\139\004\020\002\179\002\202\006\161\001\140\0041\002\211\002\013\001\141\002\015\002\019\000\149\000\134\001\142\002\018\001c\000Y\005\001\0043\001d\003X\004\127\004\004\002\021\002\023\000\159\002\026\002\212\002\028\000\146\002\030\000\134\002\213\002\181\002 \0047\002\214\002\182\002$\002-\006g\002\215\006h\002,\000\197\001q\001Q\002;\002A\002@\004\005\000\147\002\181\002\132\002D\001a\002\182\001b\002G\002\179\002\202\002K\002J\002M\002O\002S\002U\003V\003\160\002X\001a\001S\001t\000\197\000Y\003G\000\177\002\\\003X\003\255\004\004\002[\004}\002^\003\135\002\195\004\127\003\203\002`\002d\003L\002f\002h\003\163\003M\004\012\003\136\002\196\000\149\005\130\003t\002l\000\178\003\141\000\134\002k\000\179\001c\004\005\004t\002\181\001d\000\151\002n\002\182\003\205\002p\005\131\005_\000\134\002s\003\166\001c\002u\001r\003Q\001d\002w\002y\004\015\004v\002\195\002}\001a\002\131\001b\004\020\001q\002\130\004\025\003G\0041\002\211\002\196\002\136\002\142\002\141\005>\005\011\000\134\002\195\005Y\001q\003y\005\128\003L\005k\003z\003\211\003M\004\012\005y\002\196\002\212\003\168\000\132\005\163\005\179\002\213\000\141\001\138\005\209\002\214\005\238\004t\006\129\005`\002\215\003\169\006\175\000Y\006\179\000\134\006\198\006\202\001c\006\207\006\208\006\213\001d\003Q\001\139\006\212\005\130\004\015\004v\001\140\006\220\003G\006\222\001\141\004\020\006\228\006\232\004\025\001\142\0041\002\211\002\195\002\197\006\233\005\131\005_\003L\000\134\001q\001r\003M\004\012\000\135\002\196\006\236\006\237\000\136\006\240\002\179\002\202\006\243\002\212\006\244\006\252\001r\004>\002\213\004\017\000\000\005\130\002\214\005\130\000\000\000Y\000\000\002\215\000\000\003X\004\018\0049\000\145\003Q\003\135\000\000\000\000\004\015\004@\005\131\005_\005\131\005_\000\000\004\020\000\000\003\136\004B\000\000\0041\002\211\000\000\000\000\001\173\001\175\005`\000\000\000\000\000\000\004\005\000\000\002\181\000\000\002\179\002\202\002\182\000\132\000\000\001w\005\141\000\133\002\212\004<\000\000\000\000\000\000\002\213\000\000\000Y\001r\002\214\000\000\003X\004\018\0049\002\215\002\179\002\202\000\000\002\179\002\199\000\000\000\000\000\132\000\000\004A\000\000\000\133\005`\000\000\005`\000Y\000\000\005\210\000\000\003X\004\018\0049\000\000\000\000\000\000\000\146\004\005\003t\002\181\000\134\003x\000\000\002\182\000\000\000\135\005\211\005\214\005_\000\136\001\166\000\000\000\000\001\177\000\000\000\000\000\000\000\000\000\147\000\000\004\005\000\000\002\181\000\134\000\000\002\181\002\182\000\134\000\000\002\182\000\000\001\139\000\135\000\145\003G\000\000\000\136\005\228\001\183\005\130\000\197\000\000\000\000\000\177\002\195\001\142\000\000\000\134\005\154\003L\000\000\003y\000\000\003M\004\012\003z\002\196\005\131\005_\000\000\000\145\000\000\002\179\002\202\000\000\000\149\005`\000\000\003O\000\178\000\132\000\000\000\000\000\179\000\141\000\000\000\000\000Y\000\000\000\151\000\000\003X\004Q\0049\003Q\000Y\000\000\003G\004:\003t\004;\005\152\003x\005\150\000\000\004\020\000\000\002\195\004\025\000\000\0041\002\211\003L\000\000\000\000\000\000\003M\004\012\000\000\002\196\003G\004\005\000\146\002\181\000\000\000\000\005`\002\182\000\000\000\134\002\195\003O\002\212\002\195\000\135\003L\000\000\002\213\000\136\003M\004\012\002\214\002\196\000\000\000\147\002\196\002\215\003Q\000\134\000\146\000\000\004:\003y\004;\003O\000\000\003z\003\135\004\020\000\000\000\000\004\025\000\145\0041\002\211\000\000\000\000\000\000\000\000\003\136\003Q\000\147\000\000\000\000\004:\000\000\004;\000\000\000\000\005\229\000\000\004\020\000\000\005\243\004\025\002\212\0041\002\211\000\000\000\132\002\213\000\149\000\000\000\143\002\214\002\179\002\202\005\230\000\000\002\215\005\233\005_\000\000\000\000\000\000\000\161\005\229\000\000\002\212\000\000\000Y\003G\000\000\002\213\003X\004Q\0049\002\214\000\149\000\000\000\000\002\195\002\215\000\000\005\230\000\000\003L\005\233\005_\000\000\003M\004\012\000\163\002\196\005\186\004X\000\000\003\168\000\134\000\000\000\000\000\146\000\000\000\135\004\005\003O\002\181\000\136\003\135\000\000\002\182\003\179\000\000\000\000\000\000\000\000\000\000\000\000\001Q\005`\003\136\003Q\000\000\000\147\000\000\004:\000\000\004Y\000\000\000\000\000\000\000\145\004\020\000\000\000\000\004\025\000\000\0041\002\211\000\000\000\000\002\179\002\202\001\195\000\000\000\197\005`\000\000\000\177\000\000\000\000\000\000\002\179\002\198\000\000\000\000\000Y\000\000\000\000\002\212\003X\004Q\0049\000\000\002\213\000\000\002\179\002\202\002\214\000\000\000\149\000\000\000\000\002\215\000\178\000\000\000\000\000\000\000\179\000\000\000\000\000Y\002\179\002\180\000\151\003X\004w\0049\003\168\000\000\004\005\000\000\002\181\005\130\003G\000\000\002\182\000\000\000\000\000\000\000\000\000\134\003\181\002\181\002\195\000\000\000\000\002\182\000\000\003L\000\146\005\131\005_\003M\004\012\004\005\002\196\002\181\004Z\000\000\000\000\002\182\000\000\000\000\006\011\000\000\002\179\002\202\003O\000\000\000\000\000\134\000\147\002\181\000\132\000\000\000\000\002\182\000\133\000\000\000\000\000Y\000\000\000\000\003Q\003X\004w\0049\004:\004y\004Y\006\014\000\000\000\000\000\000\004\020\000\000\000\148\004\025\000\000\0041\002\211\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003t\005`\000\000\003x\000\000\000\132\004\005\000\000\002\181\000\141\000\149\003G\002\182\002\212\000\134\000\188\000\000\000\000\002\213\000\135\000Y\002\195\002\214\000\136\000\151\000\000\003L\002\215\000\000\000\000\003M\004\012\002\195\002\196\000\000\004l\003G\000\000\000\000\001a\004{\001b\000\000\000\000\002\196\003O\002\195\000\145\000\000\000\134\000\000\003L\000\000\003y\000\134\003M\004\012\003z\002\196\000\135\000Y\003Q\002\195\000\136\003X\004:\000\000\004Y\000\000\000\000\003O\000\000\004\020\000\000\002\196\004\025\000\000\0041\002\211\003t\000\000\000\000\003x\000\000\000\000\000\000\003Q\000\145\000\134\000\000\004:\001c\004z\000\000\005#\001d\003G\004\020\003t\002\212\004\025\003\140\0041\002\211\002\213\000\000\002\195\000\000\002\214\005\191\000\000\003L\000\000\002\215\000\000\003M\004\012\000\000\002\196\000\000\000\000\001q\002\179\002\202\002\212\000\000\000\146\000\000\000\134\002\213\003O\004\141\003y\002\214\000\000\000\000\003z\000Y\002\215\000\000\002\212\003X\004\018\0049\000\000\000\000\003Q\000\134\000\147\003\135\004:\003y\004z\000\000\002\221\003z\000\000\004\020\000\000\000\000\004\025\003\136\0041\002\211\000\000\000\000\000\146\000\000\000\000\000\000\000\000\004\005\000\000\002\181\000\000\002\179\002\202\002\182\000\000\000\000\000\191\000\192\000\194\000\195\002\212\000\000\000\000\000\000\000\147\002\213\000Y\000\000\000\000\002\214\003X\000\149\004\004\000\000\002\215\005\229\001r\000\000\000\000\000\000\004\012\000\000\000\000\000\000\000\196\000\165\000\197\000\000\000\000\000\177\000\000\000\000\001a\005\230\001b\000\000\005\233\005_\000\000\000\000\004\005\000\000\002\181\000\000\003\135\003\138\002\182\000\000\000\000\003t\000\000\000\149\003x\000\000\005(\000\178\003\136\000\000\000\000\000\179\005\130\004\020\000\000\003\135\004\025\000\151\0041\001A\000\000\000\000\002\179\002\202\004\245\000\000\000\000\003\136\004\127\003G\005\131\005_\000\000\000\134\000\000\001s\001c\000Y\000\000\002\195\001d\003X\000\000\004\004\003L\000\000\005\130\005`\003M\004\012\000\134\002\196\000\000\000\000\003y\000\000\000\000\000\000\003z\002\179\002\202\000\000\000\000\003O\005\131\005_\001q\000\000\000\000\000\000\000\000\004\005\003t\002\181\000Y\003x\003\137\002\182\003X\003Q\004\004\005\130\003G\004:\000\000\004;\000\000\000\000\000\000\005`\004\020\000\000\002\195\004\025\000\000\0041\002\211\003L\000\000\005\131\005_\003M\004\012\005\003\002\196\000\000\000\000\004\127\004\005\000\000\002\181\000\000\000\000\000\000\002\182\000\000\004t\002\212\000\000\000\000\000\132\000\134\002\213\005`\000\141\003y\002\214\000\000\000\000\003z\000\000\002\215\003Q\000\000\000\000\000Y\004\015\004v\002\179\002\202\005\005\000\000\000\000\004\020\004\127\001r\004\025\000\132\0041\002\211\003\135\000\133\006\021\000Y\000\000\000\000\000\000\003X\005`\004\004\000\000\003G\003\136\000\000\000\000\000\000\000\000\000\000\000\000\000\134\002\212\002\195\000\000\000\000\000\135\002\213\003L\000\000\000\136\002\214\003M\004\012\000\000\002\196\002\215\000Y\000\000\004\005\000\000\002\181\002\179\002\180\000\000\002\182\000\000\004t\000\134\005\206\003G\000\000\000\000\000\135\000\145\000\000\000\000\000\136\000\000\000\000\002\195\000\000\000\000\003Q\001\139\003L\000\000\004\015\004v\003M\004\012\006C\002\196\003\135\004\020\004\127\000\000\004\025\001\144\0041\002\211\000\145\003\168\005\204\004t\003\136\000Y\000[\0018\000_\000\000\000\134\000\000\002\181\001\028\000\000\003\183\002\182\000\000\000\000\003Q\002\212\000\000\000\000\004\015\004v\002\213\000\000\001\021\000\000\002\214\004\020\000\000\000\000\004\025\002\215\0041\002\211\005\250\000\000\000a\002\179\002\202\000\000\000\000\000\000\000\000\000\000\000\000\003G\006K\000\000\000\000\000\146\000\000\000\000\000Y\000\000\002\212\002\195\003X\004\018\0049\002\213\003L\000\000\000\000\002\214\003M\004\012\001N\002\196\002\215\003\168\000\000\000\147\000\000\000\000\000\000\000\000\000\146\000\000\000\000\004t\000\000\000\000\000\000\003\185\000\000\000\000\004\005\000\000\002\181\000\000\000\000\001\201\002\182\000\197\000\000\003Q\000\177\000\000\000\147\004\015\004v\003t\002\179\002\202\003x\000\000\004\020\002\195\000\000\004\025\000\000\0041\002\211\000\000\000\000\000\000\000\000\000Y\000\149\002\196\000\000\003X\000\178\004\004\000\000\000\000\000\179\000\000\000\000\000\000\000\000\000\000\000\151\002\212\001\031\000\000\003\228\000\000\002\213\001\022\000\000\001\023\002\214\000\197\000\000\000\149\000\000\002\215\000\000\000\000\003F\004\005\000\000\002\181\003y\000\000\000\000\002\182\003z\000\167\002\179\002\202\000\000\000\000\000\132\000\000\001\006\000\000\000\141\006z\000\000\000\000\000\000\000\000\003t\000Y\003G\003x\000\000\003X\004\018\0049\000\000\006Q\000\000\002\212\002\195\004\127\000\000\000\000\001\t\003L\0010\000\000\000\000\003M\004\012\000\000\002\196\002\223\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\005\003O\002\181\000\000\000\134\000\000\002\182\000\000\000\000\000\135\000\000\000\000\000\000\000\136\000\134\000\000\000\000\003Q\003y\000\000\000\000\004:\003z\004;\000\000\003\160\000\000\000\000\004\020\000\000\000\000\004\025\003G\0041\002\211\000\000\001a\000\145\001b\000\000\000\000\003\135\002\195\000\000\003\203\000\000\000\000\003L\000\000\000\000\003\163\003M\004\012\003\136\002\196\002\212\000\000\000\000\000\000\000\000\002\213\004\136\002\179\002\202\002\214\000\000\004t\000\000\000\000\002\215\003t\000\000\003\205\003x\000\000\000\000\000\000\000Y\003\166\000\000\000\000\003X\003Q\0049\000\000\000\134\004\015\004v\001c\000\000\003G\000\000\001d\004\020\000\000\000\000\004\025\000\000\0041\002\211\002\195\000\000\000\000\000\000\000\000\003L\000\000\000\000\003\215\003M\004\012\004\005\002\196\002\181\003\135\003\210\000\146\002\182\001q\003F\002\212\003\168\000\000\003y\003O\002\213\003\136\003z\000\000\002\214\001a\000\000\001b\003\156\002\215\003\169\000\000\000\000\000\147\000\000\003Q\000\000\000\000\000\000\004:\000\000\004;\002\179\002\202\000\000\000\000\004\020\000\000\000\000\004\025\000\000\0041\002\211\000\000\004=\000\132\000\000\000Y\000\177\001\203\000\000\003X\000\000\004\004\000\000\000\000\000Y\000[\001\213\000_\000\000\000\000\000\000\002\212\000\134\000\000\000\000\001c\002\213\000\000\000\149\001d\002\214\001a\000\178\001x\000\000\002\215\000\179\003\168\000\000\004\005\001r\002\181\000\151\000\000\003G\002\182\003\160\000\000\000a\000\000\000\000\003\187\000\134\000\000\002\195\001q\000\000\000\135\000\000\003L\000\000\000\136\003\135\003M\004\012\003\203\002\196\000\000\000\132\002\179\002\202\003\163\001P\000\000\003\136\000\000\000\000\000\000\004\138\000\000\000\134\004\003\000\000\001c\000Y\000\145\000\000\001d\003X\000\000\004\004\000\000\000\000\003\205\003Q\000\000\000\000\000\000\004:\003\166\004\140\000\000\000\000\000\000\000\000\004\020\000\000\001\139\004\025\000\000\0041\002\211\000\000\001q\000\000\000\000\000\000\000\134\004\005\000\000\002\181\001\146\000\135\000\000\002\182\001a\000\136\001b\000\000\003G\000\000\000\132\002\212\000\000\001r\000\141\003\208\002\213\000\000\002\195\000\000\002\214\003\168\000\000\003L\000\000\002\215\000\000\003M\004\012\000\145\002\196\000\000\000\000\002\179\002\202\003\169\003t\000\000\000\000\003\139\000\000\000\000\004\013\000\146\000\000\004\019\000\000\000\000\000Y\000\000\000\000\000\000\003X\000\134\004\004\000\000\001c\001\006\003Q\000\134\001d\000\000\004\015\004\016\000\135\000\147\000\000\000\000\000\136\004\020\000\000\001r\004\025\000\000\0041\002\211\000\000\000\000\002\237\000\000\001\139\001\t\004\005\0010\002\181\000\134\001q\003G\002\182\003y\000\000\000\000\000\145\003z\001\148\005\013\002\212\002\195\000\000\000\000\000\000\002\213\003L\000\000\000\000\002\214\003M\004\012\000\146\002\196\002\215\000\000\002\179\002\202\000\000\000\000\000\000\001\138\000\000\000\000\000\000\004\013\000\000\000Y\000[\002*\000_\000Y\000\000\000\000\000\147\003X\000\000\004\004\000\000\000\000\000\000\003Q\001\139\000\000\000\000\004\015\004\016\001\140\000\000\000\000\000\000\001\141\004\020\002\179\002\202\004\025\001\142\0041\002\211\000\000\000\000\000a\000\000\000\000\000\000\004\005\000\000\002\181\000Y\001r\000\000\002\182\003X\000\000\004\004\000\146\003G\000\000\000\000\002\212\000\000\000\000\000\000\000\000\002\213\000\000\002\195\000\000\002\214\003\135\000\000\003L\000\176\002\215\000\000\003M\004\012\000\147\002\196\000\000\000\000\003\136\004\005\000\000\002\181\000\132\000\000\000\000\002\182\000\141\004\013\000\000\000\000\000\132\000\000\000\000\000\000\001M\000\000\000\000\000Y\000\000\000\177\000\000\000\000\000\000\003Q\000\000\000\000\000\000\004\015\004\016\000\000\000\000\000\000\000\000\001\139\004\020\000\000\000\000\004\025\000\000\0041\002\211\000\149\000\000\000\000\000\000\000\178\000\000\001\150\000\000\000\179\000\000\000\134\003G\000\000\000\000\000\151\000\135\000\000\000\000\000\134\000\136\002\212\002\195\000\000\000\135\000\000\002\213\003L\000\136\000\000\002\214\003M\004\012\000\000\002\196\002\215\002\179\002\202\000\000\000\000\004\\\000\000\000\000\000\000\000\145\000\000\004U\000\000\001\006\003G\000\000\000Y\000\145\000\000\000\000\003X\000\000\004\004\000\000\002\195\000\000\000\000\003Q\000\000\003L\000\000\004\015\004W\003M\004\012\000\000\002\196\001\t\004\020\0010\000\000\004\025\004T\0041\002\211\000\000\000\000\000\000\004U\000\000\004\005\000\000\002\181\000\000\000\000\000\000\002\182\000\000\000\000\000\000\000Y\000[\0029\000_\003Q\002\212\000\000\000\000\004\015\004W\002\213\002\179\002\202\000\000\002\214\004\020\000\000\000\000\004\025\002\215\0041\002\211\000\000\000\000\000\000\000\000\000Y\000\000\000\146\000\000\003X\000\000\004\004\000\000\000a\000\000\000\146\000\000\000\000\000\000\000\000\000\000\002\212\000\000\000\000\002\162\000\000\002\213\000\000\000\000\000\147\002\214\000\000\000\000\000\000\000\000\002\215\000\000\000\147\006:\004\005\000\000\002\181\000\132\002\179\002\202\002\182\001L\000\000\000\000\002\164\001a\000\197\001x\003Z\000\177\000\000\000\000\000\000\000Y\003G\000\000\000\000\003X\000\000\004\004\000\000\000\000\000\000\003\235\002\195\000\000\000\000\000\000\000\132\003L\000\000\000\149\000\133\003M\004\012\000\178\002\196\000\000\000\000\000\179\000\000\004h\000\000\000\000\000\000\000\151\000\134\004\005\004i\002\181\000\000\000\135\000\000\002\182\000\134\000\136\003t\001c\000\000\003x\000\000\001d\000\000\000\000\003Q\000\000\000\000\000\000\004\015\004k\002\179\002\202\000\000\000\000\000\000\004\020\000\000\000\134\004\025\000\145\0041\002\211\000\135\004s\003G\000Y\000\136\001q\000\000\003X\000\000\004\004\000\000\000\000\002\195\000\000\000\000\000\000\001\006\003L\000\000\000\000\002\212\003M\004\012\000\134\002\196\002\213\000\000\003y\000\145\002\214\004f\003z\000\000\000\000\002\215\000Y\004U\004\005\000\000\002\181\001\t\000\000\0010\002\182\000\000\000\000\000\000\000\000\000\000\000\000\000b\000\000\003Q\004&\000\000\003G\004\015\004W\000\000\000\000\006>\000\000\000\000\004\020\000\000\002\195\004\025\000\000\0041\002\211\003L\000\000\000\000\004x\003M\004\012\000\146\002\196\000Y\000[\002>\000_\000\000\000\000\001r\000\000\000\000\000\132\000\000\004t\002\212\000\141\001\028\000\000\004+\002\213\000\000\000\000\000\147\002\214\000\000\000\000\000Y\000\000\002\215\003Q\001\021\000\146\005\015\004\015\004v\004/\000a\002\179\002\202\000\000\004\020\000\000\000\000\004\025\000\000\0041\002\211\003\135\006G\000\000\000\000\003G\000Y\000\147\001\138\000\000\003X\000\000\004\004\003\136\000\134\002\195\000\000\000\000\000\000\000\135\003L\002\212\000\000\000\136\003M\004\012\002\213\002\196\000\000\001\139\002\214\001a\000\000\001b\001\140\002\215\000\000\000\000\001\141\004t\004\005\000\000\002\181\001\142\000\000\000\000\002\182\000\145\000\000\000\000\000\000\000\000\000\000\000\000\000\149\003Q\000\000\000\000\000\000\004\015\004v\000\000\000\000\002\179\002\202\000\000\004\020\000\000\000\169\004\025\000\000\0041\002\211\000\000\006S\000\000\000\000\000\000\000Y\000\000\000\134\003\168\003X\001c\004\004\000\000\000\000\001d\000\000\000\000\000\000\000\000\000\000\002\212\001\031\003\189\003\238\000\000\002\213\001\022\000\000\001\023\002\214\000\197\000\000\000\000\000\000\002\215\000\000\000\000\000\000\000\000\004\005\001q\002\181\000\000\002\179\002\202\002\182\000\000\001\006\000\000\000\000\000\000\000\000\000\132\000\146\006V\000\000\000\141\003G\000Y\000\132\000\000\000\000\003X\000\133\004\004\000\000\000\000\002\195\000\000\000\000\002\162\001\t\003L\0010\000\000\000\147\003M\004\012\000\000\002\196\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\132\000\000\006H\004\005\000\141\002\181\002\247\000\000\000\197\002\182\000\000\000\177\000\134\000\000\000\000\000Y\000\000\000\135\003Q\000\134\000\000\000\136\004\015\006J\000\135\000\000\000\000\000\000\000\136\004\020\001r\003$\004\025\000\149\0041\002\211\000\000\000\178\000\000\000\000\003G\000\179\000\000\000\000\000\000\000\145\000\000\000\151\000\000\000\134\002\195\000\000\000\145\000\000\000\135\003L\002\212\000\000\000\136\003M\004\012\002\213\002\196\000\000\000\000\002\214\000\000\000\000\002\179\002\202\002\215\002\179\002\180\000\000\006H\000\000\000\132\000\000\000\000\000\000\000\141\000\000\000\145\000Y\000\000\000\000\000\000\004\154\000\000\000\000\003Q\000Y\000\000\003G\004\015\006J\000\000\001\139\000\000\000\000\001a\004\020\001x\002\195\004\025\000\000\0041\002\211\003L\004\185\000\000\001\152\003M\004\012\000\000\002\196\000\000\004\188\000\000\002\181\000\134\000\000\002\181\002\182\000\146\000\134\002\182\006H\002\212\000\000\000\135\000\146\000\000\002\213\000\136\000\000\000\000\002\214\000\000\004\194\000\132\000\176\002\215\003Q\000\141\000\000\000\147\004\015\006J\000\134\000\000\000\000\001c\000\147\004\020\000Y\001d\004\025\000\145\0041\002\211\000\146\000\000\000\000\002\179\002\180\000\000\004\231\000\000\000Y\002\207\000\177\001\175\000\000\000\000\000\191\001h\000\194\000\195\000\000\000\000\002\212\001q\000\147\000\000\000Y\002\213\000\000\000\000\000\134\002\214\000\000\000\000\000\149\000\135\002\215\000\000\000\178\000\136\000\000\000\149\000\179\000\000\000\196\000\000\000\197\000\000\000\151\000\177\000\000\000\000\000\000\000\000\000\134\000\171\002\181\000\000\002\195\000\000\002\182\002\195\000Y\000\145\000\000\000\000\000\000\001\028\004\195\000\000\002\196\000\149\000\000\002\196\000\000\000\178\000\000\000\000\000\146\000\179\000\000\001\021\004\233\001\028\000\000\000\151\000\132\001A\000\000\000\000\000\141\000\000\000\191\002\186\000\194\000\195\000\000\001\021\000\000\000\000\000\147\000Y\001r\000\000\000\000\000\000\000\000\000\000\000\000\004\198\000\000\000\000\004\234\000\000\004\221\002\211\000\000\000\000\000\000\001\028\000\196\000\000\000\197\000\132\000\000\000\177\005\031\000\141\000\000\000\000\000\000\000\000\000\000\001\021\000\000\000\134\002\212\000\000\000Y\002\212\000\135\002\213\000\146\000\000\000\136\002\214\000\000\000\149\001\138\000\000\002\215\000\178\000\000\002\225\002\195\000\179\000\191\003I\000\194\000\195\000\000\000\151\000\000\001A\000\147\000\000\002\196\000\000\000\145\001\139\000\000\000\000\000\134\000\000\001\140\000\000\000\000\000\135\001\141\000\000\000\000\000\136\000\000\001\142\000\196\000\000\000\197\002\179\002\202\000\177\000\000\001\031\000\000\004 \000\000\000\132\001\022\000\000\001\023\000\133\000\197\000\000\000Y\000\000\000\000\000\145\004\154\001\031\000\000\004(\000\000\000\149\001\022\000\000\001\023\000\178\000\197\000\000\000\000\000\179\000\000\000\000\000\000\000\000\000\000\000\151\000\000\001A\004\235\000\000\000\000\000\000\002\212\000\000\000\000\000\000\004\188\000\000\002\181\000\000\000\000\000\000\002\182\001\031\000\134\004\167\002\227\000\146\001\022\000\135\001\023\000\000\000\197\000\136\000\000\000\132\002\179\002\202\004\194\000\141\000\000\000\191\003~\000\194\000\195\000\000\000\000\000\000\000\000\000\147\000Y\000Y\000\000\000\000\000\000\004\154\000\000\000\145\000Y\000[\002\128\000_\000\000\000\000\000\146\000\000\000\000\000\000\000\000\000\196\000\000\000\197\000\000\001a\000\177\001b\000\000\004\187\000\191\004\022\000\194\000\195\000\000\000\000\000\134\004\188\000\147\002\181\000\000\000\135\000\000\002\182\000a\000\136\000\000\000\000\000\149\000\000\000\000\000\000\000\178\000\000\000\000\000\000\000\179\000\132\000\196\004\194\000\197\000\133\000\151\000\177\001A\000\000\000\000\000\000\002\195\000\145\000\000\000\000\000\000\000\000\000\134\000\000\000\000\001c\004\195\000\000\002\196\001d\000\000\002\179\002\202\000\149\000\132\000\132\000\146\000\178\000\133\000\141\004\196\000\179\000\000\000\000\000\000\000\000\000\000\000\151\000\000\001A\000Y\000\000\004E\000\000\000\134\001q\000\000\000\000\000\147\000\135\000\000\000\000\000\000\000\136\000\000\000\000\000\000\004\198\000\000\000\000\004\203\000\000\004\221\002\211\000\000\003t\000\000\000\000\003x\000\000\003F\000\000\002\181\000\134\000\134\002\195\002\182\000\145\000\135\000\135\000\000\000\000\000\136\000\136\002\212\004\195\000\146\002\196\000\000\002\213\000\000\002\179\002\180\002\214\000\000\000\149\000\000\000\000\002\215\004\196\000\191\004\200\000\194\000\195\000\000\000\000\000\145\000\145\000\147\000\181\000\000\000\000\001\006\000\000\003F\000\000\000\000\000\000\003y\004K\000\000\000\000\003z\002\207\001r\000\000\004\198\000\000\000\196\004\203\000\197\004\221\002\211\000\177\000\000\000\000\001\t\000\000\0010\000\000\000\134\000\000\002\181\000\000\002\179\002\202\002\182\000\000\000\000\000Y\000[\002\134\000_\002\212\000\000\000\149\000\146\000\000\002\213\000\178\003G\000\000\002\214\000\179\000\000\003?\005\000\002\215\000\000\000\151\002\195\001A\000\000\000\000\000\000\003L\000\000\000\000\000\147\003M\002\179\002\202\002\196\000a\000\000\000\146\000\146\000\000\000\000\000\000\000\000\001\139\000\000\003F\004M\002\181\000\000\000\000\003\160\002\182\001C\003?\004N\000\195\000\000\001\154\000\000\000\147\000\147\000\000\003Q\000\000\000\000\000\000\003\135\003\196\003\213\003\199\000\000\000\000\000\000\002\179\002\202\003\163\000\000\000\149\003\136\002\211\000\196\003F\000\197\002\181\000Y\000\177\000\000\002\182\000\000\000\000\000\000\000\183\002\195\000\000\003?\004D\000\000\003\202\000\000\000\000\002\212\000\000\000\000\003\166\002\196\002\213\000\149\000\149\000\000\002\214\000\000\000\178\000\000\000\000\002\215\000\179\000\000\002\179\002\202\000\000\000\185\000\151\003F\001A\002\181\000\000\000\000\000\000\002\182\000\000\000\000\000\000\000\000\000\000\000\000\003G\000\000\000\000\003?\003@\000\000\001\028\000\000\000\132\000\000\002\195\003\168\000\143\000\000\000\000\003L\000\000\000\000\000\000\003M\001\021\000\000\002\196\002\179\002\202\003\169\000\000\000\000\000\000\000\000\001\006\003F\000\000\002\181\003O\002\212\003G\002\182\000\000\000\000\000\000\000\000\000\000\000\000\003?\003K\002\195\000\000\000\000\002\229\003Q\003L\000\000\000\000\001\t\003M\0010\000\134\002\196\002\179\002\202\000\000\000\135\000\000\000\132\000\000\000\136\002\211\000\141\000\000\003O\000\000\003F\000\000\002\181\000\000\000\000\003G\002\182\000Y\003?\004P\000\000\000\000\000\000\000\000\003Q\002\195\002\212\000\000\000\145\000\000\003L\002\213\000\000\000\000\003M\002\214\000\000\002\196\000\000\000\000\002\215\002\211\000\000\001a\000\000\001b\003F\000\000\002\181\003O\000\000\000\134\002\182\000\000\000\000\000\000\000\135\000\000\000\000\003G\000\136\000\000\002\212\000\000\000\000\003Q\000\000\002\213\001\031\002\195\004\210\002\214\000\000\001\022\003L\001\023\002\215\000\197\003M\000\000\000\000\002\196\002\211\000\000\000\145\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\134\003O\000\000\001c\000\000\000\000\000\000\001d\003G\000\000\000\000\002\212\000\000\000\000\000\000\000\146\002\213\003Q\002\195\000\000\002\214\000\000\000\000\003L\000\000\002\215\000\000\003M\002\179\002\202\002\196\000\000\000\000\001q\002\211\000\000\000\000\000\147\000\000\000\000\000\000\000\000\003O\000\000\003G\000\000\000\000\000\000\000\000\003?\005\021\002\179\002\202\000\000\002\195\002\212\000\000\000\000\003Q\003L\002\213\000\000\000\148\003M\002\214\000\000\002\196\000\000\000\000\002\215\000\000\000\146\003?\005\023\000\000\002\211\000\000\003F\003O\002\181\000\000\000\000\000\000\002\182\000\149\000\000\000\000\000\000\003d\000\150\000\000\000\000\000\000\000\147\003Q\000\000\002\212\000\000\000\151\000\000\003F\002\213\002\181\000\000\000\000\002\214\002\182\002\179\002\202\000\000\002\215\002\211\001r\003f\000\000\000\197\000\000\000\000\000\177\000\000\000\000\003t\000\000\000\000\003x\000\000\000\000\000\000\003?\005\025\000\000\000\000\002\212\000\000\000\000\000\000\000\000\002\213\000\000\000\000\000\149\002\214\000\000\000\000\000\178\000\000\002\215\001a\000\179\001b\000\000\000\000\000\000\000\132\000\151\000\000\003F\000\141\002\181\000\000\000\000\000\000\002\182\000\000\000\000\000\000\003t\003G\000Y\003x\003F\002\179\002\202\000\000\003y\000\000\000\000\002\195\003z\001\139\000\000\000\000\003L\000\000\000\132\000\000\003M\000\000\000\141\002\196\003G\000\000\004G\001\156\000\000\000\000\000\134\000\000\000\000\001c\002\195\003O\000\134\001d\000\000\003L\000\000\000\135\000\000\003M\000\000\000\136\002\196\000\000\000\000\003F\000\000\003Q\000\000\003y\003F\000\000\002\181\003z\003O\000\000\002\182\000\132\000\000\001q\000\000\000\141\000\000\000\134\002\211\000\145\000\000\000\000\000\135\000\000\003Q\000\000\000\136\000\000\000\000\000\000\003G\000\000\000\000\000\000\000\000\000\000\003&\000\000\003\160\002\212\002\195\002\211\000\000\000\000\002\213\003L\000\000\000\000\002\214\003M\000\145\000\000\002\196\002\215\003\135\003\196\003\197\003\199\000\000\000\000\000\134\000\000\002\212\003\163\003O\000\135\003\136\002\213\000\132\000\136\000\000\002\214\000\141\000\000\000\000\000\000\002\215\000\000\000\000\003(\003Q\000\000\000\000\003\160\000\000\003\202\000\000\000\000\000\000\000\000\000\000\003\166\001r\000\145\003G\000\000\000\000\002\211\000\146\003\135\003\196\006M\003\199\000\000\002\195\000\000\000\132\000\000\003\163\003L\000\141\003\136\000\000\003M\000\000\003d\002\196\000\134\002\212\000\000\000\147\000\000\000\135\002\213\000\000\000\000\000\136\002\214\003O\000\146\003\202\000\000\002\215\000\000\003\168\000\000\003\166\000\000\000\000\000\000\003v\000\000\000\197\000\000\003Q\000\177\000\176\000\000\003\169\000\000\000\145\000\147\000\000\000\000\000\000\000\134\000\000\000\000\000\000\001\139\000\135\002\211\000\000\000\000\000\136\000\000\000\000\000\149\000\000\000\000\000\000\000\178\000\146\001\158\003t\000\179\000\177\003x\000\000\003\168\000\000\000\151\002\212\000\000\000\000\000\000\000\132\002\213\000\145\000\176\000\141\002\214\000\000\003\169\000\147\000\000\002\215\000\000\000\149\000\000\000\000\000\000\000\178\000\000\000\132\000\000\000\179\000\000\000\141\003a\000\000\000\000\000\151\000\000\000\000\000\000\000\000\000\000\000\000\000\177\000\000\003\154\001a\003F\001b\000\000\000\000\003y\000\000\000\146\000\000\003z\000\000\000\000\000\000\000\134\000\000\000\000\000\000\000\000\000\135\000\149\000\000\000\132\000\136\000\178\003\156\000\141\000\000\000\179\000\000\000\147\000\000\000\134\000\000\000\151\000\000\000\000\000\135\000\000\000\000\000\132\000\136\000\000\001a\000\141\001b\000\146\000\145\000\000\000\000\000\134\000\000\000\000\001c\000\000\000\177\000\000\001d\000\000\000\000\000\000\000\000\000\000\001\177\000\000\000\145\000\000\000\000\000\147\000\000\000\000\000\134\000\000\000\000\000\000\000\000\000\135\000\149\000\000\000\000\000\136\000\178\000\000\001q\000\000\000\179\003\160\000\000\000\000\000\134\000\000\000\151\000\134\000\177\000\135\001c\000\000\000\132\000\136\001d\000\000\000\141\003\135\003\201\000\145\003\199\000\000\000\000\000\000\000\000\000\000\003\163\000\000\000\000\003\136\000\149\000\132\000\000\003\232\000\178\000\141\000\000\000\145\000\179\000\000\001q\000\146\000\000\000\000\000\151\000\000\000\000\000\000\003\202\000\000\000\000\003\243\000\000\000\000\003\166\000\000\000\000\000\000\003\156\000\146\000\000\000\134\000\000\000\147\000\000\000\000\000\135\000\000\000\000\000\000\000\136\000\000\002\179\002\180\000\000\000\000\003\156\001r\000\000\000\000\000\134\000\147\000\000\000\000\000\000\000\135\000\000\000\000\000\177\000\136\003\251\000\000\000\000\000\000\000\145\000\000\000\000\003\168\000\146\003t\000\000\000\132\003x\000\000\000\000\000\141\000\177\000\000\004\008\000\000\000\149\003\169\000\000\000\145\000\178\003\156\000\146\000\000\000\179\001r\000\147\000\134\000\000\002\181\000\151\000\000\000\000\002\182\000\149\000\000\000\000\000\000\000\178\003\156\000\000\000\000\000\179\000\000\000\147\000\000\000\000\000\000\000\151\000\000\001\139\000\177\000\000\000\132\003F\000\132\000\134\000\141\003y\000\141\000\000\000\135\003z\000\000\001\160\000\136\000\000\000\000\000\000\000\177\000\000\004$\000\000\000\149\000\000\000\000\000\000\000\178\000\000\000\146\000\000\000\179\000\132\000\000\000\000\000\000\000\141\000\151\000\000\000\145\004-\000\149\001\139\000\000\000\000\000\178\003\156\000\000\000\146\000\179\000\000\000\147\000\134\000\000\000\134\000\151\001\162\000\135\000\000\000\135\000\000\000\136\000\000\000\136\000\000\003\156\000\000\000\000\000\000\000\000\000\147\000\000\000\000\000\000\000\000\000\132\000\177\002\195\000\000\000\141\000\000\000\134\000\000\000\000\000\000\000\145\000\135\000\145\003\160\002\196\000\136\000\000\000\000\000\000\001a\000\177\001b\000\000\000\149\000\000\000\000\000\000\000\178\000\000\003\135\000\000\000\179\003\162\000\000\000\000\0045\000\000\000\151\003\163\000\145\000\000\003\136\000\149\000\146\000\000\000\000\000\178\000\000\000\000\000\134\000\179\001a\000\000\001b\000\135\000\000\000\151\000\000\000\136\000\000\003\156\000\000\000\000\000\000\000\000\000\147\003\166\000\000\000\134\000\000\000\132\001c\000\000\000\000\000\141\001d\000\000\000\000\000\000\000\000\002\212\004\159\000\145\004\171\000\000\000\000\000\000\000\000\000\132\000\146\000\177\000\146\000\141\000\000\002\231\000Y\000[\002\139\000_\000\000\000\134\001q\000\000\001c\000\000\000\000\003\156\001d\003\156\003\168\004\176\000\147\000\149\000\147\000\000\000\000\000\178\000\000\000\146\000\134\000\179\000\000\000\000\003\169\000\135\000\000\000\151\000\132\000\136\000a\000\000\000\141\000\000\001q\000\000\003\156\000\177\000\134\000\177\000\000\000\147\000\000\000\135\000\000\000\000\000\132\000\136\000\000\000\000\000\141\000\000\000\000\000\145\004\183\000\000\000\000\000\000\000\000\000\149\000\000\000\149\000\146\000\178\000\000\000\178\000\177\000\179\000\000\000\179\000\000\000\145\000\000\000\151\000\000\000\151\000\000\000\134\000\000\003\156\000\000\001r\000\135\000\000\000\147\000\000\000\136\000\000\000\149\000\000\000\000\000\000\000\178\000\000\000\000\000\134\000\179\000\000\000\000\000\000\000\135\000\000\000\151\000\132\000\136\000\000\000\000\000\141\000\000\000\177\000\145\000\000\000\000\001r\000\000\000\000\000\132\006)\000\000\000\000\000\141\000\000\000\000\000\000\004\192\000\000\000\000\000\000\000\145\000\000\006\137\000\149\000\146\000\000\000\132\000\178\000\000\000\000\000\141\000\179\000\000\000\000\004\214\000\000\000\000\000\151\000\000\000\000\001\139\003\156\000\146\000\000\000\134\000\000\000\147\000\000\000\000\000\135\000\000\000\000\001\006\000\136\001\168\000\000\000\000\000\134\000\000\003\156\000\000\001a\000\135\001b\000\147\000\000\000\136\000\000\000\000\002\179\002\180\000\177\001\139\004\219\000\000\000\134\001\t\000\145\0010\000\000\000\135\000\146\000\000\000\132\000\136\000\000\001\170\000\141\000\000\000\177\000\145\004\226\000\000\000\149\000\000\000\000\000\000\000\178\003\156\000\146\000\000\000\179\000\000\000\147\000\000\000\000\000\000\000\151\000\145\000\000\000\134\000\149\000\000\001c\000\000\000\178\003\156\001d\000\134\000\179\002\181\000\147\000\000\000\000\002\182\000\151\000\132\000\000\000\177\000\000\000\141\000\000\000\134\000\000\000\000\000\000\000\000\000\135\000\000\000\000\000\000\000\136\000\000\001q\000\000\000\000\000\177\000\000\000\000\000\000\000\149\000\000\000\000\000\132\000\178\000\000\000\146\000\141\000\179\000\000\000\000\001a\000\000\001x\000\151\000\145\000\000\000\000\000\149\000\146\000\000\000\000\000\178\006*\000\000\000\134\000\179\000\000\000\147\000\000\000\135\000\000\000\151\000\000\000\136\000\000\006*\000\146\000\000\000\000\000\000\000\147\000\000\000\000\000\000\000\000\000\132\000\000\002\179\002\180\000\141\000\000\000\134\000\177\001E\000\000\000\000\000\135\000\145\000\147\000\134\000\136\000\000\001c\000\000\000\000\000\177\001d\002\195\000\000\000\000\000\000\001r\000\132\000\000\000\149\000\000\000\141\000\000\000\178\002\196\000\000\000\000\000\179\000\177\000\145\000\000\000\000\000\149\000\151\000\000\000\000\000\178\001q\000\146\000\134\000\179\000\134\000\000\002\181\000\135\000\000\000\151\002\182\000\136\000\000\000\149\000\000\000\132\000\000\000\178\001k\000\141\000\000\000\179\000\000\000\147\000\000\000\000\000\000\000\151\000\132\000\134\000\000\000\000\000\141\000\000\000\135\000\145\000\000\000\000\000\136\000\000\000\000\000\000\000\000\000\000\000\146\000\000\001\139\000\132\000\177\000\000\000\000\000\141\000\000\002\212\000\000\000\000\000\000\000\000\000\000\000\000\001\172\001\132\000\145\000\000\000\134\000\000\000\147\002\233\000\000\000\135\000\149\000\146\000\000\000\136\000\178\000\000\000\000\000\134\000\179\001r\000\000\000\000\000\135\000\000\000\151\000\132\000\136\000\000\001\179\000\141\000\000\000\177\000\000\000\147\000\000\000\000\000\134\000\145\000\000\000\000\000\000\000\135\000\000\005.\002\195\000\136\000\000\000\000\000\000\000\000\000\145\000\000\000\000\000\149\000\146\000\000\002\196\000\178\000\177\000\132\000\000\000\179\000\000\000\141\000\000\001\138\000\000\000\151\000\000\000\145\000\000\002\149\000\000\000\000\000\134\000\000\000\147\000\000\000\000\000\135\000\149\000\146\000\000\000\136\000\178\000\000\001\139\000\000\000\179\000\000\000\000\001\140\000\000\000\000\000\151\001\141\000\000\000\000\002\153\000\000\001\142\000\177\000\000\000\147\002\179\002\180\000\000\000\145\000\134\000\000\000\000\000\000\000\000\000\135\000\000\000\000\000\146\000\136\000\000\000\000\000\000\000\000\002\212\000\149\000\000\000\000\000\000\000\178\000\177\000\146\000\000\000\179\000\000\002\189\000\000\000\000\002\235\000\151\000\147\000\000\000\000\000\145\000\000\000\000\000\000\000\000\002\252\000\000\000\146\000\000\000\149\000\147\000\000\000\134\000\178\002\181\000\132\000\000\000\179\002\182\000\141\000\000\000\000\000\177\000\151\003\001\000\000\000\000\000\000\000\132\000\147\000\000\000\000\000\141\000\000\000\000\000\177\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\146\000\000\000\000\000\178\000\132\000\000\000\000\000\179\000\141\000\177\000\000\000\000\000\149\000\151\000\000\000\000\000\178\003\005\000\000\000\134\000\179\000\000\000\147\000\000\000\135\000\000\000\151\000\000\000\136\000\000\000\000\000\149\000\134\000\000\000\146\000\178\000\000\000\135\000\000\000\179\003t\000\136\000\132\003x\000\000\000\151\000\141\000\177\000\000\000\000\000\000\003\028\000\145\000\134\000\000\000\000\000\147\000\000\000\135\000\000\000\000\000\000\000\136\000\000\000\000\000\145\000\000\002\195\000\000\000\149\000\000\000\000\000\000\000\178\000\132\000\000\000\132\000\179\000\141\002\196\000\141\000\177\000\000\000\151\000\000\000\000\000\145\000\000\000\000\003F\000\000\000\134\000\000\003y\000\000\000\000\000\135\003z\000\000\000\000\000\136\000\000\000\000\000\149\000\000\000\000\000\000\000\178\000\000\000\000\000\000\000\179\000\000\000\000\000\132\000\000\000\000\000\151\000\143\000\000\000\000\000\000\000\000\000\134\000\145\000\134\000\000\000\000\000\135\000\000\000\135\000\146\000\136\000\000\000\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\002\212\000\000\000\000\003C\000\000\000\000\000\000\000\000\000\147\000\000\000\000\000\145\000\000\000\145\002\241\000\000\003\129\000\000\000\134\000\000\000\146\000\147\000\000\000\135\000\000\000\000\000\000\000\136\003\160\000\000\000\000\000\000\000\000\000\177\000\000\000\000\000\000\003\144\000\000\000\000\000\000\000\000\000\147\000\000\003\135\003t\000\177\003\165\003x\000\000\000\132\000\145\000\000\003\163\000\143\000\149\003\136\000\000\000\146\000\178\000\000\000\132\000\132\000\179\000\000\000\143\000\143\000\177\000\149\000\151\000\000\000\000\000\178\000\000\000\000\003\146\000\179\000\000\000\000\000\000\000\147\003\166\000\151\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\146\000\000\000\146\000\178\000\134\000\000\000\132\000\179\003y\000\134\000\143\000\000\003z\000\151\000\135\000\177\000\000\004\147\000\136\004\249\000\134\000\134\000\147\000\000\000\147\000\135\000\135\002\179\002\180\000\136\000\136\000\000\000\000\000\000\003\168\000\132\000\000\000\149\000\000\000\143\000\146\000\178\000\145\000\000\000\000\000\179\000\000\000\177\003\169\000\177\000\000\000\151\000\000\000\145\000\145\000\134\002\179\002\180\000\000\000\000\000\135\000\000\000\147\000\000\000\136\000\000\000\000\000\000\000\000\000\149\000\000\000\149\000\000\000\178\000\000\000\178\000\134\000\179\002\181\000\179\000\000\000\000\002\182\000\151\000\134\000\151\000\000\000\148\000\145\000\135\000\000\003t\000\000\000\136\003x\000\000\003t\000\000\000\000\003x\000\000\000\000\000\000\000\000\003\135\000\134\000\000\002\181\000\000\000\149\000\000\002\182\000\000\000\000\000\187\000\000\003\136\000\145\000\000\000\000\000\000\000\146\000\000\000\151\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\146\000\146\000\000\000\000\000\000\000\000\000\000\000\000\000\134\000\000\000\000\000\147\003y\000\134\000\000\000\000\003z\003y\000\000\000\000\000\000\003z\000\147\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\146\000\148\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\195\000\000\000\000\000\148\000\148\000\000\000\000\000\000\003\168\000\000\000\000\000\000\002\196\000\147\000\149\000\000\000\000\000\000\000\000\000\190\000\146\000\000\003\191\000\000\000\000\000\149\000\149\000\000\000\151\002\195\001z\001|\000\000\000\000\000\000\000\000\000\000\000\000\000\148\000\151\000\151\002\196\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\000\000\000\000\000\000\000\000\000\149\000\000\000\000\000\000\003\135\002\204\000\000\000\148\000\000\003\135\000\000\000\000\000\000\000\000\000\151\000\000\003\136\000\000\002\212\000\000\000\000\003\136\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\149\000\000\000\000\002\243\000\000\002\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\151\000\000\000\000\000\000\002\212\000\000\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\245\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\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\168\000\000\000\000\000\000\000\000\003\168\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\193\000\000\000\000\000\000\000\000\003\195"))
+ ((16, "\000\193\001\128\000\000\000\000\000\000\000K\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001E\000\000\001?\003\192\000\000\001\r\000\225\000\000\000\000\000\000\000G\000\000\000\020\000\176\000\000\000\000\000\250\000\000\001\022\000\000\000\000\000\000\001\150\000\000\001\188\000\000\000\000\000\000\002\028\000\000\002\128\000\000\000\000\003\182\000\000\003\198\003\238\000\000\000\000\003\244\000\000\0048\000\000\000\000\000\000\005F\000\000\005\240\000\000\006T\000\000\006\\\000\000\006\130\006\164\000\000\000\000\006\218\000\000\007\b\000\000\000Z\002P\001~\000\000\000\000\000\000\000\000\000x\000\000\000\000\001\176\000\000\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\216\000\000\000\000\002\172\n\226\000\000\000\000\012\026\000\000\000\000\000\000\000\000\007f\000\000\007n\003n\000\000\007x\000\000\000\000\007\176\000\000\000\000\007\198\000\000\b4\000\000\000\000\000\000\bP\000\000\0018\b\192\000F\000\000\000\000\000\000\000\000\000\000\001\170\000z\000\000\000\218\000\000\000\000\000\000\t\020\000\000\t\160\000\000\003\006\001]\027.\000\000\000\000\000\168\006Z\000\000\023\186\000\000\007\012\005D\020\246\018\196 <#\180\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\bt\020\246\000\000\000\000\012\006\014L\017\170\000\000\019\202\000\000\003\204\020\168\000\000\000\000\000\000\000U\000\000 \136#\180\011\246\000\000\000\0003\018\000\000\000\226\000\000\002\150\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005t\000\000\000\000\n\b\000\000\012\248\000\000\015,\000\000\021\240\000\000\024\"\000\000\025j\000\000\026\166\000\000\026\236\000\000\"\006\000\000#\182\000\000!\016\000\0004\234\000\000\000\000\000\000\000\000\000\000*j\000\000,\"\000\000<:\000\000<\228\000\000=\016\000\000=X\000\000=x\000\000=\214\000\000>\n\000\000>\030\000\000>>\000\000>R\000\000>\146\000\000>\194\000\000?\016\000\000?J\000\000\015N\000\000\000\000&d\000\000\000\000\000\000\000\000\000I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\2335\018\000\000\000`\000\000\000\000\000|\004j\000\000\000=\t4\000\000\000\000\tp\000\000\t\162\t\202\000\000\000\000\n\022\000\000\n \000\000\000\000\000\000\nn\000\000\np\000\000\n~\000\000\n\146\000\000\000\000\n\158\000\000\n\190\n\196\000\000\000\000\n\212\000\000\011\004\000\000\000\000\000\000\011 \000\000\011\"\000\000\011T\000\000\011\164\000\000\011\170\011\192\000\000\000\000\011\198\000\000\011\200\000\000\001(\007\194\000\000\011\214\000\000\011\228\b\254\000\000\011\230\000\000\000\000\011\244\000\000\011\250\000\000\012\000\000\000\000\000\000\000\012\018\000\000\012\024\003~\000\000\012\030\000\000\002\200\t\222\000\000\004R\000\000\004\130\000\000\000\000\004\206\000\"\000\000\000\000\000\000\000\000\003\144\003\214\000\000\004\194\000\000\000\000\000\000\002 \000\000\003\\\000\000\005\216\000\000\000\000\000\000\000\000\000\000\000\000\006X\000\000\000\000\000\000\000\000\000\000\005\172\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000=\004\202\t\254\000\000\012&\000\000\012(\012\232\000\000\012.\000\000\000\000\000\000\005\246\000\000\000\000\000\000\000\000\0014\000\000\000\000(\168\000\000\000\000\000\000\016p\000\000\000\000\000\000\000\000\000\000\000\000\023,\000\000\000\000\026\134\000\000\000\000\026\188\000\000\018\132\000\000\000\000\000\000\001\226\000\000 \168'z\000\000\000\000'\148'\182\000\000;\132\000\000;\226\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000?\218\000\000,\190\000\0005B\000\000?\230\000\000@\002\000\000@\018\000\000@\"\000\000@J\000\000@\242\000\000A\n\000\000A\026\000\000A\174\000\000A\190\000\000A\210\000\000A\240\000\000B\000\000\000\000\000(@\000\000\000\000\000\000(\182\000\000\000\000\000\000\000\000\000\000\000\0005\144\000\000\000\000\000\000\005\190\000\000\000\000\000\000\000\000\000\000\000\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\0006\002\000\000\000\000\000\000\022\016\001t\000\000\000\000\000\000\000\000\016\234\000\000)\216\000\000\000\000\000\000\000\000\000\000* \000\000\000\000\000\000*n\000\000\000\000\000\000\000\000\000\000\000\000\000\222\000\000\000\000\000\000\012J\r\190\000\000\012N\000\000\000\000\000\000\000\000\000\000\012R\000\000\000\000\000?\006\024\000\000\006\240\000\000\000\000\000\000\002.\000\000\011\194\000%\012T\000\000\000\000\012f\000\000\012l\012v\000\000\000\000\012z\000\000\012\144\000\000\000\000\000\000\012\146\000\000\012\150\000\000\012\158\000\000\012\172\000\000\000\000\012\176\000\000\012\178\012\180\000\000\000\000\012\186\000\000\012\190\000\000\000\000\000\000\012\194\000\000\012\196\000\000\012\198\000\000\012\212\000\000\012\214\012\234\000\000\000\000\012\240\000\000\012\242\000\000\004\\\0160\000\000\012\244\000\000\012\248\016J\000\000\r\n\000\000\000\000\r\016\000\000\r\024\000\000\r\026\000\000\000\000\000\000\r\"\000\000\b\198\000\000\000\000\000\000\002\166\001\144\000\000\000\000\003\224\000\000\000\000\r&\014\026\000\000\r(\000\000\000\000\000\000\005\160\000\000\000\000\000\000\002\018\000\000\000\000\000\000\000\000\000\000\005\012\016\236\000\000\r2\000\000\r6\024@\000\000\r:\000\000\000\000\014\\\rB\000\000\000\000\rT\000\000\r^\rd\000\000\000\000\rl\000\000\rn\000\000\000\000\000\000\rp\000\000\rv\000\000\rx\000\000\rz\000\000\000\000\r\128\000\000\r\144\r\156\000\000\000\000\r\158\000\000\r\194\000\000\000\000\000\000\r\196\000\000\r\198\000\000\r\202\000\000\r\204\000\000\r\206\r\216\000\000\000\000\r\220\000\000\r\234\000\000\004v\017\012\000\000\r\244\000\000\r\250\018\200\000\000\r\254\000\000\000\000\014\000\000\000\014\002\000\000\014\004\000\000\000\000\000\000\014\b\000\000\014\012\030\138\000\000\014\022\000\000\000\000\006\"!\164\000\000\014\028\000\000\014\"\"\208\000\000\014,\000\000\000\000\000\000\000\000\000\000\000\000\000\0006>\000\000#\234\000\000\000\000\000\0006B\000\000\000\000\000)\000\000\000\000\000\000\003\228\002\140\000\000\000\000-:\007f\000\000 >*\242\000\000\000\000\000\000-N\000\000\000\000*\246\000\000\000\000\000\000\n4\000\000\000\000\000\000\000\000\000\000\000\000\000\000$\224\000\000\000\000%\020\000\000\000\000)\190\000\000\r\144\000\000\000\000\000\000\006D\000\000!\182\000\000\000\0006\144\000\000\000\000\000\000\007\020\000\000\000\000\000\000\000\000\000\000\000\0006\146\000\0007D\000\000\000\000\000\000+\142\021\168\000\000\000\000\000\000-z\000\000\000\000\000\000\000\000\0074\000\000\000\000\000\000\000\0006\\\000\000:\198\000\000\002\128\000\000\000\000\000\000B\012\000\000BZ\000\000B\148\000\000B\184\000\000B\236\000\000C\b\000\000Cj\000\000C\150\000\000C\152\000\000C\178\000\000C\194\000\000C\210\000\000C\230\000\000D,\000\000\000\000\000\000.0\000\000\000\0006\210.~\000\000\000\000.\190\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002\208\000\000\000\000\000\000\000\000\006\236\000\000\007h\000\000\000\000\b~\000\000\000\000\000\000.\234\000\000\000\000\000\000\000\000\001]\000\000\014t\000\000\000\000\000\000\000\000/*\000\000\000\000\000\000\000\000\005h\n\"\000\000/L\000\000\000\000\000\000\000\000\n\214\000\000/\166\000\000\000\000\000\000\000\000\003.\000\000\005\240\000\000*:+\188\000\000\000\000\000\0007x\000\000\000\000\000\000\000H\000\0008\004\000\000\000\000\000\0008@\000\000\000\000\002x\000\000\023\220\000!,@\000\000\000\000\000\000\001\216\028p\000\000\000\000\000\000\000\000\000\000\000\000.\192\000\000\000\0001x\000\000\000\0001\144\000\000\020\220\000\000\000\000\000\000\007\178\000\000!\242\000\000\000\0008z\000\000\000\000\000\000\b(\000\000\000\000\000\000\000\000\000\000\000\000<\020\000\000<T\000\000\000\000\000\000\006\026\000\000\000\000\000\000\000\000\000\000\000\000D\152\000\0000\b\000\0008\146\000\000D\186\000\000D\216\000\000D\236\000\000E\012\000\000E\154\000\000E\182\000\000E\210\000\000E\234\000\000F\006\000\000F\"\000\000F0\000\000F\128\000\000F\156\000\000\000\000\007\188\000\000\b\004\000\000\012\180\002\000\006\208\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0008\220\000\000$$\t\028\t\150\000\000\000\000\000\0000B\000\0000Z\000\0000\164\000\000$D%:\002\144\0050\000\000\004F\t8\000\000\000\000\000\000\t\182\000\000\000\000\nT\000\000\000\000\000\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\b\000\000\000\000\000\000\000\000\000\000\000\000\"h\000\000%t\000\000\000\000\000\000\000\000\r\030\000\000\000\000\br\000\000\000\000\000\000\024\222\002\192\000\000\025\024\000\000\000\000\n\214\000\000\006f\000\000\000\000\r\170\000\000\025\228\000\000\000\000\"\196\000\000\000\000\000\000\005H\000\000\000\000\t\186\000\000\000\000\023,\000\000\000\000\000\000/\240\000\000\000\000\000\000\031\164\000\000\000\000\000\000\000\0001 \000\000\000\000\000\000\000\000\006\178\012d\000\0001J\000\000\000\000\000\000\000\000\000\000\000\000\014$\000\000\000\000\007 \000\000\015\"\000\000\005H\000\000\000\000\006^)~\000\000\006\176\000\000\000\000\000\000\000\000\006\026\000\000%\180\000\000\026\146\001\\\027 \000\000\003\188\000\000\015\156\000\000\016(\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\006\208\027^\003$\0286\000\000\000\000\000\000\004\200\000\000\016\162\000\000\007r\000\000\000\000\005H\000\002\028\222\000\000\b\022\000\000\017\160\029\134\000\000\000\000\018\026\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b&\007\164\000\000\b\134\000\000\000\000\000\000\000\000\bx\000\000\018\166\000\000\000\000\000\000\011\2389\180\000\000\000\000\000\000\031\250\000\000\000\000\000\000\000\000\000\000\005\192\nP\000\000\000\0002*\000\000\000\000\006\146\000\000\0112\000\000\000\000&\014\000\000\000\000\000\0002J\000\000\000\000\000\000\000\0002L\000\000\000\000\007|\011\188\000\000\000\0002d\000\000\000\000\b\152\031\210\000\000\011\244\000\000\000\0002\148\000\000\000\000\000\000\000\000\000\000\000\000\000\000\"\228\000\000\000\000\000\000\000|\000\000\000\000\012\164\000\000\000\000'2\000\000\000\000\000\0003B\000\000\000\000\000\000\000\0003Z\000\000\000\000\b\188\012\196\000\000\000\0003\154\000\000\000\000\b\196\000\000\000\000\000\000\000\000\006\026\000|\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\128\000\000\0194\000\000\000\000\000\0009\182\000\000\007\216\000\000\000\000\000\000\005\188\000\000\004\198\000\000\000\000\004\188\019\226\000\000\020\144\000\000\000\000\000\000\005\232\000\000:J\007b:b\000\000:\138\000\000\000\000\000\000\bL\000\000:\240\bZ\000\000\000\000&T\b\168&\244\000\000',\000\000\000\000\000\000\tR\000\000;6\tx\000\000\000\000\018\174\t\184\019\012\000\000\026\002\000\000\000\000\000\000\n&\000\000;\128\nh\000\000\000\000\000\000\004\156\000\000\000\000\000\000\000&\000\000\000\000\000\000\000\000\000\000\000\000\b\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\0022\000\000\000\000\000\218\000\000\000\000\014\248\000\000\000\000\000\000\000\000\000\000\005\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\014\248\000\000\000\000\014\208\000\000\b\b\000\000\000\000\000 \000\000\001\144\014v\000\142\000\000\000\000\005\174\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0044\bP\000\000\000\000\000a\000\000\000\000\000\000\t\244\000\000\000\000\014T\019\"\000\000\000\000\000\000\000\000\019\210\020\142\004\180\000\000\000\000\000\000\0266\000\000\000\000\000\000\000\000\000\000\000\000\t\152\000\000\000\000\011l\000\000\000\000\014>\000\000\027>\000\000\000\000\000\000\003 \000\000\000\000\004j\000\000\000u\000\000\000\000\000\000\000\000\000\129\027\160\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\007\214\028\004\000\000\000\000\000\000\000\000\030X\000\000\000\000\t\014\000\000\015\022\000\000\000\000\000\000\011X\000\000\012J\000\000\000\000\000\000\nf\000\000\000\000\031L\000\000\000\000\000\006\014R\000\000\014V\000\000 \210\006\002\000\000\"\150\000\000\000\000\000\000\000\000\014b\000\000\014\226\000\000\000\000\000\000\007\236\000\000\000\200\014\170\002\226\000\000\000\000\000\000\004\014\0001\000\000\000\000\000\000\000\000\007p\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\002F\000\000\000\000\000\166\000\000\001\224\015F\004\200\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\234\000\000\000\000\n\212\"\156\000\000\000\000\000\000\000\000#\014\000\000\000\000\000P\000\000\b\196\r\"\000\000\000\000\000\000\014z\000\000\000\000\000\000\000\000\000\000\000#\021\146\000\000\000\000\028\254\000\000\000\000\000\000\000\000\000>\000\000\000\000\t\162\000\000\000\000\000\000\003 \000\000\000\000\000\133\000\000\000\000\000\000\000\000\000\000\000\000\000\0004\022\000\000\000\000\000\000\000\199\000\000\000\000\000\000\000\000\000\000\000\b\t\194\n\224\r\026\000\000\007\222\b\210\t\254\n@\000\000\000\000\000\000\000\000\000\000\000\000\t\226\021\030\000\000\029\160\nn\000\000\000\000\011\200\000\000\021\170\000\000+\186\000\000\000\000\011\006\022\194\000\000\030\166\000\000\012\244\031h\000\000\000\000\000\000\bV\007\222\000\000\000\000\000\000\000\000\003\164\000\000\000\000\000\020\006\194\000\000\000\000\011\006\014\188\000\000\016\148\000\000\000\000\002 \000\000\003\\\000\000\000\000\017\006\000\000\000\000\000\000\000\000\000\000\000\000\000\000\b\244\000\000\000\000\011\242\000\000\023\162\000\000\016L\014\248\000\000\000\000\000\000\000\000\000\000\001\216\000\000\000\000\000\000\000\000\000\0004\\\000\000\002\160\000\000\000\000\000\000\000\000\000\000\001\n\000\000\t\202\n\146\n\192\000\000\0024\n\236\000\000\011\202\000\000\002\174\000\000\003J\000\000\004L\000\000\016L\000\000\000\000\000\000\000\000\000\000\004\232\000\000\012\006\000\000\005b\000\000\016L\015d\000\000\000R\000\000\015Z\007\128\000\000\0058\000\000\t\248\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\n\\\000\000\n\140\000\000\000\000\000\000\014\"\000\000\000\000\000\000\000\000\000\000\015^\014*\000\000\000\000\014^\000\000\000\000\0144\b\150\015\150\000\000\015\152\000\000\000\000\001\142\004\216\000\000\014f\000\000\000\000\014\158\000\000\000\000\000\000\000\000\000\000\000\000\015\128\014J\000\000\000\000\000\000\014\128\014R\011l\n\248\014~\014\182\000\000\000\000\014Z\011v\011F\014\132\014\188\000\000\000\000\011\214\015\154\000\000\015\158\000\000\015\194\000\000\000\000\015\166\000\000\000\000\015\174\000\000\000\000\000\000\000\000\015\178\000\000\015\216\000\000\000\000\000\000\015\218\000\000\000\000\000\000\015\224\000\000\000\000\000\000"), (16, "\004)\002P\004<\006C\001\173\002\199\006\231\006w\006x\000\018\006v\006\028\006\029\001(\000\142\000\007\002\209\002\209\000\142\003I\004)\005\236\004<\003I\005\006\004\238\006A\006\028\006\029\007:\006\182\000\017\006\196\007\016\000V\007;\007\017\006y\000\142\000\005\000V\005'\000\025\007<\000\142\004\191\001\185\006z\001*\004l\004m\000\142\006\183\006\169\007\021\006\197\003\244\006\200\006\028\006\029\004\192\006-\004+\006\231\000\024\006\012\004,\007\006\007\007\000\142\000\145\000\146\002]\000\150\002\209\000\r\006\170\006\173\006\028\006\029\004\192\006\169\004+\006\030\006+\002U\004,\007\011\006\r\006\196\006.\006\028\006\029\006\016\006\028\006\029\000\016\000\017\006\241\006\030\000\189\002M\000\195\007\211\006\170\006\173\006\028\006\029\001\030\007\014\002Q\000\152\006\197\007K\006\200\006\028\006\029\007\212\006\194\001\141\007X\000_\0051\0055\0061\004A\001\166\001#\004\169\000\198\006\030\006\244\006\199\006\190\000\204\007>\000V\000V\000V\002f\001\144\000\028\007\014\000\142\000\145\000\146\000\147\000\150\004\169\004)\006\030\004<\006\024\003\251\002h\006\197\007?\006\200\006\028\006\029\000_\004\171\0027\006\030\007y\000\192\006\030\000\142\006\025\000\193\006\184\0049\007<\007z\004\191\004\176\004\193\001(\006\030\000\207\004\193\004\171\004:\0057\005\020\000\152\000 \006\030\006\234\000_\000\142\0049\001\190\005\170\000\192\004\176\005\002\006\191\000\200\000\207\004\193\007@\004:\000\206\000W\001\184\003\224\006\192\006\193\004\192\007A\004+\001)\006\195\005\b\004,\007_\005\182\0062\004\179\007\141\004\239\004\201\005\014\000_\004\206\004\201\001\192\007Y\005%\006\030\0028\000\206\004\230\000\142\002\220\002\220\004\230\004E\004\179\000t\004\196\007a\006\187\000\004\006\247\004\201\000\142\002[\007c\007\220\007Z\004)\007N\004*\007O\004F\004\230\004E\001}\001\145\004G\001\146\001.\000\031\004H\006\213\000V\000\005\004\219\001.\004I\004)\006\206\004<\000b\004F\004\169\006\031\000\207\001\128\004G\000\208\007\142\001\190\004H\002R\002\202\001\172\000\152\000\142\004I\000_\002\220\006\250\003I\005\006\004\238\004)\001#\004<\000\"\006\237\000d\0068\006\207\005\142\006\208\000\207\002\204\004\171\000\208\000_\000\209\004+\000$\000\142\000V\004,\001\191\0049\007<\007\127\004\238\004\176\007k\007l\006\015\000\207\004\193\007\143\004:\004\192\001}\004+\000W\006\209\0065\004,\007A\006\196\002\205\000\209\001h\002:\007\145\006\210\000\198\000_\002\187\006\r\0069\000\204\007\197\001\128\006\016\006\028\006\029\004\192\004)\004+\004<\001\172\006\197\004,\006\200\006\028\006\029\004\179\000\210\004\196\007\147\000V\005\164\007\138\004\201\005\016\000\142\007\149\000(\004\188\003K\007<\007\127\004\238\001\217\004\230\004E\000\211\007p\000\142\000\145\004\189\001\023\001~\002Q\005\021\004A\000*\001#\004\169\001+\000V\000\213\000V\004F\000e\000_\000p\001.\004G\000`\000\192\0028\004H\003\206\000\200\000h\000V\004\192\004I\004+\0061\0049\007s\004,\004\169\007t\006\030\007\204\000a\000\207\000\152\004\171\004:\007\132\000V\004)\006\030\004<\000W\004\153\005\026\0049\007\014\002\188\000.\004\176\006i\002i\000\206\000\207\004\193\001.\004:\000\142\005\023\000\b\001\128\004\171\007<\007\127\004\238\000V\002h\002\189\001\172\001\160\005\002\0049\000\153\006j\004\144\004\176\006m\006\028\006\029\000\207\004\193\007\133\004:\000\142\000\145\000\146\001z\000\150\000W\004\169\007A\007x\000\142\004\179\003\154\004\239\004\177\005\014\0000\004\192\004\201\004+\002\191\005%\000\198\004,\000\153\005\169\000_\000\199\004j\004\230\004E\000e\000q\007\134\000\142\000V\0062\004\179\005\b\004\239\004\171\007\135\000h\000\152\004\201\000\142\000\207\007\137\004F\000\208\0049\000\153\000\142\004G\004\176\004\230\004E\004H\000\207\004\193\007\133\004:\000V\004I\007\014\007\001\007\002\006\030\004\154\007A\006\196\000p\003\153\006\211\004F\004\177\004\145\000l\001\162\004G\000\209\006\231\000_\004H\004\155\004\169\004)\000\192\004<\004I\003L\000\200\002\209\006\197\003J\006\200\006\028\006\029\004\179\001\144\004\239\005\178\007\135\000W\000\142\004\201\005\165\000\210\007\137\007<\007\127\004\238\000o\001\141\003\208\006\183\004\230\004E\004\171\000\142\001\161\001\128\001\188\005\028\003\207\000\206\000\211\005\167\0049\001\172\007C\000\212\004\176\006l\001\144\004F\000\207\004\193\007\133\004:\004G\000\213\002\189\000V\004H\001\155\004\192\007A\004+\000V\004I\002S\004,\004\177\000_\006\176\006j\001\178\006\239\006m\006\028\006\029\007\136\000\142\004)\000\142\004<\000_\006\030\000\142\003I\0003\005\026\000V\000e\000v\004\179\002\190\004\239\0007\007\135\006{\000\142\004\201\000\004\000h\007\137\007<\007\127\004\238\002\214\001}\007\196\007D\004\230\004E\006S\006\028\006\029\0006\005\011\000\207\0009\005\180\000\208\006$\006\249\003\244\000\005\000V\000\198\004\144\001\128\004F\004\169\000\202\000\005\000\153\004G\001\145\001\172\001\146\004H\001\165\004\192\004)\004+\004<\004I\001.\004,\001\141\006\030\006\189\000\198\000\209\000;\001\141\001\143\000\199\007\144\000\153\000V\000\142\001\151\002a\001\173\004\171\007<\007\127\004\238\003K\001\144\001.\001\145\006\"\001\146\0049\001\144\005\167\000V\004\176\002\202\003\210\001.\000\207\004\193\007\133\004:\006\030\000_\003\236\000V\002\165\007\166\000\192\007A\001\184\006T\000\200\000\142\002&\004\177\006\216\002\206\004\192\003\022\004+\003\237\006#\000\142\004,\004\169\005\190\000_\004\148\004)\004\152\004<\000\192\0064\007\148\000\142\000\200\005\183\004\179\006\027\004\239\005\192\007\135\001\184\002\220\004\201\000\206\000\142\007\137\002\205\001\170\004\151\003I\005\006\004\238\006\025\004\230\004E\004\171\001\190\004\193\004\144\0031\001-\000V\005Q\005\031\000\142\0049\002;\000\206\001.\004\176\003\224\001\131\004F\000\207\004\193\007\133\004:\004G\001\141\000\189\002I\004H\001\152\004\169\007A\001\164\004\192\004I\004+\000V\004\177\001\192\004,\006S\006\028\006\029\000\142\004\195\005\182\001\144\001\141\000?\001\145\004\201\001\146\001\167\004\206\001\151\001\145\004\189\001\146\000V\001.\004\179\004\230\004\239\004\171\007\135\001.\000\207\004\201\001\144\000\208\007\137\0062\006$\0049\006\203\000V\002 \004\176\004\230\004E\004\219\000\207\004\193\007\133\004:\004)\000_\004<\001\173\004\145\000\207\000\192\007A\000\208\001%\000\193\000\142\004F\004\177\007\173\000\209\004\169\004G\000\142\000\153\005\181\004H\001(\003I\005\006\004\238\001\141\004I\006\030\000V\000\189\002C\004\224\001\151\000\142\005\193\004\179\006\159\004\239\000\209\007\135\001\184\000\241\004\201\000\206\004\231\007\137\001\144\000A\004\171\005\192\004\253\004\244\003K\004\230\004E\004\228\004D\003q\0049\004\192\000\211\004+\004\176\004\189\000\242\004,\000\207\004\193\000\243\004:\005\173\005\020\004F\000V\003l\000\213\001\152\004G\003m\007K\001\145\004H\001\146\004\177\000\215\004\255\007W\004I\002\207\000_\001.\004\253\005W\000V\000\192\000\216\003\224\000C\000\193\001\153\005h\000E\001\145\001\173\001\146\004)\004\179\004<\004\239\000V\005\014\005\"\001.\004\201\004l\004m\004\206\006\186\001\186\000\207\000I\005\180\000\208\000\142\004\230\004E\004\254\004\169\003I\005\006\004\238\004)\000\206\004<\003\146\000V\002c\000H\003n\006\183\001\152\003\224\003o\004F\001.\005i\005$\007\174\004G\000\142\004l\004m\004H\000\209\003I\005\006\004\238\007\029\004I\003\225\004\171\003z\006i\001\158\000K\004\192\001\145\004+\001\146\003\197\0049\004,\000V\003K\004\176\006\172\001.\003\145\000\207\004\193\000V\004:\005\018\005\020\006*\006j\005'\000M\006m\006\028\006\029\004\192\005\"\004+\000V\004\177\005c\004,\006\170\006\173\006\028\006\029\003\148\000\153\003\225\004l\004m\006+\000\207\000\189\002-\000\208\000\142\006.\006\028\006\029\000p\007\024\004\179\007N\004\239\007O\005\014\005@\005\200\004\201\006@\005#\004\206\001.\003\150\000V\000\142\004\169\000s\004\189\004\230\004E\000y\005\202\004.\003\230\000\209\000x\002e\003|\003\201\003\186\000W\006A\006\028\006\029\001.\000\207\003J\004F\003}\006\184\004o\004\169\004G\006\030\003\224\001\173\004H\003\234\004\171\005*\000\142\000_\004I\000{\006\030\004)\000\192\004<\0049\003\200\000\193\007\029\004\176\005:\000~\003\189\000\207\004\193\006\030\004:\0059\005\020\003\153\000\142\004\171\004)\004n\004<\003I\005\006\004\238\0047\001\141\004\177\0049\003\213\007\177\005\148\004\176\001\151\006\n\006\011\000\207\004\193\000\206\004:\005\177\005\020\005<\006\138\004\250\000e\001e\001\144\006\030\007!\004\179\003\225\004\239\004\177\005\014\005:\000h\004\201\003\155\004\192\004\206\004+\005\154\000\128\000V\004,\006\139\005\203\004\230\004E\006\142\006\028\006\029\003\156\005\206\004\183\004\179\000\132\004\239\003\146\005\014\004+\005\202\004\201\005\154\004,\004\206\004F\003\230\005\202\005;\007\194\004G\000V\004\230\004E\004H\005\156\002\183\000\142\000p\006\129\004I\000\142\000\145\000\151\004)\000\150\004<\002\185\007\025\005\214\003\234\004F\000\207\004l\004m\000\208\004G\005\155\000\142\006]\004H\006:\000\142\007\024\005\216\004\169\004I\007<\004\143\004\191\000W\002`\000\142\000\145\001\127\000\198\000\150\005\000\000V\001\152\000\199\006\030\004A\000\152\006\253\004\169\000\209\007=\000\142\000\145\000\146\001\175\000\150\007\029\000V\003\236\000V\003l\004\171\004\144\006@\003m\003\216\006D\004\192\001\145\004+\001\146\0049\007 \004,\000V\004\176\000\149\000\152\001.\000\207\004\193\004\171\004:\007]\005\020\007\140\006A\006\028\006\029\007\029\003K\0049\0010\000\152\004\147\004\176\004\177\005\217\000_\000\207\007\166\007)\004:\000\192\000e\001j\002\188\000\200\007\205\004\127\000g\000V\005\216\004\189\001.\000h\005\002\006i\005\220\004\179\000_\004\239\0013\005\014\003n\004\144\004\201\000\153\003o\004\206\004)\007|\004<\005\202\000V\004\169\000V\004\230\004E\004\179\006j\000\206\000W\006m\006\028\006\029\004\145\0017\000\142\006\255\007\166\005\228\004)\007<\004<\004\191\004F\006\144\004E\006\030\007%\004G\004l\004m\000\142\004H\005\230\0016\004\171\007\024\000\142\004I\006i\004\150\007\166\007<\004F\004\191\0049\000\153\003K\004G\004\176\000\142\007\139\004H\000\207\004\193\007~\004:\004\192\004I\004+\007#\001}\006j\004,\007A\006m\006\028\006\029\000V\000\153\007\129\004\144\0019\005\231\000V\007}\004\145\001;\006^\004\192\000e\004+\001\128\006\030\000\207\004,\001.\000\208\005\230\007\031\001\172\000h\001}\004\179\004\210\004\196\007\131\007\128\003|\007\026\004\201\000\142\006a\007\137\006\141\005\234\000\207\001.\001}\003}\000k\004\230\004E\001\128\000V\007\167\001?\001A\000\209\007S\005\202\001\172\007\030\006`\001C\004\169\004)\006\139\004<\001\128\004F\006\142\006\028\006\029\001E\004G\000\153\001\172\006\030\004H\001H\007,\000W\006G\000\142\004I\003\238\004\169\004)\003I\004<\004\191\000\198\004\189\007|\004\145\001L\000\199\004\171\001K\000\189\002*\007`\007\216\000\215\007\169\000\142\001N\0049\005R\003\242\005P\004\176\0073\004\189\000\218\000\207\004\193\007~\004:\004\171\007\252\000\153\000V\007|\003\127\004\192\007A\004+\007\171\0049\001P\004,\007\129\004\176\005\161\007\253\006\147\000\207\004\193\007~\004:\007\223\007\"\006\030\001T\001V\007\130\005r\007A\004+\000V\000_\000e\004,\007\129\004\179\000\192\004\196\007\131\000_\000\200\007\215\004\201\000h\000\192\007\137\007\222\005\185\000\193\000V\001X\0054\005x\004\230\004E\003\245\007\146\004\179\007\204\004\196\007\131\007\026\006w\006x\004\201\003K\004)\007\137\004<\001.\000\153\006\222\004F\004\169\000\206\004\230\004E\004G\007N\003\249\007O\004H\000\206\007V\000\142\000n\000V\004I\001.\003I\001Z\004\191\006\143\001^\004F\004l\004m\007\204\000\153\004G\000\198\005Z\006z\004H\001]\000\199\004\171\001`\001b\004I\000\142\000\145\000\146\001\180\000\150\001g\0049\000W\000V\004)\004\176\004<\001m\001l\000\207\004\193\004\192\004:\004+\004\184\001o\006^\004,\001q\000V\000\142\001s\000\142\0049\001.\007\024\005)\003I\004\186\004\191\001w\000\207\005y\001\189\004:\000\207\001|\000\152\000\208\000\153\001\177\001\183\007\205\000\207\001\182\000_\000\208\007\205\005z\004\179\000\192\004\196\005+\0052\000\200\005j\004\201\0054\002Z\004\206\002Y\003l\002_\002m\004\192\003m\004+\004\230\004E\000\209\004,\000\153\002p\000e\004)\002t\004<\000\209\005|\004\169\002s\005\129\002v\005s\000h\004\198\004F\000\153\000\206\005\147\004E\004G\000\142\002x\002|\004H\002~\003I\004\199\004\238\002\128\004I\000\142\000\145\000\146\002W\000\150\002\130\004F\002\133\002\137\002\136\004\171\004G\002\139\001 \002\141\004H\002\145\002\147\002\149\000_\0049\004I\0078\003n\004\176\002\151\002\155\003o\000\207\004\193\004\169\004:\004\192\004)\004+\004<\002\154\004\232\004,\002\157\002\159\002\164\000\152\002\170\004\241\005)\000\142\000\145\000\146\002\194\000\150\000\142\002\169\000\189\002)\002\172\003I\004\199\004\238\002\174\002\176\004\236\000\207\004\171\002\180\000\208\002\197\002\196\004\179\005\133\004\196\005+\002\213\0049\002\219\004\201\002\218\004\176\004\206\003,\002\222\000\207\004\193\001}\004:\005\149\004\230\004E\000\152\002\225\007\025\000\142\006@\004\192\002\229\004+\000\209\002\228\004\243\004,\004\169\002\231\002\233\002\237\001\128\004F\002\239\002\241\002\243\006\196\004G\002\246\001\172\000_\004H\006A\006\028\006\029\000\192\002\250\004I\004\179\000\193\004\196\004\245\002\249\002\252\000\142\004\201\007\026\003|\004\247\006\197\004\171\006\200\006\028\006\029\001.\000\207\004\230\004E\003}\000\215\0049\002\254\003\002\003\004\004\176\003\006\003\b\003\012\000\207\004\193\000\220\004:\003\011\000\206\003\014\004F\001\141\004)\004\169\004<\004G\003\016\000\198\001\151\004H\004\177\003\021\000\199\004\246\003\027\004I\003\026\003\029\003\031\003!\000\142\003%\001\144\003+\000\198\003I\004\199\004\238\003*\000\204\006\030\0030\001}\004\179\0036\004\239\004\171\004\240\007K\0035\004\201\006\021\006>\004\206\006)\007R\0049\0067\006c\006\030\004\176\004\230\004E\001\128\000\207\004\193\006\137\004:\006\154\003~\006\156\001\172\004\192\004)\004+\004<\006\166\000_\004,\006\168\004F\004\177\000\192\006\178\000\207\004G\000\200\000\208\001}\004H\006\205\000\142\007i\007\151\000_\004I\003I\005\006\004\238\000\192\007\155\007\175\007\181\000\200\004\179\007\182\004\239\007\187\004\240\001\128\007\188\004\201\007\193\007\192\004\206\007\200\007\202\001\172\000\209\007\208\000\206\007\209\004\230\004E\007\213\007\214\001\152\007\217\007\218\007\221\007\224\007\225\007\242\004\192\007\231\004+\007\240\000\206\007\236\004,\004\169\004F\007\239\004)\007\248\004<\004G\007\246\007\250\003\227\004H\007\255\001\145\000\000\001\146\000\000\004I\006M\000\000\000\000\000\000\000\142\001.\000\000\000\000\000\000\003I\005\006\004\238\000\000\000\000\000\000\000\000\004\171\006\235\000\000\000\000\000\000\000\000\001\212\000\000\000\000\001\213\0049\007\029\000\000\000\000\004\176\007N\000\000\007O\000\207\004\193\000\000\004:\000\000\000\207\000\000\001.\000\208\003K\004\169\000\000\004\192\004)\004+\004<\000V\004\177\004,\000\000\000\000\000\000\000\207\000\000\000\142\000\208\000\000\000\000\000\000\000V\000V\000\142\000\000\000\000\000\000\000\000\003I\005\006\004\238\000\209\004\179\000\000\004\239\004\171\004\240\000\000\000\000\004\201\000_\000\198\004\206\001\214\000p\0049\000\199\001\215\000\209\004\176\004\230\004E\000\000\000\207\004\193\000\000\004:\000p\005\r\000\000\000\142\000\145\000\146\002\211\000\150\004\192\000\000\004+\000\000\004F\004\177\004,\004\169\000\142\004G\000\210\000W\000\215\004H\000\000\000\000\000\000\000\000\001\230\004I\007K\000\000\000\000\000\222\000W\003\224\000\000\007M\004\179\000\211\004\239\000\000\005\014\000\000\001\022\004\201\000_\000\152\004\206\000\000\004\171\000\192\000\000\000\000\000\213\000\200\004\230\004E\000\000\000\000\0049\000\000\000\000\000V\004\176\000\000\000\000\000\000\000\207\004\193\000\000\004:\000\000\005\015\000\000\004F\000\000\004)\004\169\004<\004G\000\000\000\189\002(\004H\004\177\000\000\007K\000\000\000\206\004I\000\000\000e\002\162\007U\000\142\007!\000\000\004\219\000p\003I\005,\004\238\000h\000\207\000e\002\167\001\231\004\179\000\000\004\239\004\171\005\014\000\000\000\000\004\201\000h\000\000\004\206\000\000\000\000\0049\000\000\000\000\000\000\004\176\004\230\004E\000\000\000\207\004\193\000W\004:\000\000\005!\004\224\000\000\004\192\004)\004+\004<\000\000\000_\004,\000\000\004F\004\177\000\192\000\000\000\000\004G\000\193\000\000\000\000\004H\000\000\000\142\000\000\000\000\004\228\004I\003I\005,\004\238\000\000\000\207\000\000\000\000\000\208\004\179\007N\004\239\007O\005\014\000\000\000\000\004\201\000\000\000\000\004\206\001.\005.\002#\000\000\000\000\000\206\000\000\004\230\004E\000\000\000\000\001\212\000\000\000\000\001\213\001}\000\000\000\000\004\192\000\209\004+\000\000\000e\003\019\004,\004\169\004F\000\000\004)\000\000\004<\004G\000\000\000h\000\000\004H\001\128\000\000\000\000\005B\000\000\004I\000\000\000\198\001\172\000\000\000\142\007N\000\202\007O\000\142\003I\004\199\004\238\000\000\003I\000\000\001.\004\171\000\000\000\000\000\142\0050\000\000\000\000\002?\000\000\000\000\0049\000\000\000\000\000_\004\176\000\000\001\214\000\000\000\207\004\193\001\215\004:\000\000\000\207\000\000\000\000\000\208\000\000\004\169\000\000\004\192\000\000\004+\000\000\003\244\004\177\004,\000\000\000\000\000\142\000\000\004)\000\000\004<\003I\000_\000\000\000V\000\000\000\000\000\192\000\000\000\000\000\000\000\200\000\000\001\230\000\209\004\179\000\142\004\239\004\171\005/\000\000\003I\004\201\004\191\006@\004\206\000\000\000\000\0049\000\000\000\000\000\000\004\176\004\230\004E\000\000\000\207\004\193\003\244\004:\000p\000\000\000\000\000\000\000\000\000\206\000\000\006A\006\028\006\029\000\000\000\000\004F\004\177\000\000\004\169\000\000\004G\004\192\000\000\004+\004H\000\000\000\000\004,\000\000\000\000\004I\002;\001#\000\000\000\000\000W\000\189\002'\000\000\004\179\000\000\004\239\000\000\005/\000\000\000\000\004\201\000\000\004)\004\206\004<\004\171\000\207\000\000\000\000\001\231\000\000\004\230\004E\000\000\000\000\0049\000\000\005\171\000\000\004\176\000\142\0054\000\000\000\207\004\193\003I\004:\004\191\004\193\006@\004F\000\000\000\000\000\000\000\000\004G\000\000\006\030\000\207\004H\004\177\000\208\000\000\004\169\000\000\004I\000\000\000\000\000\000\000\000\000_\000\000\006A\006\028\006\029\000\192\000\000\000\000\000\000\000\193\000e\003\024\004\192\004\179\004+\004\239\001%\004\240\004,\005\223\004\201\000h\000\209\004\206\004\201\004\193\004\171\004\206\000\000\000\000\000\000\004\230\004E\000\000\002\"\004\230\0049\000\000\001+\004)\004\176\004<\000\000\000\206\000\207\004\193\001.\004:\000\000\000\241\004F\000\189\000\191\000\000\005\187\004G\000\000\000\142\0054\004H\000\000\005)\003I\000\000\004\191\004I\005\225\000\000\000\211\000\000\000\000\004\201\000\242\006@\004\206\006\030\000\243\004)\000\000\004*\004\169\000\000\004\230\000\213\004\179\000\000\004\196\005+\000\000\000\000\000\198\004\201\000\000\000\000\004\206\000\202\006A\006\028\006\029\004\192\000\000\004+\004\230\004E\006K\004,\000\000\000\000\000\142\000\000\004)\000_\004<\004\171\000\000\000\000\000\192\000\000\000\000\000\207\000\193\004F\000\208\0049\000\000\000\000\004G\004\176\000\142\000\000\004H\000\207\004\193\003I\004:\004\191\004I\000_\000\000\004+\000\000\005\189\000\000\004,\000\000\0054\000\000\000\000\005)\000\000\000_\000\000\000\000\000\209\000\206\000\192\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\169\000\000\006\030\004\192\004\179\004+\004\196\005+\000\000\004,\000\000\004\201\003l\004)\004\206\004<\003m\000\000\000\000\000\000\000\000\000\000\004\230\004E\007.\006Z\000\206\000\000\000\000\000\000\000\000\000\142\000\000\004\171\006\196\000\000\003I\004\199\004\238\000\000\000\000\004F\000\000\0049\000\000\007&\004G\004\176\000\198\0054\004H\000\207\004\193\000\199\004:\000\000\004I\006\197\000\000\006\200\006\028\006\029\000\000\000\207\001\212\000\000\000\208\001\224\005)\000\000\000\000\004\169\003\146\004\192\000\000\004+\003n\000\000\000\000\004,\003o\0049\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\207\000\000\004\179\004:\004\196\005+\000\000\000\000\000\209\004\201\000\000\000\000\004\206\000\207\000\000\004\171\000\208\000\000\003\147\000_\004\230\004E\000\000\000\000\000\192\0049\000\000\000\000\000\200\004\176\006X\000\000\000\000\000\207\004\193\000_\004:\000\000\001\214\004F\000\000\002+\001\215\006\030\004G\000\000\000\000\000\209\004H\000\000\005)\003\148\004\169\000\000\004I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\206\002=\004)\000\000\004<\000\000\000\000\000\000\000\000\001.\000\000\004\179\000\241\004\196\005+\004;\001\230\003\150\004\201\000\000\000\142\004\206\000\000\004\171\000\000\003I\000\000\004\191\000\000\004\230\004E\000\211\003|\0049\003\186\000\242\000\000\004\176\000\000\000\243\000\207\000\207\004\193\003}\004:\000\000\000\213\000\000\004F\000\000\000\000\000\000\000\000\004G\000\000\000\189\001\205\004H\004\177\000\000\000\000\000\000\004\192\004I\004+\000\000\000\000\000\000\004,\000\000\003\189\000\000\000\000\000\142\000\000\000\000\000\207\003\153\000\000\000\208\000\000\004\179\000\000\004\239\000\000\004\240\000\000\000\000\004\201\000\000\000\000\004\206\000\207\000\000\000\000\001\231\006\242\000\000\000\000\004\230\004E\000\000\000\000\000\000\0074\000\000\000\000\000\000\0054\000\000\000\209\000\000\000\000\000\000\004)\000_\004<\000\000\004F\003\155\000\192\000\000\000\000\004G\000\193\007b\001\212\004H\0029\001\224\004\169\000\000\000\142\004I\003\156\000\000\000\000\003I\004\199\004\238\000\000\001\141\005=\004)\000\000\004<\000\000\000\000\001\151\000\000\000\000\000\000\001\234\000\000\000\000\000\000\000\215\000\000\000\206\000\000\000\000\000\142\001\144\004\171\000\000\000\000\003I\000\224\004\238\000\000\001\235\000\000\000\000\0049\004\192\001\236\004+\004\176\000\198\001\237\004,\000\207\004\193\000\199\004:\001\238\000_\000\000\000\000\001\214\000\000\000\000\000\000\001\215\000\000\000\000\000\000\000\000\005)\000\000\000\000\000\000\000\000\004\192\000\000\004+\000\000\000\000\000\000\004,\000\000\000\142\000\145\000\146\002\216\000\150\000\000\000\000\000\000\000\000\000\000\004\179\000\000\004\196\005+\000\000\002.\000\000\004\201\001\230\000\000\004\206\000\000\000\000\000\207\000\000\000\000\000\208\000_\004\230\004E\000\000\004\169\000\192\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\152\000\000\000\000\001\152\000\000\004F\000\000\000\000\000\000\000\000\004G\000\000\000\000\000\000\004H\000\209\000\000\000\000\004\169\004)\004I\004<\004\171\000\000\000\000\000\000\004\213\000\000\000\206\001\145\000\000\001\146\0049\004\242\000\000\000\000\004\176\000\142\000\000\001.\000\207\004\193\003I\004:\004\191\000\000\000\000\000\000\004)\000\000\004<\004\171\000\207\000\000\000\000\001\231\000\000\004\177\000\000\000\000\000\000\0049\004\190\000\000\000\000\004\176\000\142\000\000\002D\000\207\004\193\003I\004:\004\191\000\000\000\000\000\000\000\000\000\000\004\192\004\179\004+\004\239\000\000\004\240\004,\005?\004\201\0021\000\198\004\206\000\000\000\000\000\000\000\199\000\000\000\000\000\000\004\230\004E\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\208\004\192\004\179\004+\004\239\001\234\005A\004,\000\000\004\201\004F\000\000\004\206\000\000\000\000\004G\000\000\000\000\000\000\004H\004\230\004E\000\000\001\235\000\000\004I\000\000\000\000\001\236\000\000\000\000\000\209\001\237\000\000\000\000\000\000\000\000\000\000\001\238\004F\004\169\001}\000_\004)\004G\004<\000\000\000\192\004H\000\000\000\000\000\200\000\000\000\000\004I\000\000\000\000\004\200\000\000\000\000\000\000\000\142\001\128\000\000\000\000\000\000\003I\000\000\004\191\004\169\001\172\000\000\000\000\004\171\000\000\000\000\000\142\000\215\000\000\000\000\000\000\003I\000\000\0049\000\000\000\206\000\000\004\176\000\226\000\000\000\000\000\207\004\193\000\000\004:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\171\004\192\000\000\004+\000\000\000\000\004\194\004,\000\000\000\000\0049\000\000\000\000\000\000\004\176\000\000\003\244\006@\000\207\004\193\000\000\004:\000\189\001\208\000\000\000\000\000\000\000\000\004)\004\179\004<\004\196\004\197\000\000\000\000\004\194\004\201\000\000\000\198\004\206\006A\006\028\006\029\000\199\000\000\000\000\000\142\004\230\004E\000\189\001\211\003I\000\000\004\191\000\000\000\000\000\000\000\000\004\179\000\207\004\196\004\197\000\208\000\000\000\000\004\201\004F\000\000\004\206\004\169\000\000\004G\000\000\000\198\000\000\004H\004\230\004E\000\199\000\000\000\000\004I\000_\000\000\000\000\000\000\000\000\000\192\004\192\000\000\004+\000\193\000\000\000\209\004,\004F\000\000\000\000\000_\004)\004G\004<\004\171\000\192\004H\000\000\000\198\000\200\000\000\000_\004I\000\202\0049\006\030\000\192\000\000\004\176\000\142\000\193\000\000\000\207\004\193\003I\004:\004\191\000\206\000\000\000\000\000\000\000\000\004)\000\000\004<\000_\000\000\000\000\004\193\004\194\000\192\000\215\000\000\000\206\000\200\000\000\000\000\000\000\000\000\000\000\000\142\006@\000\228\000\000\000\206\003I\000\000\004\191\004\169\000\000\000\000\004\192\004\179\004+\004\196\004\197\000\000\004,\000_\004\201\000\000\000\000\004\206\000\192\006A\006\028\006\029\000\200\000\206\005\227\004\230\004E\000\000\000\000\004\201\000\000\000\000\004\206\000\000\000\000\002N\004\171\004\192\000\000\004+\004\230\000\000\000\000\004,\004F\006@\0049\000\000\000\207\004G\004\176\000\208\000\000\004H\000\207\004\193\000\206\004:\000\000\004I\000\000\000\000\000\000\005\017\000\207\000\000\000\000\000\208\006A\006\028\006\029\005\n\000\000\000\000\004\169\000\207\000\000\006V\000\208\000\000\000\000\000\000\000\209\000\000\000\000\004)\000\000\004<\000\000\000\000\000\000\000\000\006\030\000\000\004\179\006@\004\196\005\012\000\209\000\207\000\000\004\201\000\208\000\142\004\206\004\169\000\000\004\171\003I\000\209\004\191\000\000\004\230\004E\004)\000\000\004<\0049\006A\006\028\006\029\004\176\000\000\000\000\000\000\000\207\004\193\000\000\004:\000\000\000\000\004F\000\207\000\209\005\t\000\208\004G\000\000\004\171\000\000\004H\006\030\005\n\000\000\000\215\004\192\004I\004+\0049\000\000\000\000\004,\004\176\000\000\000\000\000\230\000\207\004\193\000\000\004:\000\244\000\000\000\000\000\000\005\029\004\179\000\209\004\196\005\012\004)\000\000\004<\004\201\005\030\000_\004\206\004+\000\000\000\000\000\215\004,\000\000\000\000\004\230\004E\000\000\000\000\000\142\000\000\000\000\000\232\006\030\003I\000\241\004\191\000\000\004\179\000\000\004\196\005 \000\000\000\000\004F\004\201\000\000\000\000\004\206\004G\000\000\006e\000\000\004H\000\211\004\169\004\230\004E\000\242\004I\006\196\000\000\000\243\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\000\004\192\000\000\004+\000\000\004F\000\000\004,\000\000\000\000\004G\004A\000\000\006\197\004H\006\200\006\028\006\029\004\171\000\000\004I\000\000\000\000\000\000\000\000\004)\000\000\004<\0049\000\000\006t\000\000\004\176\000\000\000\000\000\000\000\207\004\193\004)\004:\004<\000\000\000\000\000\142\000\000\005\027\000\000\005(\003I\000\000\004\191\007*\000\000\005\n\000\000\000\000\000\142\0049\000\000\000\000\000\000\003I\000\000\004\191\000\000\000\207\000\000\000\000\004:\004\169\000\000\000\000\000\000\000\000\000\000\000\000\004\179\000\000\004\196\005\012\006\127\000\000\004C\004\201\000\000\004\192\004\206\004+\006\030\000\000\000\000\004,\000\000\000\000\004\230\004E\000\000\000\000\004\192\000\000\004+\000\000\004\171\000\000\004,\000\000\000\000\000\000\000\000\000\000\000\000\000\000\0049\004F\000\000\000\000\004\176\000\000\004G\000\000\000\207\004\193\004H\004:\004E\000\000\000\000\000\000\004I\000\000\000\000\005-\000\000\000\000\000\000\000\000\000\000\005)\000\000\000\000\000\000\000\000\004F\000\000\000\000\000\000\000\000\004G\000\000\000\000\000\000\004H\000\000\004\169\000\000\000\000\000\000\004I\000\000\000\000\004\179\000\000\004\196\005+\000\000\006@\004\169\004\201\000\000\004)\004\206\004<\000\000\000\142\000\145\000\146\003(\000\150\004\230\004E\000\000\000\000\0076\000\000\000\000\000\000\004\171\000\142\006A\006\028\006\029\000\000\003I\000\000\004\191\000\000\0049\004F\000\000\004\171\004\176\000\000\004G\006\245\000\207\004\193\004H\004:\000\000\0049\000\000\000\000\004I\004\176\000\000\000\152\000\000\000\207\004\193\000\000\004:\005)\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\192\000\000\004+\000\000\000\000\007+\004,\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\179\000\000\004\196\005+\000\000\000\000\000\000\004\201\000\000\000\000\004\206\000\000\000\000\004\179\000\000\004\196\007-\006\030\004\230\004E\004\201\000\000\004)\004\206\004<\000\000\000\000\000\000\000\000\000\000\000\000\004\230\004E\000\000\000\000\0079\000\000\004F\000\000\000\000\000\142\000\000\004G\006@\000\000\003I\004H\004\191\000\000\000\000\004F\000\000\004I\004\169\000\000\004G\000\000\000\000\000\000\004H\000\000\000\000\000\000\000\000\000\000\004I\006A\006\028\006\029\000\000\000\142\000\000\000\000\000\000\000\000\004)\000\000\004<\000\000\000\000\000\000\000\000\004\192\000\000\004+\000\000\004\171\000\000\004,\000\000\000\000\000\000\000\000\000\142\000\000\004)\0049\004<\005P\000\000\004\176\000\000\000\000\000\000\000\207\004\193\000\000\004:\000\000\000\000\000\000\000\000\000\000\000\142\000\000\000\000\000\000\000\000\005P\001}\000\000\007+\005q\000\000\000\000\000\000\000\000\000\000\001\212\000\189\003T\001\224\000\000\000\000\006\132\005r\000\000\004+\001\141\006\030\001\128\004,\005o\000\000\004\179\001\151\004\196\007-\001\172\000\000\004\169\004\201\000\000\000\000\004\206\005r\000\000\004+\000\000\001\144\005x\004,\004\230\004E\000\000\000\000\001\212\000\000\000\000\001\224\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005x\004F\001\212\004\171\000\142\001\224\004G\000\000\000_\000_\004H\001\214\000\000\0049\000\192\001\215\004I\004\176\000\193\000\000\000\142\000\207\004\193\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\005\157\000\000\007+\000\000\004A\000\000\001#\000\000\000\000\000\000\000_\000\000\002.\001\214\000\000\001\230\000\206\001\215\000\198\000\000\000\000\000\000\006@\000\202\000\000\004\179\000_\004\196\007-\001\214\0049\000\000\004\201\001\215\000\000\004\206\000\000\001\152\000\207\005y\006\150\004:\000\000\004\230\004E\006A\006\028\006\029\002\023\000\000\0049\000\000\000\000\001\230\000\000\005z\000\000\000\000\000\207\005y\004\221\004:\004F\001\145\002\023\001\146\000\000\004G\000\000\001\230\000\000\004H\000\000\001.\000\000\005\159\000\000\004I\000_\000\000\000\000\000\000\000\000\000\192\000\000\005|\000\000\000\200\005\129\000\000\000\000\000\207\000\207\000\000\001\231\000\208\005\147\004E\000\000\000\000\000\238\001\212\000\000\000\000\001\224\005|\000\000\002/\005\160\000\000\000\142\000\145\000\146\003.\000\150\004F\005\147\004E\006\030\000\142\004G\000\206\000\000\000\000\004H\000\000\000\209\0021\000\000\000\207\004I\001\212\001\231\000\000\001\224\004F\000\000\000\000\000\000\000\000\004G\000\198\000\000\000\000\004H\000\207\000\199\000\000\001\231\000\142\004I\001\234\000\152\000\000\000\000\002\024\002$\000\000\000\000\000\000\000\000\000_\000\000\000\000\001\214\001\232\000\000\000\000\001\215\001\235\000\000\002\024\002\025\000\000\001\236\000\000\000\000\000\000\001\237\001\233\000\000\001\232\000\000\000\000\001\238\000\000\000\000\001.\000\000\001\234\001\212\000_\000\000\001\224\001\214\001\233\000\000\000\207\001\215\002\023\000\208\000_\000\000\001.\001\230\001\234\000\192\001\235\000\142\000\000\000\200\000\000\001\236\000\000\000\000\000\000\001\237\000\000\000\000\000\000\000\000\000\000\001\238\001\235\000\000\000\244\002\015\000\000\001\236\002\023\000\000\000\209\001\237\000\000\001\230\006\163\001\212\000\000\001\238\001\224\000\000\000\000\002\015\000\000\000\206\000\000\000\000\000\000\006@\000\000\000_\006@\001\212\001\214\000\142\001\224\000\000\001\215\000\241\000\000\000\142\000\145\000\146\0033\000\150\000\000\000\000\000\000\000\000\000\000\000\142\006A\006\028\006\029\006A\006\028\006\029\000\211\000\000\000\000\000\207\000\242\000\000\001\231\000\000\000\243\000\000\000\000\002\023\000\000\000\000\000\000\000\213\001\230\000\000\000\000\000_\000\000\000\000\001\214\001}\000\000\000\152\001\215\000\000\000\000\002\024\003s\006@\000\000\000\207\000\000\000_\001\231\000\000\001\214\001\232\000\000\000\000\001\215\000\207\001\128\000\000\000\208\000\000\000\000\000\000\000\000\000\000\001\172\001\233\006A\006\028\006\029\002\023\000\000\002\024\0040\001.\001\230\001\234\000\000\000\000\000\000\006\030\000\000\001\232\006\030\000\000\000\000\002\023\000\000\000\000\000\000\000\209\001\230\000\198\000\198\001\235\000\000\001\233\000\202\000\199\001\236\000\000\000\000\000\000\001\237\001.\000\207\001\234\000\000\001\231\001\238\000\142\000\000\000\000\002\015\000\000\000\000\000\000\000\000\000\000\004)\000\000\004<\000\000\000\000\001\235\000\000\000\000\000\000\000\000\001\236\000\000\002\024\004\173\001\237\000\000\000\000\000\215\000\000\000\000\001\238\006\030\001\232\000\000\002\015\004\162\005\184\000\000\000\234\004)\000\000\004<\000\207\000_\000_\001\231\001\233\000\000\000\192\000\192\000\000\000\000\000\200\000\200\001.\004)\001\234\004<\000\207\000\000\000\000\001\231\000\000\000\000\004\162\005\003\000\000\000\000\002\024\004\203\003\146\000\000\004+\000\000\001\235\000\000\004,\001}\001\232\001\236\004\162\004\249\000\000\001\237\002\024\005~\000\206\000\206\006\161\001\238\000\000\006\220\001\233\002\015\001\232\000\000\000\000\000\000\001\128\003\146\001.\004+\001\234\000\000\000\000\004,\001\172\000\000\001\233\001!\001#\000\000\000\000\000\000\000\000\003\146\001.\004+\001\234\000\000\001\235\004,\000\000\000\000\000\000\001\236\000\000\000\000\000\000\001\237\000\000\000\000\000\000\000\189\003e\001\238\001\235\000\000\004\169\002\015\000\000\001\236\000\000\000\000\000\000\001\237\000\000\000\000\006\225\000\000\000\000\001\238\000\000\000\000\000\000\002\015\000\000\000\000\000\000\000\189\003h\000\000\000\207\000\207\000\000\000\208\000\208\004\169\000\000\000\000\000\000\004\171\000\000\000\000\000\000\000\000\000\000\000\000\004)\000\000\004<\0049\000\000\004\169\000\000\004\176\000\000\000\000\000\000\000\207\001%\000\000\004:\000_\000\000\000\000\000\209\000\209\000\192\000\000\004\171\000\000\000\193\004\162\004\163\000\000\004\177\004)\000\000\004<\0049\000\000\001+\000\000\004\176\000\000\004\171\000\000\000\207\000_\001.\004:\000\000\000\241\000\192\000\000\0049\000\000\000\193\004\179\004\176\000\000\004\162\004\175\000\207\004\177\000\206\004:\003\146\004)\004+\004<\000\211\000\215\004,\000\000\000\242\000\000\004E\000\000\000\243\004\177\000\000\000\000\000\236\000\000\000\000\000\213\004\179\000\000\000\000\000\000\000\206\000\000\004\162\005\005\004F\003\146\000\000\004+\000\000\004G\000\000\004,\004\179\004H\000\000\004E\000\000\000\000\000\000\004I\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004E\000\000\004F\000\000\000\000\000\000\003\146\004G\004+\000\142\000\000\004H\004,\004\169\000\000\000\000\000\000\004I\004F\000\207\000\000\000\000\000\208\004G\000\000\000\000\004)\004H\004<\000\000\000\000\000\000\000\000\004I\000\198\000\000\000\000\000\000\000\000\000\204\000\000\000\000\004\169\000\000\000\000\000\207\004\171\000\000\000\208\000\000\000\000\004\162\005\209\000\209\000\000\000\000\0049\000\000\000\000\000\000\004\176\000\000\000\000\000\000\000\207\000\000\000\000\004:\000\000\000\000\000\000\000\000\000\000\000\000\004\169\004\171\000\000\001\141\000\000\000\209\000\000\004\177\000\000\000\000\001\151\0049\003\146\000\000\004+\004\176\000\000\000\000\004,\000\207\000_\000\000\004:\000\000\001\144\000\192\000\000\000\000\000\000\000\200\004\179\000\000\004)\004\171\004<\000\000\004\177\000\000\000\000\000\000\000\000\000\000\000\000\0049\000\000\000\000\000\000\004\176\000\000\004E\000\000\000\207\000\000\000\000\004:\000\000\000\000\004\162\005\211\004\179\004)\000\000\004<\000\206\000\000\000\000\000\000\004F\004\177\000\000\000\000\000\000\004G\000\000\000\000\000\000\004H\000\000\004E\000\000\004\169\000\142\004I\000\000\000\000\004\162\005\213\000\000\000\000\000\000\000\000\004\179\003\146\000\000\004+\000\000\004F\000\000\004,\001\212\000\000\004G\001\224\000\000\000\000\004H\000\000\000\000\000\000\000\000\004E\004I\001\212\004\171\000\000\001\224\000\000\000\142\001\152\000\000\003\146\000\000\004+\0049\000\000\000\000\004,\004\176\004F\001\212\000\142\000\207\001\224\004G\004:\000\000\000\000\004H\000\000\000\207\000\000\005]\000\208\004I\001\145\000\000\001\146\000\142\004\177\001\141\000\000\000\000\000\000\000\000\001.\000\000\001\151\000\000\000\000\000_\004\169\000\000\001\214\000\000\000\000\000\000\001\215\000\000\000\000\000\000\001\144\004\179\000_\000\209\000\000\001\214\000\000\000\000\000\000\001\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004\169\000_\004E\000\000\001\214\004\171\000\000\000\000\001\215\002\022\001\212\000\000\000\210\001\224\001\230\0049\000\000\000\000\000\000\004\176\004F\000\000\000\000\000\207\000\000\004G\004:\001\230\000\142\004H\000\000\000\211\000\000\004\171\000\000\004I\001\025\000\000\000\000\001\229\004\177\000\000\000\000\0049\001\230\000\000\000\213\004\176\000\000\000\000\000\000\000\207\000\000\000\000\004:\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\198\004\179\000\000\000\000\000\000\000\202\004\177\001\212\000_\000\000\001\224\001\214\000\000\000\000\001\152\001\215\000\000\000\000\000\142\000\000\004E\000\000\000\000\000\000\000\000\000\142\000\000\000\000\000\207\004\179\000\000\001\231\000\000\000\000\000\000\000\000\000\000\005\136\004F\000\000\001\145\000\207\001\146\004G\001\231\000\000\002\017\004H\004E\000\000\001.\001\230\000\000\004I\000\000\000\000\000\000\000\000\000\207\000\000\000_\001\231\000\000\000\000\001\232\000\192\004F\000_\000\000\000\200\001\214\004G\000\000\000\000\001\215\004H\000\000\001\232\001\233\000\000\000\000\004I\000\000\000\000\000\000\000\000\001.\000\000\001\234\000\000\000\000\001\233\000\000\000\000\001\232\000\000\000\000\000\000\002\018\001.\000\000\001\234\000\000\000\206\000\000\002\021\001\235\004)\001\233\004<\001\230\001\236\000\000\000\000\000\000\001\237\001.\000\000\001\234\001\235\000\000\001\238\000\000\000\000\001\236\002\015\000\000\000\207\001\237\000\000\001\231\000\000\004\252\000\000\001\238\000\000\001\235\000\000\002\019\000\189\003k\001\236\000\000\000\000\000\000\001\237\000\000\000\000\000\000\000\000\000\000\001\238\000\198\000\000\000\000\002\015\000\000\000\202\000\000\000\000\000\000\000\000\000\000\001\232\000\000\000\000\000\000\003\146\000\000\004+\000\142\000\000\000\000\004,\000\000\000\000\000\000\001\233\000\000\000\207\000\000\000\000\000\208\000\000\000\000\001.\000\207\001\234\000\198\001\231\000\000\000\000\000\000\000\202\000\000\000\000\000\000\000\000\000\000\000_\000\000\000\189\004\003\000\000\000\192\001\235\000\142\001\194\000\193\000\000\001\236\000\000\000_\000\209\001\237\000\000\000\000\000\192\000\000\000\000\001\238\000\200\001\232\000\000\002\015\000\198\000\000\000\198\000\000\001\196\000\199\000\000\000\202\000\000\000\000\004\169\001\233\001.\000\000\000\000\000\241\000\000\000\206\000\000\001.\000\142\001\234\000\000\000_\000\000\000\000\000\000\000\000\000\192\000\000\000\206\000\000\000\200\000\000\000\211\000\000\000_\000\000\000\242\001\235\000\000\000\192\000\243\004\171\001\236\000\193\000\000\000\000\001\237\000\213\000\000\000\000\000\000\0049\001\238\000\000\000\000\004\176\002\015\000\000\000_\000\207\000_\000\000\004:\000\192\000\206\000\192\000\198\000\200\000\198\000\200\000\000\000\202\000\000\000\202\000\000\000\000\004\177\000\206\000\000\000\000\000\000\000\000\000\000\000\000\000\142\000\000\000\142\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\208\000\000\000\000\000\000\000\000\004\179\000\000\000\206\000\000\000\206\000\207\000\000\000\000\000\208\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004E\000\000\000\000\000\000\000\000\000\000\000\000\000\209\000_\000\000\000_\000\000\000\000\000\192\002+\000\192\000\000\000\200\004F\000\200\000\209\000\000\000\207\004G\000\000\000\208\003l\004H\000\000\000\000\003m\000\000\000\000\004I\000\000\000\207\002A\000\000\000\208\000\000\000\000\000\000\000\000\000\000\001.\000\000\000\000\000\241\003l\000\198\002+\000\206\003m\000\206\000\202\000\000\000\209\000\000\000\000\000\207\000\000\000\207\000\208\000\000\000\208\000\000\000\211\000\142\000\000\000\209\000\242\000\000\002G\000\000\000\243\000\000\000\000\000\000\000\000\000\000\001.\000\213\000\000\000\241\000\000\000\000\003\146\000\000\000\000\002+\003n\000\000\000\000\000\209\003o\000\209\000\000\000\000\000\000\000\000\000\198\000\000\000\211\000\000\000\000\000\199\000\242\000\000\003\146\000_\000\243\002K\003n\000\000\000\192\000\198\003o\000\213\000\200\001.\000\202\003\197\000\241\000\000\000\000\000\000\000\000\000\207\000\000\000\207\000\208\000\000\000\208\000\142\000\000\000\000\000\000\000\000\000\000\000\215\000\000\000\211\000\000\003\197\000\000\000\242\000\000\000\000\000\000\000\243\000\246\000\000\000\206\000\000\003\148\002+\000\213\003Y\000\000\000\000\000_\000\209\000\000\000\209\000\000\000\192\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000_\003\148\003R\000\198\003[\000\192\000\000\003\150\000\202\000\200\001.\000\000\001.\000\241\000\000\000\241\000\000\000\000\000\000\000\000\000\000\000\000\003|\003\198\003\186\000\000\000\000\000\000\000\206\003\150\000\207\000\000\000\211\003}\000\211\000\000\000\242\000\000\000\242\000\000\000\243\000\000\000\243\000\206\003|\0070\003\186\000\213\000\000\000\213\000\000\000\000\000\207\000\207\003\200\003}\000\208\000\000\000\000\000\000\003\189\000\000\000\000\000_\000\000\000\198\000\000\003\153\000\192\000\000\000\202\000\000\000\200\000\000\000\000\000\198\003\200\000\000\000\000\000\000\000\202\002+\003\189\000\000\000\000\001\242\000\000\000\209\000\000\003\153\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\198\000\000\000\000\000\000\000\000\000\202\004\001\000\207\000\000\000\206\000\208\000\000\003\155\000\000\001.\000\000\000\000\000\241\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\208\000\000\003\156\000_\000\000\000\000\000\000\000\000\000\192\003\155\000\000\000\211\000\200\000_\000\000\000\242\000\209\000\000\000\192\000\243\000\000\000\000\000\200\000\000\003\156\004\022\000\213\000\000\000\000\000\000\000\000\000\209\000\000\000\000\000\000\000_\000\000\000\000\000\000\000\000\000\192\000\000\000\000\000\000\000\200\000\000\000\206\004\024\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001.\000\206\000\000\000\241\000\000\000\207\000\000\000\215\000\208\000\000\000\000\003l\000\000\000\000\000\000\003m\000\000\000\000\000\248\000\000\000\000\000\000\000\211\000\206\003V\000\000\000\242\000\000\000\000\000\000\000\243\000\000\000\000\000\244\000\000\000\000\000\000\000\213\000\000\000\209\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003l\000\000\000\000\000\000\003m\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\203\000\000\000\000\000\000\000\241\000\207\000\000\000\000\000\208\003\146\000\000\000\000\000\000\003n\000\000\000\207\000\000\003o\000\208\000\000\003l\000\189\004\"\000\211\003m\000\000\000\000\000\242\000\000\000\000\000\000\000\243\003\141\003\143\000\000\000\000\000\000\000\207\000\213\000\209\000\208\000\000\000\198\001%\003\188\000\000\000\000\000\202\003\146\000\209\000\000\000\000\003n\000\000\000\000\000\000\003o\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\143\000\241\000\000\000\000\000\000\000\000\000\209\000\000\000\000\000\198\000\000\000\241\003\148\000\000\000\202\003\146\000_\000\000\003\192\003n\000\211\000\192\000\000\003o\000\242\000\193\000\198\000\000\000\243\000\000\000\211\000\202\000\000\000\241\000\242\000\213\000\000\000_\000\243\000\000\003\150\000\000\000\192\000\000\000\000\000\213\000\200\000\000\000\000\000\000\003\195\003\148\000\211\000\000\000\000\003|\000\242\003\186\000\000\000\206\000\243\000\000\000\000\000\207\000\000\000\000\003}\000\213\000\000\000_\000\000\000\198\000\000\000\000\000\192\000\000\000\202\000\000\000\200\003\150\000\206\000\000\000\000\003\148\000\000\000\000\000_\000\000\000\000\000\000\000\000\000\192\000\000\003\189\003|\000\200\003\186\000\000\000\000\000\000\003\153\000\000\000\207\000\000\000\000\003}\000\000\000\000\000\198\000\000\000\000\003\150\000\206\000\202\000\000\000\000\000\000\000\000\000\000\000\000\000\198\000\000\000\000\000\000\000\000\000\202\003|\000\000\003\186\000\206\000\000\000_\003\189\000\000\000\207\000\207\000\192\003}\000\208\003\153\000\200\000\000\003\155\000\000\000\000\000\000\000\000\000\000\000\000\000\198\000\000\003\220\000\000\000\000\000\202\000\000\000\207\003\156\000\000\000\208\000\000\000\198\000\000\000\000\003\189\000\000\000\202\000\000\000_\000\209\000\000\003\153\000\000\000\192\000\206\000\000\000\000\000\200\000\000\000\000\000_\003\155\000\000\003\232\003\143\000\192\000\000\000\000\000\207\000\200\000\209\000\208\000\000\000\000\000\000\000\000\003\156\000\000\000\198\000\000\003\240\000\000\004M\000\202\000\000\000\207\000\000\000\000\000\208\000_\000\000\000\206\000\000\003\155\000\192\000\000\003\143\000\241\000\200\000\000\000\000\000_\000\209\000\206\000\000\000\000\000\192\000\000\003\156\000\000\000\200\004\131\000\000\003\143\000\000\000\000\000\211\000\000\000\000\000\209\000\242\000\000\000\000\004\133\000\243\003\247\000\000\000\000\000\000\000\241\000\207\000\213\000\206\000\208\000\000\000\000\000\000\000\000\000_\000\000\000\198\000\000\000\000\000\192\000\206\000\202\000\241\000\200\000\211\000\000\000\000\000\000\000\242\000\000\000\000\000\000\000\243\000\000\003\143\000\000\004\135\000\198\004\217\000\213\000\209\000\211\000\202\000\207\000\000\000\242\000\208\000\000\000\000\000\243\000\000\000\000\000\000\000\000\000\000\000\207\000\213\000\206\000\208\000\000\000\189\004%\000\000\000\000\000\000\000\000\000\000\000\241\000\000\000\000\000\000\003\143\000\189\004(\000\000\000\000\000_\000\209\000\000\000\000\000\000\000\192\000\000\000\244\000\207\000\200\000\211\000\208\000\000\000\209\000\242\000\000\000\000\000\000\000\243\000\000\000\207\000_\000\000\000\208\000\000\000\213\000\192\000\000\000\241\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\244\000\000\000\000\000\000\000\241\000\000\000\209\000\206\000_\000\000\000\000\000\211\000\244\000\192\000\000\000\242\000\000\000\193\000\209\000\243\000_\000\207\000\000\000\211\000\208\000\192\000\213\000\242\000\206\000\193\000\000\000\243\000\000\000\241\000\000\000\000\000\000\000\198\000\213\000\000\000\000\000\000\000\202\000\000\000\000\000\241\000\000\000\000\000\000\000\244\000\000\000\206\000\211\000\198\000\198\000\209\000\242\000\000\000\202\000\202\000\243\000\000\000\000\000\206\000\211\000\000\000\198\000\213\000\242\000\000\000\000\000\202\000\243\000\000\000\000\000\000\000\000\000\000\004\226\000\213\000\000\000\000\000\241\000\207\000\000\000\000\000\208\000\000\000\000\000\000\000\198\000\000\000\000\000\000\000\000\000\202\000\000\000_\000\000\004\234\000\000\000\211\000\192\000\000\000\207\000\242\000\200\000\208\000\000\000\243\000\000\003\143\000\000\000_\000_\000\000\000\213\000\209\000\192\000\192\000\000\000\000\000\200\000\200\000\000\000\000\000_\000\207\000\000\000\000\000\208\000\192\003\143\000\000\000\000\000\200\000\000\000\000\000\209\000\207\000\206\000\000\000\208\000\000\000\241\000\000\000\000\000\000\000\000\000\000\000_\000\000\000\000\000\198\000\000\000\192\000\206\000\206\000\202\000\200\000\000\000\209\000\000\000\211\000\000\000\241\000\000\000\242\000\000\000\206\000\000\000\243\000\000\000\209\000\000\000\000\000\000\000\198\000\213\000\000\000\000\000\000\000\202\000\000\000\211\000\000\000\000\000\000\000\242\000\198\000\000\000\000\000\243\000\206\000\202\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\005U\000\000\000_\000\000\000\000\000\207\000\000\000\192\000\208\000\000\000\198\000\200\000\000\000\000\000\000\000\202\005a\005f\000\000\000\000\000\000\000\207\000\207\000\000\000\208\000\208\000_\000\000\000\000\005m\000\000\000\192\000\000\003\143\000\207\000\200\000\000\000\208\000_\000\209\000\000\000\000\000\000\000\192\000\000\000\206\000\000\000\200\000\000\003\143\003\143\000\000\000\000\005v\000\000\000\209\000\209\000\000\000\207\000\000\000\000\000\208\003\143\000\000\000\000\000\000\000\241\000\000\000\209\000\206\000_\000\000\000\198\000\000\000\000\000\192\000\000\000\202\000\000\000\200\000\000\000\206\000\241\000\241\000\000\000\211\003\143\000\000\007\012\000\242\000\000\000\000\000\209\000\243\000\000\000\241\000\000\000\000\000\000\000\000\000\213\000\211\000\211\000\000\000\000\000\242\000\242\000\198\000\000\000\243\000\243\000\000\000\202\000\206\000\211\000\000\000\213\000\213\000\242\000\241\000\000\000\207\000\243\007q\000\208\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000_\000\000\000\000\000\000\000\000\000\192\000\211\000\000\005\140\000\200\000\242\000\000\000\000\000\207\000\243\000\000\000\208\001\026\000\000\000\000\005\145\000\213\000\000\000\209\000\000\000\207\000\000\000\000\000\208\000\000\000\000\000\000\000\000\000\000\000\000\000_\000\000\000\000\000\000\000\000\000\192\003\143\000\000\000\206\000\200\000\000\000\198\000\209\000\000\000\000\000\241\000\202\005\152\003\143\000\000\000\000\000\000\000\207\000\000\000\209\000\208\000\000\000\000\000\000\000\000\000\000\000\198\000\000\000\000\000\211\000\000\000\202\000\000\000\242\000\241\000\000\000\000\000\243\000\206\000\000\000\000\000\000\000\000\000\000\000\213\003\143\000\241\000\000\000\000\000\000\000\198\000\209\000\000\000\211\000\000\000\202\000\000\000\242\000\000\000\000\000\000\000\243\000\000\000\000\000\000\000\211\000_\000\000\000\213\000\242\000\000\000\192\000\000\000\243\000\000\000\200\000\000\000\000\000\241\000\207\000\213\000\000\000\208\000\000\000\000\000\000\000_\000\000\000\000\000\198\000\000\000\192\000\000\000\000\000\202\000\200\000\000\000\211\000\000\000\000\000\000\000\242\000\000\000\000\000\000\000\243\000\000\007\r\000\000\000\206\000_\000\000\000\213\000\209\000\207\000\192\000\000\000\208\000\000\000\200\000\000\000\000\000\000\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\000\000\000\000\000\241\000\000\007\r\000\000\000\000\000\000\000\198\000\000\000\209\000_\000\000\000\202\000\000\000\206\000\192\000\000\000\000\000\000\000\200\000\211\000\000\000\000\000\000\000\242\000\000\000\000\000\000\000\243\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\241\000\198\000\000\000\198\000\000\000\000\000\202\000\000\000\202\000\000\000\207\000\000\000\000\000\208\000\000\000\000\003l\000\206\000\000\000\211\003m\000\000\000\000\000\242\000\000\000\000\000\000\000\243\000\000\000\000\000\207\000_\000\000\000\208\000\213\000\000\000\192\000\000\000\240\000\000\000\200\000\000\000\198\000\198\000\209\000\000\000\000\000\202\000\202\000\000\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\208\001'\000\000\000\000\000_\000\000\000_\000\209\000\000\000\192\000\000\000\192\000\000\000\200\000\241\000\200\000\000\000\206\003l\003\146\000\000\000\000\003m\003n\000\000\001\244\000\000\003o\000\000\000\000\000\000\000\209\000\000\000\211\000\241\000\000\000\207\000\242\000\000\000\208\000\000\000\243\000\000\000\000\000\000\000_\000_\000\206\000\213\000\206\000\192\000\192\000\000\000\211\000\200\000\200\000\000\000\242\000\241\000\000\000\000\000\243\000\000\000\000\002\028\000\000\000\000\000\000\000\213\000\000\000\209\000\000\000\000\000\000\000\000\000\198\000\000\000\211\003\146\000\000\000\202\000\242\003n\000\000\000\000\000\243\003o\003\148\000\206\000\206\000\000\000\000\000\213\000\207\000\000\000\000\000\208\000\241\000\000\000\000\000\000\000\198\000\000\000\000\000\000\000\000\000\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\003\150\000\211\000\000\000\000\000\000\000\242\0025\000\000\000\207\000\243\000\207\000\208\000\209\000\208\000\000\003|\000\213\003\185\000\000\000\000\000_\000\000\000\000\000\207\000\000\000\192\003}\000\000\000\000\000\200\000\000\003\148\000\000\000\000\000\000\000\000\003=\000\000\003C\000\241\000\000\000\000\000\209\000\000\000\209\000\000\000_\000\000\000\000\000\207\000\207\000\192\000\208\000\208\000\000\000\200\000\198\000\000\000\211\003\150\003\153\000\202\000\242\000\206\000\000\000\000\000\243\000\000\000\000\000\241\000\000\000\241\000\000\000\213\003|\000\000\003\193\003v\003\129\000\000\000\000\000\000\000\207\000\209\000\209\003}\000\198\000\000\000\211\000\206\000\211\000\202\000\242\000\000\000\242\000\000\000\243\000\000\000\243\000\000\000\000\000\000\003\155\000\213\000\000\000\213\000\000\000\000\000\000\000\000\000\241\000\241\000\000\000\000\000\000\000\198\000_\003\156\000\000\003\153\000\202\000\192\000\000\000\000\000\000\000\200\000\000\000\198\000\000\000\211\000\211\000\000\000\202\000\242\000\242\000\000\003\196\000\243\000\243\000\207\000\000\000\000\000\208\000\000\000\213\000\213\000_\000\000\000\000\000\000\000\000\000\192\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\206\000\000\003\155\000\000\000\000\000\198\000\207\000\000\003\131\000\208\000\202\000\000\000\000\000\000\000\209\000\000\000_\003\156\000\000\000\000\000\000\000\192\000\000\000\000\000\000\000\200\000\000\000\198\000_\000\000\000\206\000\000\000\202\000\192\004\006\000\000\000\000\000\200\000\000\000\000\000\209\000\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\206\000\211\000\000\000\000\000\000\000\242\000_\000\000\000\241\000\243\000\000\000\192\000\206\000\000\000\000\000\200\000\213\000\207\000\000\000\000\000\208\000\000\000\000\000\000\000\000\000\000\000\000\000\211\000_\000\000\000\000\000\242\000\000\000\192\000\000\000\243\000\000\000\200\000\000\000\000\000\000\000\000\000\213\000\000\000\000\004\011\000\000\000\207\000\000\000\206\000\208\000\209\000\000\000\000\000\198\000\198\000\000\000\000\000\000\000\202\000\202\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\206\000\000\000\000\000\000\004\015\000\207\000\000\000\241\000\208\000\000\000\209\000\000\000\000\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\208\000\000\000\000\000\000\000\000\000\000\000\211\000\000\000\000\000\000\000\242\000\000\000\000\0043\000\243\000\000\000\000\000\241\000\000\000\209\000\000\000\213\000\000\000_\000_\004O\000\000\000\000\000\192\000\192\000\000\000\209\000\200\000\200\000\207\000\000\000\211\000\208\000\198\000\000\000\242\000\000\000\000\000\202\000\243\000\000\000\241\000\000\000\000\000\000\000\198\000\213\000\000\000\000\000\000\000\202\000\207\000\000\000\241\000\208\000\000\000\000\004{\000\000\000\000\000\211\000\206\000\206\000\209\000\242\000\198\000\000\000\000\000\243\000\000\000\202\000\000\000\211\000\000\000\000\000\213\000\242\000\000\000\000\004\166\000\243\000\000\000\000\000\000\000\000\000\209\000\000\000\213\000\000\000\000\000\241\000\000\000\000\000_\000\000\003l\000\000\000\000\000\192\003m\000\000\000\000\000\200\000\000\000\000\000_\000\000\000\000\000\000\000\211\000\192\000\000\000\241\000\242\000\200\000\000\000\198\000\243\000\000\000\000\000\000\000\202\000\000\000\000\000\213\000_\000\000\000\000\000\000\000\000\000\192\000\211\000\000\000\000\000\200\000\242\000\206\000\207\000\207\000\243\000\208\000\208\000\000\000\000\000\000\000\000\000\213\000\000\000\206\000\000\000\000\000\198\000\000\000\000\000\000\003\146\000\202\000\000\000\000\003n\000\000\000\000\000\000\003o\000\000\005H\005\175\000\000\000\206\000\000\000\000\000\209\000\209\000\000\000\000\000\000\000_\000\000\000\000\000\000\000\000\000\192\000\000\000\000\000\000\000\200\000\000\000\000\000\198\000\000\000\198\000\000\000\000\000\202\000\000\000\204\000\000\000\000\000\241\000\241\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000_\000\207\000\000\000\000\000\208\000\192\000\211\000\211\000\206\000\200\000\242\000\242\003\148\000\207\000\243\000\243\000\208\000\000\000\000\000\000\000\000\000\213\000\213\000\000\000\000\000\000\000\198\000\000\000\000\005\195\000\000\000\204\000\000\000\207\000\000\000\209\000\208\000_\000\000\000_\003\150\005\197\000\192\000\206\000\192\000\000\000\200\000\209\000\200\000\000\000\000\000\198\000\000\000\000\000\000\003|\000\204\003\152\000\000\000\000\000\000\005\199\000\241\000\207\000\000\000\000\003}\000\209\000\000\000\000\000\198\000\000\000\000\000\000\000\241\000\199\000\000\000\000\000\000\000\000\000\206\000\211\000\206\000\198\000\207\000\242\000_\000\208\000\204\000\243\000\000\000\192\000\000\000\211\000\241\000\200\000\213\000\242\000\000\000\000\003\153\000\243\000\000\000\000\000\000\000\000\000\000\000\000\000\213\000\000\000\000\000_\005\205\000\211\000\000\000\000\000\192\000\242\000\209\000\207\000\200\000\243\000\208\000\000\000\000\000\000\000\000\000\000\000\213\000\206\000_\000\000\000\000\000\000\000\000\000\192\000\000\000\000\000\000\000\200\000\000\000\000\003\155\000_\000\000\000\241\000\000\005\219\000\192\000\000\000\000\000\000\000\200\000\209\000\206\000\198\000\207\003\156\000\207\000\208\000\199\000\208\000\000\000\000\000\211\000\000\000\000\000\000\000\242\000\000\000\000\000\000\000\243\000\206\000\000\000\000\000\000\000\198\000\000\000\213\000\241\000\000\000\199\000\000\005\233\000\000\000\206\000\000\000\000\000\000\000\209\000\000\000\209\000\000\000\000\000\000\000\000\000\000\000\000\000\211\000\000\000\000\000\000\000\242\000\000\000\207\000\000\000\243\000\208\000\000\000\000\000\000\000\000\000\198\000\213\000_\000\000\000\241\000\199\000\210\000\192\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\198\000\207\000\000\000\000\000\208\000\199\000\000\000\211\000_\000\211\000\209\000\242\000\000\000\192\001\226\000\243\000\000\000\200\000\000\000\000\000\207\000\000\000\213\000\208\000\213\000\000\000\000\000\000\000\000\000\206\000\000\000\000\000\000\000\207\000\000\000\209\000\208\000\210\000\000\000\000\000\000\000\000\000\000\000\000\000_\000\000\000\000\000\198\000\000\000\192\000\000\000\206\000\199\000\200\000\209\000\000\000\211\000\000\000\000\000\000\000_\001\228\000\210\000\000\000\000\000\192\000\000\000\209\000\000\000\200\000\000\000\213\000\000\000\198\000\000\000\000\000\000\000\000\000\199\000\000\000\000\000\211\000\000\000\198\000\000\000\000\004>\000\206\000\199\000\000\000\000\000\000\000\000\000\000\000\210\000\000\000\213\000\000\000\000\000\198\000\215\000\000\000\000\000\206\000\199\000\207\000\000\000_\000\208\000\198\000\000\000\250\000\192\000\211\000\199\000\000\000\200\000\000\004@\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\207\000\213\000\000\000\208\000\000\000\000\000_\000\000\000\000\000\000\000\000\000\192\000\209\000\000\000\198\000\200\000_\000\000\000\000\000\199\000\000\000\192\000\000\000\206\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000_\000\000\000\209\000\000\000\207\000\192\000\198\000\208\000\000\000\200\000_\000\199\000\000\000\000\000\000\000\192\000\000\000\206\000\000\000\200\000\207\000\000\000\000\000\208\000\000\000\000\000\215\000\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\252\000\209\000\000\000\000\000\000\000_\000\206\000\000\000\198\000\000\000\192\000\215\000\000\000\199\000\200\000\000\000\206\000\209\000\000\000\000\000\000\000\000\000\254\000\000\000\000\000\000\000\000\000\000\000\000\000_\000\207\000\000\000\000\000\208\000\192\000\000\000\000\000\198\000\200\000\000\000\000\000\000\000\199\000\000\000\000\000\000\000\000\000\215\000\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\207\000\000\001\000\000\208\000\000\000\000\000\000\000\215\000\209\000\000\000\207\000\000\000_\000\208\000\000\000\000\000\206\000\192\001\002\000\000\000\000\000\200\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\208\000\000\000\000\000\000\000\000\000\209\000\000\000\207\000\000\000\000\000\208\000\000\000_\000\000\000\000\000\209\000\000\000\192\000\000\000\000\000\000\000\200\000\000\000\000\000\198\000\215\000\206\000\000\000\000\000\199\000\198\000\209\000\000\000\000\000\000\000\199\001\004\000\000\000\000\000\207\000\000\000\209\000\208\000\000\000\198\000\000\000\000\000\000\000\000\000\199\000\000\000\215\000\198\000\000\000\000\000\206\000\000\000\199\000\000\000\000\000\198\000\215\001\006\000\207\000\000\000\199\000\208\000\000\000\000\000\000\000\000\000\000\001\b\000\209\000\000\000\000\000\000\000\215\000\000\000\000\000\198\000\000\000\000\000\000\000_\000\199\000\000\000\215\001\n\000\192\000_\000\000\000\000\000\200\000\000\000\192\000\000\000\209\001\012\000\200\000\000\000\000\000\207\000\000\000_\000\208\000\000\000\000\000\000\000\192\000\000\000\000\000_\000\200\000\000\000\000\000\000\000\192\000\000\000\215\000_\000\200\000\000\000\000\000\000\000\192\000\000\000\206\000\000\000\200\001\014\000\207\000\000\000\206\000\208\000\000\000\209\000\000\000\000\000\000\000_\000\000\000\000\000\215\000\000\000\192\000\000\000\206\000\000\000\200\000\000\000\000\000\000\000\000\001\016\000\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\206\000\198\000\209\000\000\000\000\000\000\000\199\000\000\000\000\000\000\000\000\000\000\000\000\000\198\000\000\000\000\000\000\000\000\000\199\000\215\000\206\000\198\000\000\000\000\000\000\000\000\000\199\000\000\000\000\000\000\001\018\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\208\000\000\000\000\000\207\000\000\000\215\000\208\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\001\020\000\207\000_\000\000\000\208\000\000\000\000\000\192\000\000\000\207\000\000\000\200\000\208\000\000\000_\000\209\000\000\000\207\000\000\000\192\000\208\000\209\000_\000\200\000\000\000\000\000\000\000\192\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\209\000\198\000\207\000\000\000\000\000\208\000\199\000\000\000\209\000\198\000\206\000\000\000\000\000\000\000\199\000\000\000\209\000\000\000\000\000\198\000\000\000\000\000\206\000\000\000\199\000\000\000\215\000\000\000\000\000\000\000\206\000\000\000\215\000\000\000\198\000\000\000\209\001\240\000\000\000\199\000\000\000\000\000\198\001\246\000\000\000\000\000\215\000\199\000\198\000\000\000\000\000\000\000\000\000\199\000\215\000\000\000\000\001\248\000\000\000\000\000\000\000_\000\215\000\000\000\000\001\250\000\192\000\000\000\000\000_\000\200\000\000\000\000\001\252\000\192\000\000\000\000\000\000\000\200\000_\000\000\000\000\000\215\000\000\000\192\000\000\000\207\000\198\000\200\000\208\000\000\000\000\000\199\001\254\000_\000\000\000\000\000\000\000\207\000\192\000\000\000\208\000_\000\200\000\206\000\000\000\207\000\192\000_\000\208\000\000\000\200\000\206\000\192\000\000\000\000\000\198\000\200\000\000\000\000\000\209\000\199\000\206\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\209\000\000\000\198\000\000\000\000\000\206\000\000\000\199\000\209\000\000\000\000\000\000\000\000\000\206\000\000\000_\000\000\000\000\000\000\000\206\000\192\000\000\000\000\000\000\000\200\000\000\000\000\000\000\000\198\000\000\000\000\000\000\000\000\000\199\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\198\000\000\000_\002\000\000\215\000\199\000\207\000\192\000\000\000\208\000\000\000\200\000\215\000\000\000\207\002\002\000\206\000\208\000\000\000\000\000_\000\000\000\000\002\004\000\207\000\192\000\000\000\208\000\000\000\200\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\207\000\209\000\000\000\208\000\000\000\000\000\206\000_\000\207\000\209\000\198\000\208\000\192\000\000\000\207\000\199\000\200\000\208\000\000\000\209\000\000\000_\000\000\000\000\000\206\000\000\000\192\000\000\000\000\000\000\000\200\000\000\000\198\000\198\000\209\000\000\000\000\000\199\000\199\000\000\000\000\000\000\000\209\000\000\000\000\000\000\000\198\000\215\000\209\000\000\000\206\000\199\000\000\000\207\000\198\000\215\000\208\000\000\002\006\000\199\000\000\000\000\000\198\000\000\000\206\000\215\002\b\000\199\000\000\000\000\000_\000\000\000\198\000\000\000\000\000\192\002\n\000\199\000\000\000\200\000\215\000\000\000\207\000\000\000\000\000\208\000\000\000\209\000\215\000\000\000\000\002\012\000_\000_\000\215\000\000\000\000\000\192\000\192\002\014\000\207\000\200\000\200\000\208\000\000\003\158\000_\000\198\000\000\000\000\000\000\000\192\000\199\000\206\000_\000\200\000\209\000\000\000\000\000\192\000\000\000\000\000_\000\200\000\000\000\000\000\207\000\192\000\000\000\208\000\000\000\200\000_\000\215\000\209\000\206\000\206\000\192\000\000\000\000\000\207\000\200\000\000\000\208\003\160\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\206\000\000\000\000\000\209\000\198\000\215\000\000\000\000\000\206\000\199\000_\000\000\000\000\000\000\000\000\000\192\003\162\000\209\000\206\000\200\000\000\000\198\000\000\000\215\000\000\000\000\000\199\000\000\000\000\000\000\000\000\000\000\000\207\000\000\003\164\000\208\000\198\000\000\000\000\000\000\000\000\000\199\000\000\000\000\000\000\000\000\000\198\000\000\000\000\000\215\000\000\000\199\000\000\000\206\000\207\000\207\000\000\000\208\000\208\000\000\003\166\000\000\000\198\000\215\000_\000\000\000\209\000\199\000\207\000\192\000\000\000\208\000\000\000\200\003\168\000\000\000\207\000\000\000\000\000\208\000\000\000_\000\000\000\000\000\207\000\000\000\192\000\208\000\209\000\209\000\200\000\000\000\000\000\000\000\207\000\000\000_\000\208\000\000\000\000\000\000\000\192\000\209\000\000\000\000\000\200\000_\000\206\000\000\000\000\000\209\000\192\000\215\000\000\000\000\000\200\000\000\000\000\000\209\000\000\000\000\000\000\000_\003\170\000\206\000\000\000\000\000\192\000\209\000\207\000\000\000\200\000\208\000\198\000\215\000\215\000\000\000\000\000\199\000\206\000\000\000\000\000\000\000\000\000\000\003\172\003\174\000\198\000\215\000\206\000\000\000\000\000\199\000\000\000\000\000\000\000\215\000\000\000\000\003\176\000\000\000\198\000\000\000\209\000\215\000\206\000\199\003\178\000\000\000\000\000\000\000\000\000\000\000\198\000\215\003\180\000\000\000\000\000\199\000\000\000\000\000\000\000\000\000\207\000\000\003\182\000\208\000\198\000\000\000\000\000\000\000\000\000\199\000_\000\000\000\000\000\000\000\000\000\192\000\000\000\207\000\198\000\200\000\208\000\000\000\000\000\199\000_\000\198\000\215\000\000\000\000\000\192\000\199\000\000\000\207\000\200\000\209\000\208\000\000\003\184\000_\000\000\000\000\000\000\000\207\000\192\000\000\000\208\000\000\000\200\000\000\000\000\000_\000\209\000\000\000\206\000\000\000\192\000\000\000\000\000\207\000\200\000\000\000\208\000\000\000\000\000_\000\198\000\209\000\206\000\000\000\192\000\199\000\000\000\000\000\200\000\000\000\000\000\209\000\000\000_\000\198\000\215\000\206\000\000\000\192\000\199\000_\000\000\000\200\000\000\000\000\000\192\004K\000\209\000\206\000\200\000\000\000\000\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\206\004Q\000\000\000\000\000\000\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\206\000\215\004S\000\000\000_\000\000\000\000\000\206\000\207\000\192\000\000\000\208\004U\000\200\000\000\000\000\000\000\000\215\000_\000\000\000\000\000\000\000\207\000\192\000\000\000\208\000\000\000\200\004W\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\208\000\000\000\000\000\209\000\000\000\000\000\000\000\000\000\206\000\207\000\000\000\000\000\208\000\000\000\000\000\000\000\000\000\209\000\000\000\000\000\000\000\000\000\206\000\207\000\000\000\000\000\208\000\000\000\000\000\000\000\000\000\209\000\000\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\208\000\000\000\000\000\209\000\207\000\000\000\000\000\208\000\000\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\209\000\000\000\000\004Y\000\000\000\000\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\209\000\000\000\000\004[\000\000\000\000\000\215\000\209\000\000\000\000\000\000\000\000\000\000\000\207\000\000\000\000\000\208\004]\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\207\000\000\004_\000\208\000\000\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004a\000\000\000\000\000\215\000\209\000\000\000\000\000\000\000\000\000\000\000\215\000\000\000\000\000\000\004c\000\000\000\000\000\000\000\209\000\000\000\000\004e\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004g\000\000\000\000\000\215\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\004i"))
let semantic_action =
[|
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_eexpr = Obj.magic _1 in
+ let _1 : 'tv_dexpr = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_aexpr =
-# 1783 "parser_cocci_menhir.mly"
- ( Ast0.set_arg_exp _1 )
-# 1535 "parser_cocci_menhir.ml"
+# 2162 "parser_cocci_menhir.mly"
+ ( Ast0.set_arg_exp _1 )
+# 1727 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 66 "parser_cocci_menhir.mly"
+# 133 "parser_cocci_menhir.mly"
(Parse_aux.list_info)
-# 1556 "parser_cocci_menhir.ml"
+# 1748 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_aexpr =
-# 1785 "parser_cocci_menhir.mly"
+# 2164 "parser_cocci_menhir.mly"
( let (nm,lenname,pure,clt) = _1 in
let nm = P.clt2mcode nm clt in
let lenname =
match lenname with
- Some nm -> Some(P.clt2mcode nm clt)
- | None -> None in
+ Ast.AnyLen -> Ast0.AnyListLen
+ | Ast.MetaLen nm -> Ast0.MetaListLen(P.clt2mcode nm clt)
+ | Ast.CstLen n -> Ast0.CstListLen n in
Ast0.wrap(Ast0.MetaExprList(nm,lenname,pure)) )
-# 1569 "parser_cocci_menhir.ml"
+# 1762 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_aexpr =
-# 1793 "parser_cocci_menhir.mly"
+# 2173 "parser_cocci_menhir.mly"
( Ast0.set_arg_exp(Ast0.wrap(Ast0.TypeExp(_1))) )
-# 1593 "parser_cocci_menhir.ml"
+# 1786 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_any_strict =
-# 1837 "parser_cocci_menhir.mly"
+# 2209 "parser_cocci_menhir.mly"
( Ast.WhenAny )
-# 1615 "parser_cocci_menhir.ml"
+# 1808 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_any_strict =
-# 1838 "parser_cocci_menhir.mly"
+# 2210 "parser_cocci_menhir.mly"
( Ast.WhenStrict )
-# 1637 "parser_cocci_menhir.ml"
+# 1830 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_any_strict =
-# 1839 "parser_cocci_menhir.mly"
+# 2211 "parser_cocci_menhir.mly"
( Ast.WhenForall )
-# 1659 "parser_cocci_menhir.ml"
+# 1852 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_any_strict =
-# 1840 "parser_cocci_menhir.mly"
+# 2212 "parser_cocci_menhir.mly"
( Ast.WhenExists )
-# 1681 "parser_cocci_menhir.ml"
+# 1874 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1244 "parser_cocci_menhir.mly"
+# 1426 "parser_cocci_menhir.mly"
( _1 )
-# 1705 "parser_cocci_menhir.ml"
+# 1898 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 1737 "parser_cocci_menhir.ml"
+# 1930 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1246 "parser_cocci_menhir.mly"
+# 1428 "parser_cocci_menhir.mly"
( P.arith_op Ast.Mul _1 _2 _3 )
-# 1745 "parser_cocci_menhir.ml"
+# 1938 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 97 "parser_cocci_menhir.mly"
+# 164 "parser_cocci_menhir.mly"
(Ast_cocci.arithOp * Data.clt)
-# 1777 "parser_cocci_menhir.ml"
+# 1970 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1248 "parser_cocci_menhir.mly"
+# 1430 "parser_cocci_menhir.mly"
( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 1785 "parser_cocci_menhir.ml"
+# 1978 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 98 "parser_cocci_menhir.mly"
+# 165 "parser_cocci_menhir.mly"
(Data.clt)
-# 1817 "parser_cocci_menhir.ml"
+# 2010 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1250 "parser_cocci_menhir.mly"
+# 1432 "parser_cocci_menhir.mly"
( P.arith_op Ast.Plus _1 _2 _3 )
-# 1825 "parser_cocci_menhir.ml"
+# 2018 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 98 "parser_cocci_menhir.mly"
+# 165 "parser_cocci_menhir.mly"
(Data.clt)
-# 1857 "parser_cocci_menhir.ml"
+# 2050 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1252 "parser_cocci_menhir.mly"
+# 1434 "parser_cocci_menhir.mly"
( P.arith_op Ast.Minus _1 _2 _3 )
-# 1865 "parser_cocci_menhir.ml"
+# 2058 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 96 "parser_cocci_menhir.mly"
+# 163 "parser_cocci_menhir.mly"
(Ast_cocci.arithOp * Data.clt)
-# 1897 "parser_cocci_menhir.ml"
+# 2090 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1254 "parser_cocci_menhir.mly"
+# 1436 "parser_cocci_menhir.mly"
( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 1905 "parser_cocci_menhir.ml"
+# 2098 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 95 "parser_cocci_menhir.mly"
+# 163 "parser_cocci_menhir.mly"
+ (Ast_cocci.arithOp * Data.clt)
+# 2130 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
+# 1438 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 2138 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 162 "parser_cocci_menhir.mly"
(Ast_cocci.logicalOp * Data.clt)
-# 1937 "parser_cocci_menhir.ml"
+# 2170 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1256 "parser_cocci_menhir.mly"
+# 1440 "parser_cocci_menhir.mly"
( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
-# 1945 "parser_cocci_menhir.ml"
+# 2178 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 94 "parser_cocci_menhir.mly"
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 1977 "parser_cocci_menhir.ml"
+# 2210 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1258 "parser_cocci_menhir.mly"
+# 1442 "parser_cocci_menhir.mly"
( P.logic_op Ast.Eq _1 _2 _3 )
-# 1985 "parser_cocci_menhir.ml"
+# 2218 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 94 "parser_cocci_menhir.mly"
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 2017 "parser_cocci_menhir.ml"
+# 2250 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1260 "parser_cocci_menhir.mly"
+# 1444 "parser_cocci_menhir.mly"
( P.logic_op Ast.NotEq _1 _2 _3 )
-# 2025 "parser_cocci_menhir.ml"
+# 2258 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 93 "parser_cocci_menhir.mly"
+# 160 "parser_cocci_menhir.mly"
(Data.clt)
-# 2057 "parser_cocci_menhir.ml"
+# 2290 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1262 "parser_cocci_menhir.mly"
+# 1446 "parser_cocci_menhir.mly"
( P.arith_op Ast.And _1 _2 _3 )
-# 2065 "parser_cocci_menhir.ml"
+# 2298 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 91 "parser_cocci_menhir.mly"
+# 158 "parser_cocci_menhir.mly"
(Data.clt)
-# 2097 "parser_cocci_menhir.ml"
+# 2330 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1264 "parser_cocci_menhir.mly"
+# 1448 "parser_cocci_menhir.mly"
( P.arith_op Ast.Or _1 _2 _3 )
-# 2105 "parser_cocci_menhir.ml"
+# 2338 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 92 "parser_cocci_menhir.mly"
+# 159 "parser_cocci_menhir.mly"
(Data.clt)
-# 2137 "parser_cocci_menhir.ml"
+# 2370 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1266 "parser_cocci_menhir.mly"
+# 1450 "parser_cocci_menhir.mly"
( P.arith_op Ast.Xor _1 _2 _3 )
-# 2145 "parser_cocci_menhir.ml"
+# 2378 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 90 "parser_cocci_menhir.mly"
+# 157 "parser_cocci_menhir.mly"
(Data.clt)
-# 2177 "parser_cocci_menhir.ml"
+# 2410 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1268 "parser_cocci_menhir.mly"
+# 1452 "parser_cocci_menhir.mly"
( P.logic_op Ast.AndLog _1 _2 _3 )
-# 2185 "parser_cocci_menhir.ml"
+# 2418 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 89 "parser_cocci_menhir.mly"
+# 156 "parser_cocci_menhir.mly"
(Data.clt)
-# 2217 "parser_cocci_menhir.ml"
+# 2450 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_dot_expressions_ =
-# 1270 "parser_cocci_menhir.mly"
+# 1454 "parser_cocci_menhir.mly"
( P.logic_op Ast.OrLog _1 _2 _3 )
-# 2225 "parser_cocci_menhir.ml"
+# 2458 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1244 "parser_cocci_menhir.mly"
+# 1426 "parser_cocci_menhir.mly"
( _1 )
-# 2249 "parser_cocci_menhir.ml"
+# 2482 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 2281 "parser_cocci_menhir.ml"
+# 2514 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1246 "parser_cocci_menhir.mly"
+# 1428 "parser_cocci_menhir.mly"
( P.arith_op Ast.Mul _1 _2 _3 )
-# 2289 "parser_cocci_menhir.ml"
+# 2522 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 97 "parser_cocci_menhir.mly"
+# 164 "parser_cocci_menhir.mly"
(Ast_cocci.arithOp * Data.clt)
-# 2321 "parser_cocci_menhir.ml"
+# 2554 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1248 "parser_cocci_menhir.mly"
+# 1430 "parser_cocci_menhir.mly"
( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 2329 "parser_cocci_menhir.ml"
+# 2562 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 98 "parser_cocci_menhir.mly"
+# 165 "parser_cocci_menhir.mly"
(Data.clt)
-# 2361 "parser_cocci_menhir.ml"
+# 2594 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1250 "parser_cocci_menhir.mly"
+# 1432 "parser_cocci_menhir.mly"
( P.arith_op Ast.Plus _1 _2 _3 )
-# 2369 "parser_cocci_menhir.ml"
+# 2602 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 98 "parser_cocci_menhir.mly"
+# 165 "parser_cocci_menhir.mly"
(Data.clt)
-# 2401 "parser_cocci_menhir.ml"
+# 2634 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1252 "parser_cocci_menhir.mly"
+# 1434 "parser_cocci_menhir.mly"
( P.arith_op Ast.Minus _1 _2 _3 )
-# 2409 "parser_cocci_menhir.ml"
+# 2642 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 96 "parser_cocci_menhir.mly"
+# 163 "parser_cocci_menhir.mly"
(Ast_cocci.arithOp * Data.clt)
-# 2441 "parser_cocci_menhir.ml"
+# 2674 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1254 "parser_cocci_menhir.mly"
+# 1436 "parser_cocci_menhir.mly"
( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 2449 "parser_cocci_menhir.ml"
+# 2682 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 95 "parser_cocci_menhir.mly"
- (Ast_cocci.logicalOp * Data.clt)
-# 2481 "parser_cocci_menhir.ml"
+# 163 "parser_cocci_menhir.mly"
+ (Ast_cocci.arithOp * Data.clt)
+# 2714 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1256 "parser_cocci_menhir.mly"
- ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
-# 2489 "parser_cocci_menhir.ml"
+# 1438 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 2722 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 94 "parser_cocci_menhir.mly"
- (Data.clt)
-# 2521 "parser_cocci_menhir.ml"
+# 162 "parser_cocci_menhir.mly"
+ (Ast_cocci.logicalOp * Data.clt)
+# 2754 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1258 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.Eq _1 _2 _3 )
-# 2529 "parser_cocci_menhir.ml"
+# 1440 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
+# 2762 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 94 "parser_cocci_menhir.mly"
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 2561 "parser_cocci_menhir.ml"
+# 2794 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1260 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.NotEq _1 _2 _3 )
-# 2569 "parser_cocci_menhir.ml"
+# 1442 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.Eq _1 _2 _3 )
+# 2802 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 93 "parser_cocci_menhir.mly"
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 2601 "parser_cocci_menhir.ml"
+# 2834 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1262 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.And _1 _2 _3 )
-# 2609 "parser_cocci_menhir.ml"
+# 1444 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.NotEq _1 _2 _3 )
+# 2842 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 91 "parser_cocci_menhir.mly"
+# 160 "parser_cocci_menhir.mly"
(Data.clt)
-# 2641 "parser_cocci_menhir.ml"
+# 2874 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1264 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Or _1 _2 _3 )
-# 2649 "parser_cocci_menhir.ml"
+# 1446 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.And _1 _2 _3 )
+# 2882 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 92 "parser_cocci_menhir.mly"
+# 158 "parser_cocci_menhir.mly"
(Data.clt)
-# 2681 "parser_cocci_menhir.ml"
+# 2914 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1266 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Xor _1 _2 _3 )
-# 2689 "parser_cocci_menhir.ml"
+# 1448 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Or _1 _2 _3 )
+# 2922 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 90 "parser_cocci_menhir.mly"
+# 159 "parser_cocci_menhir.mly"
(Data.clt)
-# 2721 "parser_cocci_menhir.ml"
+# 2954 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1268 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.AndLog _1 _2 _3 )
-# 2729 "parser_cocci_menhir.ml"
+# 1450 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Xor _1 _2 _3 )
+# 2962 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 89 "parser_cocci_menhir.mly"
+# 157 "parser_cocci_menhir.mly"
(Data.clt)
-# 2761 "parser_cocci_menhir.ml"
+# 2994 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_invalid_ =
-# 1270 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.OrLog _1 _2 _3 )
-# 2769 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1244 "parser_cocci_menhir.mly"
- ( _1 )
-# 2793 "parser_cocci_menhir.ml"
+# 1452 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.AndLog _1 _2 _3 )
+# 3002 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 99 "parser_cocci_menhir.mly"
+# 156 "parser_cocci_menhir.mly"
(Data.clt)
-# 2825 "parser_cocci_menhir.ml"
+# 3034 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1246 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Mul _1 _2 _3 )
-# 2833 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_eexpr_invalid_ =
+# 1454 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.OrLog _1 _2 _3 )
+# 3042 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- } = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
- let _2 : (
-# 97 "parser_cocci_menhir.mly"
- (Ast_cocci.arithOp * Data.clt)
-# 2865 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1248 "parser_cocci_menhir.mly"
- ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 2873 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
- let _2 : (
-# 98 "parser_cocci_menhir.mly"
- (Data.clt)
-# 2905 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
+ let _1 : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
+ let _endpos = _endpos__1_ in
let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1250 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Plus _1 _2 _3 )
-# 2913 "parser_cocci_menhir.ml"
+# 1426 "parser_cocci_menhir.mly"
+ ( _1 )
+# 3066 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 98 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 2945 "parser_cocci_menhir.ml"
+# 3098 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1252 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Minus _1 _2 _3 )
-# 2953 "parser_cocci_menhir.ml"
+# 1428 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Mul _1 _2 _3 )
+# 3106 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 96 "parser_cocci_menhir.mly"
+# 164 "parser_cocci_menhir.mly"
(Ast_cocci.arithOp * Data.clt)
-# 2985 "parser_cocci_menhir.ml"
+# 3138 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1254 "parser_cocci_menhir.mly"
+# 1430 "parser_cocci_menhir.mly"
( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 2993 "parser_cocci_menhir.ml"
+# 3146 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 95 "parser_cocci_menhir.mly"
- (Ast_cocci.logicalOp * Data.clt)
-# 3025 "parser_cocci_menhir.ml"
+# 165 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 3178 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1256 "parser_cocci_menhir.mly"
- ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
-# 3033 "parser_cocci_menhir.ml"
+# 1432 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Plus _1 _2 _3 )
+# 3186 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 94 "parser_cocci_menhir.mly"
+# 165 "parser_cocci_menhir.mly"
(Data.clt)
-# 3065 "parser_cocci_menhir.ml"
+# 3218 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1258 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.Eq _1 _2 _3 )
-# 3073 "parser_cocci_menhir.ml"
+# 1434 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Minus _1 _2 _3 )
+# 3226 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 94 "parser_cocci_menhir.mly"
- (Data.clt)
-# 3105 "parser_cocci_menhir.ml"
+# 163 "parser_cocci_menhir.mly"
+ (Ast_cocci.arithOp * Data.clt)
+# 3258 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1260 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.NotEq _1 _2 _3 )
-# 3113 "parser_cocci_menhir.ml"
+# 1436 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 3266 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 93 "parser_cocci_menhir.mly"
- (Data.clt)
-# 3145 "parser_cocci_menhir.ml"
+# 163 "parser_cocci_menhir.mly"
+ (Ast_cocci.arithOp * Data.clt)
+# 3298 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1262 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.And _1 _2 _3 )
-# 3153 "parser_cocci_menhir.ml"
+# 1438 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 3306 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 91 "parser_cocci_menhir.mly"
- (Data.clt)
-# 3185 "parser_cocci_menhir.ml"
+# 162 "parser_cocci_menhir.mly"
+ (Ast_cocci.logicalOp * Data.clt)
+# 3338 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1264 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Or _1 _2 _3 )
-# 3193 "parser_cocci_menhir.ml"
+# 1440 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
+# 3346 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 92 "parser_cocci_menhir.mly"
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 3225 "parser_cocci_menhir.ml"
+# 3378 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1266 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Xor _1 _2 _3 )
-# 3233 "parser_cocci_menhir.ml"
+# 1442 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.Eq _1 _2 _3 )
+# 3386 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 90 "parser_cocci_menhir.mly"
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 3265 "parser_cocci_menhir.ml"
+# 3418 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1268 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.AndLog _1 _2 _3 )
-# 3273 "parser_cocci_menhir.ml"
+# 1444 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.NotEq _1 _2 _3 )
+# 3426 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 89 "parser_cocci_menhir.mly"
+# 160 "parser_cocci_menhir.mly"
(Data.clt)
-# 3305 "parser_cocci_menhir.ml"
+# 3458 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
-# 1270 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.OrLog _1 _2 _3 )
-# 3313 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : 'tv_cast_expr_expr_invalid_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_arith_expr_expr_invalid_ =
-# 1244 "parser_cocci_menhir.mly"
- ( _1 )
-# 3337 "parser_cocci_menhir.ml"
+# 1446 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.And _1 _2 _3 )
+# 3466 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 99 "parser_cocci_menhir.mly"
+# 158 "parser_cocci_menhir.mly"
(Data.clt)
-# 3369 "parser_cocci_menhir.ml"
+# 3498 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_arith_expr_expr_invalid_ =
-# 1246 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Mul _1 _2 _3 )
-# 3377 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
+# 1448 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Or _1 _2 _3 )
+# 3506 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 97 "parser_cocci_menhir.mly"
- (Ast_cocci.arithOp * Data.clt)
-# 3409 "parser_cocci_menhir.ml"
+# 159 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 3538 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_arith_expr_expr_invalid_ =
-# 1248 "parser_cocci_menhir.mly"
- ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 3417 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
+# 1450 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Xor _1 _2 _3 )
+# 3546 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 98 "parser_cocci_menhir.mly"
+# 157 "parser_cocci_menhir.mly"
(Data.clt)
-# 3449 "parser_cocci_menhir.ml"
+# 3578 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_arith_expr_expr_invalid_ =
-# 1250 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Plus _1 _2 _3 )
-# 3457 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
+# 1452 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.AndLog _1 _2 _3 )
+# 3586 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 98 "parser_cocci_menhir.mly"
+# 156 "parser_cocci_menhir.mly"
(Data.clt)
-# 3489 "parser_cocci_menhir.ml"
+# 3618 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
+ let _v : 'tv_arith_expr_eexpr_nest_expressions_ =
+# 1454 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.OrLog _1 _2 _3 )
+# 3626 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_cast_expr_expr_invalid_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
let _v : 'tv_arith_expr_expr_invalid_ =
-# 1252 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Minus _1 _2 _3 )
-# 3497 "parser_cocci_menhir.ml"
+# 1426 "parser_cocci_menhir.mly"
+ ( _1 )
+# 3650 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 96 "parser_cocci_menhir.mly"
- (Ast_cocci.arithOp * Data.clt)
-# 3529 "parser_cocci_menhir.ml"
+# 166 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 3682 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_expr_invalid_ =
-# 1254 "parser_cocci_menhir.mly"
- ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
-# 3537 "parser_cocci_menhir.ml"
+# 1428 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Mul _1 _2 _3 )
+# 3690 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 95 "parser_cocci_menhir.mly"
- (Ast_cocci.logicalOp * Data.clt)
-# 3569 "parser_cocci_menhir.ml"
+# 164 "parser_cocci_menhir.mly"
+ (Ast_cocci.arithOp * Data.clt)
+# 3722 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_expr_invalid_ =
-# 1256 "parser_cocci_menhir.mly"
- ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
-# 3577 "parser_cocci_menhir.ml"
+# 1430 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 3730 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 94 "parser_cocci_menhir.mly"
+# 165 "parser_cocci_menhir.mly"
(Data.clt)
-# 3609 "parser_cocci_menhir.ml"
+# 3762 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_expr_invalid_ =
-# 1258 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.Eq _1 _2 _3 )
-# 3617 "parser_cocci_menhir.ml"
+# 1432 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Plus _1 _2 _3 )
+# 3770 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 94 "parser_cocci_menhir.mly"
+# 165 "parser_cocci_menhir.mly"
(Data.clt)
-# 3649 "parser_cocci_menhir.ml"
+# 3802 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_expr_invalid_ =
-# 1260 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.NotEq _1 _2 _3 )
-# 3657 "parser_cocci_menhir.ml"
+# 1434 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Minus _1 _2 _3 )
+# 3810 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 93 "parser_cocci_menhir.mly"
- (Data.clt)
-# 3689 "parser_cocci_menhir.ml"
+# 163 "parser_cocci_menhir.mly"
+ (Ast_cocci.arithOp * Data.clt)
+# 3842 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_expr_invalid_ =
-# 1262 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.And _1 _2 _3 )
-# 3697 "parser_cocci_menhir.ml"
+# 1436 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 3850 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 91 "parser_cocci_menhir.mly"
- (Data.clt)
-# 3729 "parser_cocci_menhir.ml"
+# 163 "parser_cocci_menhir.mly"
+ (Ast_cocci.arithOp * Data.clt)
+# 3882 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_expr_invalid_ =
-# 1264 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Or _1 _2 _3 )
-# 3737 "parser_cocci_menhir.ml"
+# 1438 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 3890 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 92 "parser_cocci_menhir.mly"
- (Data.clt)
-# 3769 "parser_cocci_menhir.ml"
+# 162 "parser_cocci_menhir.mly"
+ (Ast_cocci.logicalOp * Data.clt)
+# 3922 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_expr_invalid_ =
-# 1266 "parser_cocci_menhir.mly"
- ( P.arith_op Ast.Xor _1 _2 _3 )
-# 3777 "parser_cocci_menhir.ml"
+# 1440 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
+# 3930 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 90 "parser_cocci_menhir.mly"
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 3809 "parser_cocci_menhir.ml"
+# 3962 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_expr_invalid_ =
-# 1268 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.AndLog _1 _2 _3 )
-# 3817 "parser_cocci_menhir.ml"
+# 1442 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.Eq _1 _2 _3 )
+# 3970 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_arith_expr_expr_invalid_ = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 89 "parser_cocci_menhir.mly"
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 3849 "parser_cocci_menhir.ml"
+# 4002 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_arith_expr_expr_invalid_ =
-# 1270 "parser_cocci_menhir.mly"
- ( P.logic_op Ast.OrLog _1 _2 _3 )
-# 3857 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_arity =
-# 459 "parser_cocci_menhir.mly"
- ( Ast.UNIQUE )
-# 3879 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_arity =
-# 460 "parser_cocci_menhir.mly"
- ( Ast.OPT )
-# 3901 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_arity =
-# 461 "parser_cocci_menhir.mly"
- ( Ast.MULTI )
-# 3923 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_arity =
-# 462 "parser_cocci_menhir.mly"
- ( Ast.NONE )
-# 3940 "parser_cocci_menhir.ml"
+# 1444 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.NotEq _1 _2 _3 )
+# 4010 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = r;
- MenhirLib.EngineTypes.startp = _startpos_r_;
- MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = i;
- MenhirLib.EngineTypes.startp = _startpos_i_;
- MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = l;
- MenhirLib.EngineTypes.startp = _startpos_l_;
- MenhirLib.EngineTypes.endp = _endpos_l_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let r : (
-# 102 "parser_cocci_menhir.mly"
- (Data.clt)
-# 3971 "parser_cocci_menhir.ml"
- ) = Obj.magic r in
- let i : 'tv_option_eexpr_ = Obj.magic i in
- let l : (
-# 102 "parser_cocci_menhir.mly"
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 160 "parser_cocci_menhir.mly"
(Data.clt)
-# 3977 "parser_cocci_menhir.ml"
- ) = Obj.magic l in
- let _startpos = _startpos_l_ in
- let _endpos = _endpos_r_ in
- let _v : 'tv_array_dec =
-# 1051 "parser_cocci_menhir.mly"
- ( (l,i,r) )
-# 3984 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : 'tv_cond_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+# 4042 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
-# 1216 "parser_cocci_menhir.mly"
- ( _1 )
-# 4008 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_arith_expr_expr_invalid_ =
+# 1446 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.And _1 _2 _3 )
+# 4050 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 108 "parser_cocci_menhir.mly"
- (Ast_cocci.assignOp * Data.clt)
-# 4040 "parser_cocci_menhir.ml"
+# 158 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 4082 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
-# 1218 "parser_cocci_menhir.mly"
- ( let (op,clt) = _2 in
- Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
- Ast0.set_arg_exp _3,false)) )
-# 4050 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_expr_invalid_ =
+# 1448 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Or _1 _2 _3 )
+# 4090 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 159 "parser_cocci_menhir.mly"
(Data.clt)
-# 4082 "parser_cocci_menhir.ml"
+# 4122 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
-# 1222 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.Assignment
- (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
-# 4092 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : 'tv_cond_expr_eexpr_nest_expressions_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
-# 1216 "parser_cocci_menhir.mly"
- ( _1 )
-# 4116 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_expr_invalid_ =
+# 1450 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Xor _1 _2 _3 )
+# 4130 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 108 "parser_cocci_menhir.mly"
- (Ast_cocci.assignOp * Data.clt)
-# 4148 "parser_cocci_menhir.ml"
+# 157 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 4162 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
-# 1218 "parser_cocci_menhir.mly"
- ( let (op,clt) = _2 in
- Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
- Ast0.set_arg_exp _3,false)) )
-# 4158 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_expr_invalid_ =
+# 1452 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.AndLog _1 _2 _3 )
+# 4170 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 156 "parser_cocci_menhir.mly"
(Data.clt)
-# 4190 "parser_cocci_menhir.ml"
+# 4202 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
-# 1222 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.Assignment
- (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
-# 4200 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_expr_invalid_ =
+# 1454 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.OrLog _1 _2 _3 )
+# 4210 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_cond_expr_expr_invalid_ = Obj.magic _1 in
+ let _1 : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_assign_expr_expr_invalid_ =
-# 1216 "parser_cocci_menhir.mly"
- ( _1 )
-# 4224 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_bis =
+# 1459 "parser_cocci_menhir.mly"
+ ( _1 )
+# 4234 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 108 "parser_cocci_menhir.mly"
- (Ast_cocci.assignOp * Data.clt)
-# 4256 "parser_cocci_menhir.ml"
+# 166 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 4266 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_assign_expr_expr_invalid_ =
-# 1218 "parser_cocci_menhir.mly"
- ( let (op,clt) = _2 in
- Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
- Ast0.set_arg_exp _3,false)) )
-# 4266 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_bis =
+# 1461 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Mul _1 _2 _3 )
+# 4274 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 4298 "parser_cocci_menhir.ml"
+# 164 "parser_cocci_menhir.mly"
+ (Ast_cocci.arithOp * Data.clt)
+# 4306 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_assign_expr_expr_invalid_ =
-# 1222 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.Assignment
- (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
-# 4308 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_bis =
+# 1463 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 4314 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_cond_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 165 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 4346 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_assign_expr_bis =
-# 1227 "parser_cocci_menhir.mly"
- ( _1 )
-# 4332 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_arith_expr_bis =
+# 1465 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Plus _1 _2 _3 )
+# 4354 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 108 "parser_cocci_menhir.mly"
- (Ast_cocci.assignOp * Data.clt)
-# 4364 "parser_cocci_menhir.ml"
+# 165 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 4386 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_assign_expr_bis =
-# 1229 "parser_cocci_menhir.mly"
- ( let (op,clt) = _2 in
- Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
- Ast0.set_arg_exp _3,false)) )
-# 4374 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_bis =
+# 1467 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Minus _1 _2 _3 )
+# 4394 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 4406 "parser_cocci_menhir.ml"
+# 163 "parser_cocci_menhir.mly"
+ (Ast_cocci.arithOp * Data.clt)
+# 4426 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_assign_expr_bis =
-# 1233 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.Assignment
- (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
-# 4416 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_bis =
+# 1469 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 4434 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_assign_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 163 "parser_cocci_menhir.mly"
+ (Ast_cocci.arithOp * Data.clt)
+# 4466 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_basic_expr_eexpr_dot_expressions_ =
-# 1213 "parser_cocci_menhir.mly"
- ( _1 )
-# 4440 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_arith_expr_bis =
+# 1471 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.arith_op op _1 clt _3 )
+# 4474 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_assign_expr_eexpr_nest_expressions_ = Obj.magic _1 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 162 "parser_cocci_menhir.mly"
+ (Ast_cocci.logicalOp * Data.clt)
+# 4506 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_basic_expr_eexpr_nest_expressions_ =
-# 1213 "parser_cocci_menhir.mly"
- ( _1 )
-# 4464 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_arith_expr_bis =
+# 1473 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in P.logic_op op _1 clt _3 )
+# 4514 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_assign_expr_expr_invalid_ = Obj.magic _1 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 161 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 4546 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_basic_expr_expr_invalid_ =
-# 1213 "parser_cocci_menhir.mly"
- ( _1 )
-# 4488 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_arith_expr_bis =
+# 1475 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.Eq _1 _2 _3 )
+# 4554 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_fun_start = Obj.magic _3 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 161 "parser_cocci_menhir.mly"
(Data.clt)
-# 4520 "parser_cocci_menhir.ml"
+# 4586 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : (
-# 57 "parser_cocci_menhir.mly"
- (Data.clt)
-# 4525 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
- let _v : 'tv_case_line =
-# 920 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Default(P.clt2mcode "default" _1,P.clt2mcode ":" _2,_3)) )
-# 4532 "parser_cocci_menhir.ml"
+ let _v : 'tv_arith_expr_bis =
+# 1477 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.NotEq _1 _2 _3 )
+# 4594 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _4;
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let _4 : 'tv_fun_start = Obj.magic _4 in
- let _3 : (
-# 76 "parser_cocci_menhir.mly"
- (Data.clt)
-# 4569 "parser_cocci_menhir.ml"
- ) = Obj.magic _3 in
- let _2 : 'tv_eexpr = Obj.magic _2 in
- let _1 : (
-# 57 "parser_cocci_menhir.mly"
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 160 "parser_cocci_menhir.mly"
(Data.clt)
-# 4575 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+# 4626 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__4_ in
- let _v : 'tv_case_line =
-# 922 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Case(P.clt2mcode "case" _1,_2,P.clt2mcode ":" _3,_4)) )
-# 4582 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_arith_expr_bis =
+# 1479 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.And _1 _2 _3 )
+# 4634 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 158 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 4666 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_arith_expr_bis =
+# 1481 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Or _1 _2 _3 )
+# 4674 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 159 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 4706 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_cast_expr_eexpr_dot_expressions_ =
-# 1273 "parser_cocci_menhir.mly"
- ( _1 )
-# 4606 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_arith_expr_bis =
+# 1483 "parser_cocci_menhir.mly"
+ ( P.arith_op Ast.Xor _1 _2 _3 )
+# 4714 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = e;
- MenhirLib.EngineTypes.startp = _startpos_e_;
- MenhirLib.EngineTypes.endp = _endpos_e_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = rp;
- MenhirLib.EngineTypes.startp = _startpos_rp_;
- MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = lp;
- MenhirLib.EngineTypes.startp = _startpos_lp_;
- MenhirLib.EngineTypes.endp = _endpos_lp_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let e : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic e in
- let rp : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 4643 "parser_cocci_menhir.ml"
- ) = Obj.magic rp in
- let t : 'tv_ctype = Obj.magic t in
- let lp : (
-# 76 "parser_cocci_menhir.mly"
+ let _3 : 'tv_arith_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 157 "parser_cocci_menhir.mly"
(Data.clt)
-# 4649 "parser_cocci_menhir.ml"
- ) = Obj.magic lp in
- let _startpos = _startpos_lp_ in
- let _endpos = _endpos_e_ in
- let _v : 'tv_cast_expr_eexpr_dot_expressions_ =
-# 1275 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
- P.clt2mcode ")" rp, e)) )
-# 4657 "parser_cocci_menhir.ml"
+# 4746 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_arith_expr_bis = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_arith_expr_bis =
+# 1485 "parser_cocci_menhir.mly"
+ ( P.logic_op Ast.AndLog _1 _2 _3 )
+# 4754 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_cast_expr_eexpr_invalid_ =
-# 1273 "parser_cocci_menhir.mly"
- ( _1 )
-# 4681 "parser_cocci_menhir.ml"
+ let _v : 'tv_arity =
+# 593 "parser_cocci_menhir.mly"
+ ( Ast.UNIQUE )
+# 4776 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = e;
- MenhirLib.EngineTypes.startp = _startpos_e_;
- MenhirLib.EngineTypes.endp = _endpos_e_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = rp;
- MenhirLib.EngineTypes.startp = _startpos_rp_;
- MenhirLib.EngineTypes.endp = _endpos_rp_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = lp;
- MenhirLib.EngineTypes.startp = _startpos_lp_;
- MenhirLib.EngineTypes.endp = _endpos_lp_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let e : 'tv_cast_expr_eexpr_invalid_ = Obj.magic e in
- let rp : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 4718 "parser_cocci_menhir.ml"
- ) = Obj.magic rp in
- let t : 'tv_ctype = Obj.magic t in
- let lp : (
-# 76 "parser_cocci_menhir.mly"
- (Data.clt)
-# 4724 "parser_cocci_menhir.ml"
- ) = Obj.magic lp in
- let _startpos = _startpos_lp_ in
- let _endpos = _endpos_e_ in
- let _v : 'tv_cast_expr_eexpr_invalid_ =
-# 1275 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
- P.clt2mcode ")" rp, e)) )
-# 4732 "parser_cocci_menhir.ml"
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_arity =
+# 594 "parser_cocci_menhir.mly"
+ ( Ast.OPT )
+# 4798 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_cast_expr_eexpr_nest_expressions_ =
-# 1273 "parser_cocci_menhir.mly"
- ( _1 )
-# 4756 "parser_cocci_menhir.ml"
+ let _v : 'tv_arity =
+# 595 "parser_cocci_menhir.mly"
+ ( Ast.MULTI )
+# 4820 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_arity =
+# 596 "parser_cocci_menhir.mly"
+ ( Ast.NONE )
+# 4837 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = e;
- MenhirLib.EngineTypes.startp = _startpos_e_;
- MenhirLib.EngineTypes.endp = _endpos_e_;
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = rp;
- MenhirLib.EngineTypes.startp = _startpos_rp_;
- MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.semv = i;
+ MenhirLib.EngineTypes.startp = _startpos_i_;
+ MenhirLib.EngineTypes.endp = _endpos_i_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = lp;
- MenhirLib.EngineTypes.startp = _startpos_lp_;
- MenhirLib.EngineTypes.endp = _endpos_lp_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = l;
+ MenhirLib.EngineTypes.startp = _startpos_l_;
+ MenhirLib.EngineTypes.endp = _endpos_l_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let e : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic e in
- let rp : (
-# 77 "parser_cocci_menhir.mly"
+ let r : (
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 4793 "parser_cocci_menhir.ml"
- ) = Obj.magic rp in
- let t : 'tv_ctype = Obj.magic t in
- let lp : (
-# 76 "parser_cocci_menhir.mly"
+# 4868 "parser_cocci_menhir.ml"
+ ) = Obj.magic r in
+ let i : 'tv_option_eexpr_ = Obj.magic i in
+ let l : (
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 4799 "parser_cocci_menhir.ml"
- ) = Obj.magic lp in
- let _startpos = _startpos_lp_ in
- let _endpos = _endpos_e_ in
- let _v : 'tv_cast_expr_eexpr_nest_expressions_ =
-# 1275 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
- P.clt2mcode ")" rp, e)) )
-# 4807 "parser_cocci_menhir.ml"
+# 4874 "parser_cocci_menhir.ml"
+ ) = Obj.magic l in
+ let _startpos = _startpos_l_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_array_dec =
+# 1250 "parser_cocci_menhir.mly"
+ ( (l,i,r) )
+# 4881 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
+ let _1 : 'tv_cond_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_cast_expr_expr_invalid_ =
-# 1273 "parser_cocci_menhir.mly"
- ( _1 )
-# 4831 "parser_cocci_menhir.ml"
+ let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
+# 1398 "parser_cocci_menhir.mly"
+ ( _1 )
+# 4905 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = e;
- MenhirLib.EngineTypes.startp = _startpos_e_;
- MenhirLib.EngineTypes.endp = _endpos_e_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = rp;
- MenhirLib.EngineTypes.startp = _startpos_rp_;
- MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = lp;
- MenhirLib.EngineTypes.startp = _startpos_lp_;
- MenhirLib.EngineTypes.endp = _endpos_lp_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let e : 'tv_cast_expr_expr_invalid_ = Obj.magic e in
- let rp : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 4868 "parser_cocci_menhir.ml"
- ) = Obj.magic rp in
- let t : 'tv_ctype = Obj.magic t in
- let lp : (
-# 76 "parser_cocci_menhir.mly"
- (Data.clt)
-# 4874 "parser_cocci_menhir.ml"
- ) = Obj.magic lp in
- let _startpos = _startpos_lp_ in
- let _endpos = _endpos_e_ in
- let _v : 'tv_cast_expr_expr_invalid_ =
-# 1275 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
- P.clt2mcode ")" rp, e)) )
-# 4882 "parser_cocci_menhir.ml"
+ let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 175 "parser_cocci_menhir.mly"
+ (Ast_cocci.assignOp * Data.clt)
+# 4937 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
+# 1400 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in
+ Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
+ Ast0.set_arg_exp _3,false)) )
+# 4947 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- } = _menhir_stack in
- let _2 : 'tv_separated_nonempty_list_TComma_TString_ = Obj.magic _2 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_choose_iso =
-# 237 "parser_cocci_menhir.mly"
- ( List.map P.id2name _2 )
-# 4910 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
+ let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
let _2 : (
-# 73 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 4936 "parser_cocci_menhir.ml"
+# 4979 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 4941 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_comma_decls_TEllipsis_decl_ =
-# 1578 "parser_cocci_menhir.mly"
- ( function dot_builder ->
- [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1));
- dot_builder _2] )
-# 4950 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_assign_expr_eexpr_dot_expressions_ =
+# 1404 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.Assignment
+ (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
+# 4989 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _2 : 'tv_one_dec_decl_ = Obj.magic _2 in
- let _1 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 4977 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let _1 : 'tv_cond_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_comma_decls_TEllipsis_decl_ =
-# 1582 "parser_cocci_menhir.mly"
- ( function dot_builder ->
- [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1)); _2] )
-# 4985 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
+# 1398 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5013 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
+ let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
let _2 : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 5011 "parser_cocci_menhir.ml"
+# 175 "parser_cocci_menhir.mly"
+ (Ast_cocci.assignOp * Data.clt)
+# 5045 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 5016 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_comma_decls_TEllipsis_name_opt_decl_ =
-# 1578 "parser_cocci_menhir.mly"
- ( function dot_builder ->
- [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1));
- dot_builder _2] )
-# 5025 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
+# 1400 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in
+ Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
+ Ast0.set_arg_exp _3,false)) )
+# 5055 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let _2 : 'tv_one_dec_name_opt_decl_ = Obj.magic _2 in
- let _1 : (
-# 107 "parser_cocci_menhir.mly"
+ let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 5052 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+# 5087 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_comma_decls_TEllipsis_name_opt_decl_ =
-# 1582 "parser_cocci_menhir.mly"
- ( function dot_builder ->
- [Ast0.wrap(Ast0.PComma(P.clt2mcode "," _1)); _2] )
-# 5060 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_assign_expr_eexpr_nest_expressions_ =
+# 1404 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.Assignment
+ (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
+# 5097 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ =
-# 1104 "parser_cocci_menhir.mly"
- ( [] )
-# 5077 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_cond_expr_expr_invalid_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_assign_expr_expr_invalid_ =
+# 1398 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5121 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = r;
- MenhirLib.EngineTypes.startp = _startpos_r_;
- MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let r : 'tv_comma_initializers2_edots_when_TEllipsis_initialize__ = Obj.magic r in
- let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in
- let _startpos = _startpos_d_ in
- let _endpos = _endpos_r_ in
- let _v : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ =
-# 1106 "parser_cocci_menhir.mly"
- ( (function dot_builder -> [dot_builder d])::r )
-# 5107 "parser_cocci_menhir.ml"
+ let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 175 "parser_cocci_menhir.mly"
+ (Ast_cocci.assignOp * Data.clt)
+# 5153 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_assign_expr_expr_invalid_ =
+# 1400 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in
+ Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
+ Ast0.set_arg_exp _3,false)) )
+# 5163 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = r;
- MenhirLib.EngineTypes.startp = _startpos_r_;
- MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = c;
- MenhirLib.EngineTypes.startp = _startpos_c_;
- MenhirLib.EngineTypes.endp = _endpos_c_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = i;
- MenhirLib.EngineTypes.startp = _startpos_i_;
- MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let r : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ = Obj.magic r in
- let c : (
-# 107 "parser_cocci_menhir.mly"
+ let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 5139 "parser_cocci_menhir.ml"
- ) = Obj.magic c in
- let i : 'tv_initialize2 = Obj.magic i in
- let _startpos = _startpos_i_ in
- let _endpos = _endpos_r_ in
- let _v : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ =
-# 1108 "parser_cocci_menhir.mly"
- ( (function dot_builder -> [i; Ast0.wrap(Ast0.IComma(P.clt2mcode "," c))])::
- r )
-# 5148 "parser_cocci_menhir.ml"
+# 5195 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_assign_expr_expr_invalid_ =
+# 1404 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.Assignment
+ (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
+# 5205 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_comma_initializers2_edots_when_TEllipsis_initialize__ =
-# 1112 "parser_cocci_menhir.mly"
- ( [] )
-# 5165 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_cond_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_assign_expr_bis =
+# 1409 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5229 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = r;
- MenhirLib.EngineTypes.startp = _startpos_r_;
- MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = c;
- MenhirLib.EngineTypes.startp = _startpos_c_;
- MenhirLib.EngineTypes.endp = _endpos_c_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = i;
- MenhirLib.EngineTypes.startp = _startpos_i_;
- MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let r : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ = Obj.magic r in
- let c : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 5197 "parser_cocci_menhir.ml"
- ) = Obj.magic c in
- let i : 'tv_initialize2 = Obj.magic i in
- let _startpos = _startpos_i_ in
- let _endpos = _endpos_r_ in
- let _v : 'tv_comma_initializers2_edots_when_TEllipsis_initialize__ =
-# 1114 "parser_cocci_menhir.mly"
- ( (function dot_builder -> [i; Ast0.wrap(Ast0.IComma(P.clt2mcode "," c))])::
- r )
-# 5206 "parser_cocci_menhir.ml"
+ let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 175 "parser_cocci_menhir.mly"
+ (Ast_cocci.assignOp * Data.clt)
+# 5261 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_assign_expr_bis =
+# 1411 "parser_cocci_menhir.mly"
+ ( let (op,clt) = _2 in
+ Ast0.wrap(Ast0.Assignment(_1,P.clt2mcode op clt,
+ Ast0.set_arg_exp _3,false)) )
+# 5271 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_separated_nonempty_list_TComma_any_strict_ = Obj.magic _1 in
+ let _3 : 'tv_assign_expr_bis = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5303 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_comma_list_any_strict_ =
-# 1815 "parser_cocci_menhir.mly"
- ( _1 )
-# 5230 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_assign_expr_bis =
+# 1415 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.Assignment
+ (_1,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,false)) )
+# 5313 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_separated_nonempty_list_TComma_ctype_ = Obj.magic _1 in
+ let _1 : 'tv_assign_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_comma_list_ctype_ =
-# 1815 "parser_cocci_menhir.mly"
- ( _1 )
-# 5254 "parser_cocci_menhir.ml"
+ let _v : 'tv_basic_expr_eexpr_dot_expressions_ =
+# 1395 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5337 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_separated_nonempty_list_TComma_d_ident_ = Obj.magic _1 in
+ let _1 : 'tv_assign_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_comma_list_d_ident_ =
-# 1815 "parser_cocci_menhir.mly"
- ( _1 )
-# 5278 "parser_cocci_menhir.ml"
+ let _v : 'tv_basic_expr_eexpr_nest_expressions_ =
+# 1395 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5361 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_separated_nonempty_list_TComma_ident_or_const_ = Obj.magic _1 in
+ let _1 : 'tv_assign_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_comma_list_ident_or_const_ =
-# 1815 "parser_cocci_menhir.mly"
- ( _1 )
-# 5302 "parser_cocci_menhir.ml"
+ let _v : 'tv_basic_expr_expr_invalid_ =
+# 1395 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5385 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_separated_nonempty_list_TComma_meta_ident_ = Obj.magic _1 in
+ let _3 : 'tv_fun_start = Obj.magic _3 in
+ let _2 : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5417 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : (
+# 123 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5422 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_comma_list_meta_ident_ =
-# 1815 "parser_cocci_menhir.mly"
- ( _1 )
-# 5326 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_case_line =
+# 1112 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.Default(P.clt2mcode "default" _1,P.clt2mcode ":" _2,_3)) )
+# 5430 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _4;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_ = Obj.magic _1 in
+ let _4 : 'tv_fun_start = Obj.magic _4 in
+ let _3 : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5467 "parser_cocci_menhir.ml"
+ ) = Obj.magic _3 in
+ let _2 : 'tv_eexpr = Obj.magic _2 in
+ let _1 : (
+# 123 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5473 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_comma_list_pure_ident_ =
-# 1815 "parser_cocci_menhir.mly"
- ( _1 )
-# 5350 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__4_ in
+ let _v : 'tv_case_line =
+# 1115 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Case(P.clt2mcode "case" _1,_2,P.clt2mcode ":" _3,_4)) )
+# 5480 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = Obj.magic _1 in
+ let _1 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_comma_list_pure_ident_or_meta_ident_ =
-# 1815 "parser_cocci_menhir.mly"
- ( _1 )
-# 5374 "parser_cocci_menhir.ml"
+ let _v : 'tv_cast_expr_eexpr_dot_expressions_ =
+# 1490 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5504 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = e;
+ MenhirLib.EngineTypes.startp = _startpos_e_;
+ MenhirLib.EngineTypes.endp = _endpos_e_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = rp;
+ MenhirLib.EngineTypes.startp = _startpos_rp_;
+ MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = lp;
+ MenhirLib.EngineTypes.startp = _startpos_lp_;
+ MenhirLib.EngineTypes.endp = _endpos_lp_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_ceq__ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_ceq__ =
-# 1815 "parser_cocci_menhir.mly"
- ( _1 )
-# 5398 "parser_cocci_menhir.ml"
+ let e : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic e in
+ let rp : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5541 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp in
+ let t : 'tv_ctype = Obj.magic t in
+ let lp : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5547 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp in
+ let _startpos = _startpos_lp_ in
+ let _endpos = _endpos_e_ in
+ let _v : 'tv_cast_expr_eexpr_dot_expressions_ =
+# 1492 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
+ P.clt2mcode ")" rp, e)) )
+# 5555 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic _1 in
+ let _1 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ =
-# 1815 "parser_cocci_menhir.mly"
- ( _1 )
-# 5422 "parser_cocci_menhir.ml"
+ let _v : 'tv_cast_expr_eexpr_invalid_ =
+# 1490 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5579 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = e;
+ MenhirLib.EngineTypes.startp = _startpos_e_;
+ MenhirLib.EngineTypes.endp = _endpos_e_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = rp;
+ MenhirLib.EngineTypes.startp = _startpos_rp_;
+ MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = lp;
+ MenhirLib.EngineTypes.startp = _startpos_lp_;
+ MenhirLib.EngineTypes.endp = _endpos_lp_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ =
-# 1815 "parser_cocci_menhir.mly"
- ( _1 )
-# 5446 "parser_cocci_menhir.ml"
+ let e : 'tv_cast_expr_eexpr_invalid_ = Obj.magic e in
+ let rp : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5616 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp in
+ let t : 'tv_ctype = Obj.magic t in
+ let lp : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5622 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp in
+ let _startpos = _startpos_lp_ in
+ let _endpos = _endpos_e_ in
+ let _v : 'tv_cast_expr_eexpr_invalid_ =
+# 1492 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
+ P.clt2mcode ")" rp, e)) )
+# 5630 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_pos__ = Obj.magic _1 in
+ let _1 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_cast_expr_eexpr_nest_expressions_ =
+# 1490 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5654 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = e;
+ MenhirLib.EngineTypes.startp = _startpos_e_;
+ MenhirLib.EngineTypes.endp = _endpos_e_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = rp;
+ MenhirLib.EngineTypes.startp = _startpos_rp_;
+ MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = lp;
+ MenhirLib.EngineTypes.startp = _startpos_lp_;
+ MenhirLib.EngineTypes.endp = _endpos_lp_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ } = _menhir_stack in
+ let e : 'tv_cast_expr_eexpr_nest_expressions_ = Obj.magic e in
+ let rp : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5691 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp in
+ let t : 'tv_ctype = Obj.magic t in
+ let lp : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5697 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp in
+ let _startpos = _startpos_lp_ in
+ let _endpos = _endpos_e_ in
+ let _v : 'tv_cast_expr_eexpr_nest_expressions_ =
+# 1492 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
+ P.clt2mcode ")" rp, e)) )
+# 5705 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_unary_expr_expr_invalid_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_cast_expr_expr_invalid_ =
+# 1490 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5729 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = e;
+ MenhirLib.EngineTypes.startp = _startpos_e_;
+ MenhirLib.EngineTypes.endp = _endpos_e_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = rp;
+ MenhirLib.EngineTypes.startp = _startpos_rp_;
+ MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = lp;
+ MenhirLib.EngineTypes.startp = _startpos_lp_;
+ MenhirLib.EngineTypes.endp = _endpos_lp_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ } = _menhir_stack in
+ let e : 'tv_cast_expr_expr_invalid_ = Obj.magic e in
+ let rp : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5766 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp in
+ let t : 'tv_ctype = Obj.magic t in
+ let lp : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 5772 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp in
+ let _startpos = _startpos_lp_ in
+ let _endpos = _endpos_e_ in
+ let _v : 'tv_cast_expr_expr_invalid_ =
+# 1492 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Cast (P.clt2mcode "(" lp, t,
+ P.clt2mcode ")" rp, e)) )
+# 5780 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_separated_nonempty_list_TComma_TString_ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_choose_iso =
+# 306 "parser_cocci_menhir.mly"
+ ( List.map P.id2name _2 )
+# 5808 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_any_strict_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_comma_list_any_strict_ =
+# 2187 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5832 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_ctype_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_comma_list_ctype_ =
+# 2187 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5856 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_d_ident_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_comma_list_d_ident_ =
+# 2187 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5880 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_ident_or_const_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_comma_list_ident_or_const_ =
+# 2187 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5904 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_meta_ident_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_comma_list_meta_ident_ =
+# 2187 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5928 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_comma_list_pure_ident_ =
+# 2187 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5952 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_comma_list_pure_ident_or_meta_ident_ =
+# 2187 "parser_cocci_menhir.mly"
+ ( _1 )
+# 5976 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ =
+# 2187 "parser_cocci_menhir.mly"
+ ( _1 )
+# 6000 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ =
+# 2187 "parser_cocci_menhir.mly"
+ ( _1 )
+# 6024 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ =
+# 2187 "parser_cocci_menhir.mly"
+ ( _1 )
+# 6048 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_pos__ =
-# 1815 "parser_cocci_menhir.mly"
+ let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ =
+# 2187 "parser_cocci_menhir.mly"
( _1 )
-# 5470 "parser_cocci_menhir.ml"
+# 6072 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_seed_ =
-# 1815 "parser_cocci_menhir.mly"
+# 2187 "parser_cocci_menhir.mly"
+ ( _1 )
+# 6096 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_x_eq_not_pos__ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_comma_list_pure_ident_or_meta_ident_with_x_eq_not_pos__ =
+# 2187 "parser_cocci_menhir.mly"
( _1 )
-# 5494 "parser_cocci_menhir.ml"
+# 6120 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_comma_list_typedef_ident_ =
-# 1815 "parser_cocci_menhir.mly"
+# 2187 "parser_cocci_menhir.mly"
( _1 )
-# 5518 "parser_cocci_menhir.ml"
+# 6144 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_cond_expr_eexpr_dot_expressions_ =
-# 1238 "parser_cocci_menhir.mly"
+# 1420 "parser_cocci_menhir.mly"
( _1 )
-# 5542 "parser_cocci_menhir.ml"
+# 6168 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let r : 'tv_cond_expr_eexpr_dot_expressions_ = Obj.magic r in
+ let r : 'tv_eexpr = Obj.magic r in
let dd : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 5584 "parser_cocci_menhir.ml"
+# 6210 "parser_cocci_menhir.ml"
) = Obj.magic dd in
let t : 'tv_option_eexpr_ = Obj.magic t in
let w : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 5590 "parser_cocci_menhir.ml"
+# 6216 "parser_cocci_menhir.ml"
) = Obj.magic w in
let l : 'tv_arith_expr_eexpr_dot_expressions_ = Obj.magic l in
let _startpos = _startpos_l_ in
let _endpos = _endpos_r_ in
let _v : 'tv_cond_expr_eexpr_dot_expressions_ =
-# 1240 "parser_cocci_menhir.mly"
+# 1422 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
P.clt2mcode ":" dd, r)) )
-# 5599 "parser_cocci_menhir.ml"
+# 6225 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_cond_expr_eexpr_nest_expressions_ =
-# 1238 "parser_cocci_menhir.mly"
+# 1420 "parser_cocci_menhir.mly"
( _1 )
-# 5623 "parser_cocci_menhir.ml"
+# 6249 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let r : 'tv_cond_expr_eexpr_nest_expressions_ = Obj.magic r in
+ let r : 'tv_eexpr = Obj.magic r in
let dd : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 5665 "parser_cocci_menhir.ml"
+# 6291 "parser_cocci_menhir.ml"
) = Obj.magic dd in
let t : 'tv_option_eexpr_ = Obj.magic t in
let w : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 5671 "parser_cocci_menhir.ml"
+# 6297 "parser_cocci_menhir.ml"
) = Obj.magic w in
let l : 'tv_arith_expr_eexpr_nest_expressions_ = Obj.magic l in
let _startpos = _startpos_l_ in
let _endpos = _endpos_r_ in
let _v : 'tv_cond_expr_eexpr_nest_expressions_ =
-# 1240 "parser_cocci_menhir.mly"
+# 1422 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
P.clt2mcode ":" dd, r)) )
-# 5680 "parser_cocci_menhir.ml"
+# 6306 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_cond_expr_expr_invalid_ =
-# 1238 "parser_cocci_menhir.mly"
+# 1420 "parser_cocci_menhir.mly"
( _1 )
-# 5704 "parser_cocci_menhir.ml"
+# 6330 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let r : 'tv_cond_expr_expr_invalid_ = Obj.magic r in
+ let r : 'tv_eexpr = Obj.magic r in
let dd : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 5746 "parser_cocci_menhir.ml"
+# 6372 "parser_cocci_menhir.ml"
) = Obj.magic dd in
let t : 'tv_option_eexpr_ = Obj.magic t in
let w : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 5752 "parser_cocci_menhir.ml"
+# 6378 "parser_cocci_menhir.ml"
) = Obj.magic w in
let l : 'tv_arith_expr_expr_invalid_ = Obj.magic l in
let _startpos = _startpos_l_ in
let _endpos = _endpos_r_ in
let _v : 'tv_cond_expr_expr_invalid_ =
-# 1240 "parser_cocci_menhir.mly"
+# 1422 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.CondExpr (l, P.clt2mcode "?" w, t,
P.clt2mcode ":" dd, r)) )
-# 5761 "parser_cocci_menhir.ml"
+# 6387 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 54 "parser_cocci_menhir.mly"
+# 120 "parser_cocci_menhir.mly"
(Data.clt)
-# 5782 "parser_cocci_menhir.ml"
+# 6408 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_const_vol =
-# 829 "parser_cocci_menhir.mly"
+# 1020 "parser_cocci_menhir.mly"
( P.clt2mcode Ast.Const _1 )
-# 5789 "parser_cocci_menhir.ml"
+# 6415 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 54 "parser_cocci_menhir.mly"
+# 120 "parser_cocci_menhir.mly"
(Data.clt)
-# 5810 "parser_cocci_menhir.ml"
+# 6436 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_const_vol =
-# 830 "parser_cocci_menhir.mly"
+# 1021 "parser_cocci_menhir.mly"
( P.clt2mcode Ast.Volatile _1 )
-# 5817 "parser_cocci_menhir.ml"
+# 6443 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_continue_struct_decl_list =
-# 583 "parser_cocci_menhir.mly"
- ( [] )
-# 5834 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_aexpr = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_continue_list_aexpr_TEllipsis_ =
+# 1963 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 6467 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_struct_decl_list_start = Obj.magic _2 in
- let _1 : 'tv_struct_decl = Obj.magic _1 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 6493 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_aexpr = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : 'tv_continue_struct_decl_list =
-# 584 "parser_cocci_menhir.mly"
- ( _1@_2 )
-# 5864 "parser_cocci_menhir.ml"
+ let _v : 'tv_continue_list_aexpr_TEllipsis_ =
+# 1965 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 6502 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 6534 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_aexpr = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_continue_list_aexpr_TEllipsis_ =
+# 1968 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 6544 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_list_aexpr_TEllipsis_ =
+# 1971 "parser_cocci_menhir.mly"
+ ( _2 )
+# 6572 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_struct_decl = Obj.magic _1 in
+ let _1 : 'tv_dparam = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_continue_struct_decl_list =
-# 585 "parser_cocci_menhir.mly"
- ( _1 )
-# 5888 "parser_cocci_menhir.ml"
+ let _v : 'tv_continue_list_dparam_TEllipsis_ =
+# 1963 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 6596 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty00;
- MenhirLib.EngineTypes.startp = _startpos_ty00_;
- MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
- let ty00 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 5920 "parser_cocci_menhir.ml"
- ) = Obj.magic ty00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 5925 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let _startpos = _startpos_r0_ in
- let _endpos = _endpos_m_ in
- let _v : 'tv_ctype = let ty =
- let ty0 = ty00 in
- let r = r0 in
- let ty =
- let ty = ty0 in
-
-# 469 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 5937 "parser_cocci_menhir.ml"
-
- in
-
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 5943 "parser_cocci_menhir.ml"
-
- in
- let cv =
-
-# 39 "standard.mly"
- ( None )
-# 5950 "parser_cocci_menhir.ml"
-
- in
-
-# 529 "parser_cocci_menhir.mly"
- ( P.pointerify (P.make_cv cv ty) m )
-# 5956 "parser_cocci_menhir.ml"
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 6622 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_dparam = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_list_dparam_TEllipsis_ =
+# 1965 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 6631 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty00;
- MenhirLib.EngineTypes.startp = _startpos_ty00_;
- MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
- let ty00 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 5988 "parser_cocci_menhir.ml"
- ) = Obj.magic ty00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 5993 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let _startpos = _startpos_r0_ in
- let _endpos = _endpos_m_ in
- let _v : 'tv_ctype = let ty =
- let ty0 = ty00 in
- let r = r0 in
- let ty =
- let ty = ty0 in
-
-# 471 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 6005 "parser_cocci_menhir.ml"
-
- in
-
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6011 "parser_cocci_menhir.ml"
-
- in
- let cv =
-
-# 39 "standard.mly"
- ( None )
-# 6018 "parser_cocci_menhir.ml"
-
- in
-
-# 529 "parser_cocci_menhir.mly"
- ( P.pointerify (P.make_cv cv ty) m )
-# 6024 "parser_cocci_menhir.ml"
+ let _3 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 6663 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_dparam = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_continue_list_dparam_TEllipsis_ =
+# 1968 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 6673 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty00;
- MenhirLib.EngineTypes.startp = _startpos_ty00_;
- MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
- let ty00 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6056 "parser_cocci_menhir.ml"
- ) = Obj.magic ty00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6061 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let _startpos = _startpos_r0_ in
- let _endpos = _endpos_m_ in
- let _v : 'tv_ctype = let ty =
- let ty0 = ty00 in
- let r = r0 in
- let ty =
- let ty = ty0 in
-
-# 473 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 6073 "parser_cocci_menhir.ml"
-
- in
-
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6079 "parser_cocci_menhir.ml"
-
- in
- let cv =
-
-# 39 "standard.mly"
- ( None )
-# 6086 "parser_cocci_menhir.ml"
-
- in
-
-# 529 "parser_cocci_menhir.mly"
- ( P.pointerify (P.make_cv cv ty) m )
-# 6092 "parser_cocci_menhir.ml"
+ let _2 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_list_dparam_TEllipsis_ =
+# 1971 "parser_cocci_menhir.mly"
+ ( _2 )
+# 6701 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = p00;
- MenhirLib.EngineTypes.startp = _startpos_p00_;
- MenhirLib.EngineTypes.endp = _endpos_p00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
- let p00 : (
-# 64 "parser_cocci_menhir.mly"
- (Parse_aux.info)
-# 6124 "parser_cocci_menhir.ml"
- ) = Obj.magic p00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6129 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let _startpos = _startpos_r0_ in
- let _endpos = _endpos_m_ in
- let _v : 'tv_ctype = let ty =
- let p0 = p00 in
- let r = r0 in
- let ty =
- let p = p0 in
-
-# 475 "parser_cocci_menhir.mly"
- ( let (nm,pure,clt) = p in
- Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 6142 "parser_cocci_menhir.ml"
-
- in
-
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6148 "parser_cocci_menhir.ml"
-
- in
- let cv =
-
-# 39 "standard.mly"
- ( None )
-# 6155 "parser_cocci_menhir.ml"
-
- in
-
-# 529 "parser_cocci_menhir.mly"
- ( P.pointerify (P.make_cv cv ty) m )
-# 6161 "parser_cocci_menhir.ml"
+ let _1 : 'tv_enum_decl_one = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
+# 1963 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 6725 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = p00;
- MenhirLib.EngineTypes.startp = _startpos_p00_;
- MenhirLib.EngineTypes.endp = _endpos_p00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r00;
- MenhirLib.EngineTypes.startp = _startpos_r00_;
- MenhirLib.EngineTypes.endp = _endpos_r00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r1;
- MenhirLib.EngineTypes.startp = _startpos_r1_;
- MenhirLib.EngineTypes.endp = _endpos_r1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
- let p00 : (
-# 59 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 6202 "parser_cocci_menhir.ml"
- ) = Obj.magic p00 in
- let r00 : (
-# 47 "parser_cocci_menhir.mly"
- (string)
-# 6207 "parser_cocci_menhir.ml"
- ) = Obj.magic r00 in
- let r1 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6212 "parser_cocci_menhir.ml"
- ) = Obj.magic r1 in
- let _startpos = _startpos_r1_ in
- let _endpos = _endpos_m_ in
- let _v : 'tv_ctype = let ty =
- let p0 = p00 in
- let r0 = r00 in
- let r = r1 in
- let ty =
- let p = p0 in
- let r = r0 in
-
-# 478 "parser_cocci_menhir.mly"
- ( let nm = (r,P.id2name p) in
- (* this is only possible when we are in a metavar decl. Otherwise,
- it will be represented already as a MetaType *)
- let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
- Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
- Ast0.Impure (*will be ignored*))) )
-# 6231 "parser_cocci_menhir.ml"
-
- in
-
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6237 "parser_cocci_menhir.ml"
-
- in
- let cv =
-
-# 39 "standard.mly"
- ( None )
-# 6244 "parser_cocci_menhir.ml"
-
- in
-
-# 529 "parser_cocci_menhir.mly"
- ( P.pointerify (P.make_cv cv ty) m )
-# 6250 "parser_cocci_menhir.ml"
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 6751 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_enum_decl_one = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
+# 1965 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 6760 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty00;
- MenhirLib.EngineTypes.startp = _startpos_ty00_;
- MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
- let ty00 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6282 "parser_cocci_menhir.ml"
- ) = Obj.magic ty00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6287 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let _startpos = _startpos_r0_ in
- let _endpos = _endpos_m_ in
- let _v : 'tv_ctype = let ty =
- let ty0 = ty00 in
- let r = r0 in
- let ty =
- let ty = ty0 in
-
-# 485 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 6299 "parser_cocci_menhir.ml"
-
- in
-
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6305 "parser_cocci_menhir.ml"
-
- in
- let cv =
-
-# 39 "standard.mly"
- ( None )
-# 6312 "parser_cocci_menhir.ml"
-
- in
-
-# 529 "parser_cocci_menhir.mly"
- ( P.pointerify (P.make_cv cv ty) m )
-# 6318 "parser_cocci_menhir.ml"
+ let _3 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 6792 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_enum_decl_one = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
+# 1968 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 6802 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty200;
- MenhirLib.EngineTypes.startp = _startpos_ty200_;
- MenhirLib.EngineTypes.endp = _endpos_ty200_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty100;
- MenhirLib.EngineTypes.startp = _startpos_ty100_;
- MenhirLib.EngineTypes.endp = _endpos_ty100_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
- let ty200 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6355 "parser_cocci_menhir.ml"
- ) = Obj.magic ty200 in
- let ty100 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6360 "parser_cocci_menhir.ml"
- ) = Obj.magic ty100 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6365 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let _startpos = _startpos_r0_ in
- let _endpos = _endpos_m_ in
- let _v : 'tv_ctype = let ty =
- let ty20 = ty200 in
- let ty10 = ty100 in
- let r = r0 in
- let ty =
- let ty2 = ty20 in
- let ty1 = ty10 in
-
-# 487 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.BaseType
- (Ast.LongLongType,
- [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 6382 "parser_cocci_menhir.ml"
-
- in
-
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 6388 "parser_cocci_menhir.ml"
-
- in
- let cv =
-
-# 39 "standard.mly"
- ( None )
-# 6395 "parser_cocci_menhir.ml"
-
- in
-
-# 529 "parser_cocci_menhir.mly"
- ( P.pointerify (P.make_cv cv ty) m )
-# 6401 "parser_cocci_menhir.ml"
+ let _2 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
+# 1971 "parser_cocci_menhir.mly"
+ ( _2 )
+# 6830 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty00;
- MenhirLib.EngineTypes.startp = _startpos_ty00_;
- MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
- let ty00 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6433 "parser_cocci_menhir.ml"
- ) = Obj.magic ty00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6438 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let _startpos = _startpos_r0_ in
- let _endpos = _endpos_m_ in
- let _v : 'tv_ctype = let ty =
- let ty0 = ty00 in
- let r = r0 in
- let ty =
- let ty = ty0 in
-
-# 469 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 6450 "parser_cocci_menhir.ml"
-
- in
-
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6456 "parser_cocci_menhir.ml"
-
- in
- let cv =
-
-# 39 "standard.mly"
- ( None )
-# 6463 "parser_cocci_menhir.ml"
-
- in
-
-# 529 "parser_cocci_menhir.mly"
- ( P.pointerify (P.make_cv cv ty) m )
-# 6469 "parser_cocci_menhir.ml"
+ let _1 : 'tv_initialize2 = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ =
+# 1963 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 6854 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty00;
- MenhirLib.EngineTypes.startp = _startpos_ty00_;
- MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
- let ty00 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6501 "parser_cocci_menhir.ml"
- ) = Obj.magic ty00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 6506 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let _startpos = _startpos_r0_ in
- let _endpos = _endpos_m_ in
- let _v : 'tv_ctype = let ty =
- let ty0 = ty00 in
- let r = r0 in
- let ty =
- let ty = ty0 in
-
-# 471 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 6518 "parser_cocci_menhir.ml"
-
- in
-
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6524 "parser_cocci_menhir.ml"
-
- in
- let cv =
-
-# 39 "standard.mly"
- ( None )
-# 6531 "parser_cocci_menhir.ml"
-
- in
-
-# 529 "parser_cocci_menhir.mly"
- ( P.pointerify (P.make_cv cv ty) m )
-# 6537 "parser_cocci_menhir.ml"
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 6880 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_initialize2 = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ =
+# 1965 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 6889 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 6921 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_initialize2 = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ =
+# 1968 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 6931 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ =
+# 1971 "parser_cocci_menhir.mly"
+ ( _2 )
+# 6959 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ =
+# 1963 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 6983 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 7009 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ =
+# 1965 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 7018 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 7050 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ =
+# 1968 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 7060 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_list_one_dec_decl__TEllipsis_ =
+# 1971 "parser_cocci_menhir.mly"
+ ( _2 )
+# 7088 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ =
+# 1963 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 7112 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 7138 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ =
+# 1965 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 7147 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 7179 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ =
+# 1968 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 7189 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ =
+# 1971 "parser_cocci_menhir.mly"
+ ( _2 )
+# 7217 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_continue_struct_decl_list =
+# 738 "parser_cocci_menhir.mly"
+ ( [] )
+# 7234 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_struct_decl_list_start = Obj.magic _2 in
+ let _1 : 'tv_struct_decl = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_continue_struct_decl_list =
+# 739 "parser_cocci_menhir.mly"
+ ( _1@_2 )
+# 7264 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_struct_decl = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_continue_struct_decl_list =
+# 740 "parser_cocci_menhir.mly"
+ ( _1 )
+# 7288 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 7320 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 7325 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
+ let _startpos = _startpos_r0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let ty0 = ty00 in
+ let r = r0 in
+ let ty =
+ let ty = ty0 in
+
+# 603 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
+# 7337 "parser_cocci_menhir.ml"
+
+ in
+
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 7343 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 7350 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 7356 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 7388 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 7393 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
+ let _startpos = _startpos_r0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let ty0 = ty00 in
+ let r = r0 in
+ let ty =
+ let ty = ty0 in
+
+# 605 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
+# 7405 "parser_cocci_menhir.ml"
+
+ in
+
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 7411 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 7418 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 7424 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ty00;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
MenhirLib.EngineTypes.next = {
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 6569 "parser_cocci_menhir.ml"
+# 7456 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 6574 "parser_cocci_menhir.ml"
+# 7461 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 473 "parser_cocci_menhir.mly"
+# 607 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 6586 "parser_cocci_menhir.ml"
+# 7473 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6592 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 7479 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 6599 "parser_cocci_menhir.ml"
+# 7486 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 6605 "parser_cocci_menhir.ml"
+# 7492 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 6637 "parser_cocci_menhir.ml"
+# 7524 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 6642 "parser_cocci_menhir.ml"
+# 7529 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let p = p0 in
-# 475 "parser_cocci_menhir.mly"
+# 609 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = p in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 6655 "parser_cocci_menhir.ml"
+# 7542 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6661 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 7548 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 6668 "parser_cocci_menhir.ml"
+# 7555 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 6674 "parser_cocci_menhir.ml"
+# 7561 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 6715 "parser_cocci_menhir.ml"
+# 7602 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r00 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 6720 "parser_cocci_menhir.ml"
+# 7607 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let r1 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 6725 "parser_cocci_menhir.ml"
+# 7612 "parser_cocci_menhir.ml"
) = Obj.magic r1 in
let _startpos = _startpos_r1_ in
let _endpos = _endpos_m_ in
let p = p0 in
let r = r0 in
-# 478 "parser_cocci_menhir.mly"
+# 612 "parser_cocci_menhir.mly"
( let nm = (r,P.id2name p) in
(* this is only possible when we are in a metavar decl. Otherwise,
it will be represented already as a MetaType *)
let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
Ast0.Impure (*will be ignored*))) )
-# 6744 "parser_cocci_menhir.ml"
+# 7631 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6750 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 7637 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 6757 "parser_cocci_menhir.ml"
+# 7644 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 6763 "parser_cocci_menhir.ml"
+# 7650 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 6795 "parser_cocci_menhir.ml"
+# 7682 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 6800 "parser_cocci_menhir.ml"
+# 7687 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 485 "parser_cocci_menhir.mly"
+# 619 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 6812 "parser_cocci_menhir.ml"
+# 7699 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6818 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 7705 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 6825 "parser_cocci_menhir.ml"
+# 7712 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 6831 "parser_cocci_menhir.ml"
+# 7718 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty200 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 6868 "parser_cocci_menhir.ml"
+# 7755 "parser_cocci_menhir.ml"
) = Obj.magic ty200 in
let ty100 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 6873 "parser_cocci_menhir.ml"
+# 7760 "parser_cocci_menhir.ml"
) = Obj.magic ty100 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 6878 "parser_cocci_menhir.ml"
+# 7765 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty2 = ty20 in
let ty1 = ty10 in
-# 487 "parser_cocci_menhir.mly"
+# 621 "parser_cocci_menhir.mly"
( Ast0.wrap
(Ast0.BaseType
(Ast.LongLongType,
[P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 6895 "parser_cocci_menhir.ml"
+# 7782 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 6901 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 7788 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 6908 "parser_cocci_menhir.ml"
+# 7795 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 6914 "parser_cocci_menhir.ml"
+# 7801 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = ty00;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 6941 "parser_cocci_menhir.ml"
+# 7833 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
- let _startpos = _startpos_ty00_ in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 7838 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
+ let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty0 = ty00 in
+ let r = r0 in
let ty =
let ty = ty0 in
-# 469 "parser_cocci_menhir.mly"
+# 603 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 6952 "parser_cocci_menhir.ml"
+# 7850 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 6958 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 7856 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 6965 "parser_cocci_menhir.ml"
+# 7863 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 6971 "parser_cocci_menhir.ml"
+# 7869 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = ty00;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 6998 "parser_cocci_menhir.ml"
+# 7901 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
- let _startpos = _startpos_ty00_ in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 7906 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
+ let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty0 = ty00 in
+ let r = r0 in
let ty =
let ty = ty0 in
-# 471 "parser_cocci_menhir.mly"
+# 605 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 7009 "parser_cocci_menhir.ml"
+# 7918 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 7015 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 7924 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7022 "parser_cocci_menhir.ml"
+# 7931 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7028 "parser_cocci_menhir.ml"
+# 7937 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = ty00;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- } = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 7055 "parser_cocci_menhir.ml"
+# 7969 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
- let _startpos = _startpos_ty00_ in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 7974 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
+ let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty0 = ty00 in
+ let r = r0 in
let ty =
let ty = ty0 in
-# 473 "parser_cocci_menhir.mly"
+# 607 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 7066 "parser_cocci_menhir.ml"
+# 7986 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 7072 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 7992 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7079 "parser_cocci_menhir.ml"
+# 7999 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7085 "parser_cocci_menhir.ml"
+# 8005 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = p00;
MenhirLib.EngineTypes.startp = _startpos_p00_;
MenhirLib.EngineTypes.endp = _endpos_p00_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 7112 "parser_cocci_menhir.ml"
+# 8037 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
- let _startpos = _startpos_p00_ in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 8042 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
+ let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let p0 = p00 in
+ let r = r0 in
let ty =
let p = p0 in
-# 475 "parser_cocci_menhir.mly"
+# 609 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = p in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 7124 "parser_cocci_menhir.ml"
+# 8055 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 7130 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 8061 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7137 "parser_cocci_menhir.ml"
+# 8068 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7143 "parser_cocci_menhir.ml"
+# 8074 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_p00_;
MenhirLib.EngineTypes.endp = _endpos_p00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = r00;
MenhirLib.EngineTypes.startp = _startpos_r00_;
MenhirLib.EngineTypes.endp = _endpos_r00_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = r1;
+ MenhirLib.EngineTypes.startp = _startpos_r1_;
+ MenhirLib.EngineTypes.endp = _endpos_r1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 7179 "parser_cocci_menhir.ml"
+# 8115 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r00 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 7184 "parser_cocci_menhir.ml"
+# 8120 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
- let _startpos = _startpos_r00_ in
+ let r1 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 8125 "parser_cocci_menhir.ml"
+ ) = Obj.magic r1 in
+ let _startpos = _startpos_r1_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let p0 = p00 in
let r0 = r00 in
+ let r = r1 in
let ty =
let p = p0 in
let r = r0 in
-# 478 "parser_cocci_menhir.mly"
+# 612 "parser_cocci_menhir.mly"
( let nm = (r,P.id2name p) in
(* this is only possible when we are in a metavar decl. Otherwise,
it will be represented already as a MetaType *)
let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
Ast0.Impure (*will be ignored*))) )
-# 7202 "parser_cocci_menhir.ml"
+# 8144 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 7208 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 8150 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7215 "parser_cocci_menhir.ml"
+# 8157 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7221 "parser_cocci_menhir.ml"
+# 8163 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = ty00;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 7248 "parser_cocci_menhir.ml"
+# 8195 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
- let _startpos = _startpos_ty00_ in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 8200 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
+ let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty0 = ty00 in
+ let r = r0 in
let ty =
let ty = ty0 in
-# 485 "parser_cocci_menhir.mly"
+# 619 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 7259 "parser_cocci_menhir.ml"
+# 8212 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 7265 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 8218 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7272 "parser_cocci_menhir.ml"
+# 8225 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7278 "parser_cocci_menhir.ml"
+# 8231 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_ty200_;
MenhirLib.EngineTypes.endp = _endpos_ty200_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = ty100;
MenhirLib.EngineTypes.startp = _startpos_ty100_;
MenhirLib.EngineTypes.endp = _endpos_ty100_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty200 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 7310 "parser_cocci_menhir.ml"
+# 8268 "parser_cocci_menhir.ml"
) = Obj.magic ty200 in
let ty100 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 7315 "parser_cocci_menhir.ml"
+# 8273 "parser_cocci_menhir.ml"
) = Obj.magic ty100 in
- let _startpos = _startpos_ty100_ in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 8278 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
+ let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty20 = ty200 in
let ty10 = ty100 in
+ let r = r0 in
let ty =
let ty2 = ty20 in
let ty1 = ty10 in
-# 487 "parser_cocci_menhir.mly"
+# 621 "parser_cocci_menhir.mly"
( Ast0.wrap
(Ast0.BaseType
(Ast.LongLongType,
[P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 7331 "parser_cocci_menhir.ml"
+# 8295 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 7337 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 8301 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7344 "parser_cocci_menhir.ml"
+# 8308 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7350 "parser_cocci_menhir.ml"
+# 8314 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 50 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 7377 "parser_cocci_menhir.ml"
+# 8341 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 495 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) )
-# 7388 "parser_cocci_menhir.ml"
+# 603 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
+# 8352 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 7394 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 8358 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7401 "parser_cocci_menhir.ml"
+# 8365 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7407 "parser_cocci_menhir.ml"
+# 8371 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 7434 "parser_cocci_menhir.ml"
+# 8398 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 497 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) )
-# 7445 "parser_cocci_menhir.ml"
+# 605 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
+# 8409 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 7451 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 8415 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7458 "parser_cocci_menhir.ml"
+# 8422 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7464 "parser_cocci_menhir.ml"
+# 8428 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 7491 "parser_cocci_menhir.ml"
+# 8455 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 499 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) )
-# 7502 "parser_cocci_menhir.ml"
+# 607 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
+# 8466 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 7508 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 8472 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7515 "parser_cocci_menhir.ml"
+# 8479 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7521 "parser_cocci_menhir.ml"
+# 8485 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = i00;
- MenhirLib.EngineTypes.startp = _startpos_i00_;
- MenhirLib.EngineTypes.endp = _endpos_i00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = s00;
- MenhirLib.EngineTypes.startp = _startpos_s00_;
- MenhirLib.EngineTypes.endp = _endpos_s00_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = p00;
+ MenhirLib.EngineTypes.startp = _startpos_p00_;
+ MenhirLib.EngineTypes.endp = _endpos_p00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let i00 : 'tv_ident = Obj.magic i00 in
- let s00 : (
-# 50 "parser_cocci_menhir.mly"
- (Data.clt)
-# 7554 "parser_cocci_menhir.ml"
- ) = Obj.magic s00 in
- let _startpos = _startpos_s00_ in
+ let p00 : (
+# 131 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 8512 "parser_cocci_menhir.ml"
+ ) = Obj.magic p00 in
+ let _startpos = _startpos_p00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let i0 = i00 in
- let s0 = s00 in
+ let p0 = p00 in
let ty =
- let i = i0 in
- let s = s0 in
+ let p = p0 in
-# 501 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)) )
-# 7567 "parser_cocci_menhir.ml"
+# 609 "parser_cocci_menhir.mly"
+ ( let (nm,pure,clt) = p in
+ Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
+# 8524 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 7573 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 8530 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7580 "parser_cocci_menhir.ml"
+# 8537 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7586 "parser_cocci_menhir.ml"
+# 8543 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = i00;
- MenhirLib.EngineTypes.startp = _startpos_i00_;
- MenhirLib.EngineTypes.endp = _endpos_i00_;
+ MenhirLib.EngineTypes.semv = p00;
+ MenhirLib.EngineTypes.startp = _startpos_p00_;
+ MenhirLib.EngineTypes.endp = _endpos_p00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = s00;
- MenhirLib.EngineTypes.startp = _startpos_s00_;
- MenhirLib.EngineTypes.endp = _endpos_s00_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let i00 : 'tv_ident = Obj.magic i00 in
- let s00 : 'tv_struct_or_union = Obj.magic s00 in
- let _startpos = _startpos_s00_ in
+ let p00 : (
+# 125 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 8579 "parser_cocci_menhir.ml"
+ ) = Obj.magic p00 in
+ let r00 : (
+# 112 "parser_cocci_menhir.mly"
+ (string)
+# 8584 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let _startpos = _startpos_r00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let i0 = i00 in
- let s0 = s00 in
+ let p0 = p00 in
+ let r0 = r00 in
let ty =
- let i = i0 in
- let s = s0 in
+ let p = p0 in
+ let r = r0 in
-# 503 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
-# 7628 "parser_cocci_menhir.ml"
+# 612 "parser_cocci_menhir.mly"
+ ( let nm = (r,P.id2name p) in
+ (* this is only possible when we are in a metavar decl. Otherwise,
+ it will be represented already as a MetaType *)
+ let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
+ Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
+ Ast0.Impure (*will be ignored*))) )
+# 8602 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 7634 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 8608 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7641 "parser_cocci_menhir.ml"
+# 8615 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7647 "parser_cocci_menhir.ml"
+# 8621 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r00;
- MenhirLib.EngineTypes.startp = _startpos_r00_;
- MenhirLib.EngineTypes.endp = _endpos_r00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d00;
- MenhirLib.EngineTypes.startp = _startpos_d00_;
- MenhirLib.EngineTypes.endp = _endpos_d00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = l00;
- MenhirLib.EngineTypes.startp = _startpos_l00_;
- MenhirLib.EngineTypes.endp = _endpos_l00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = s00;
- MenhirLib.EngineTypes.startp = _startpos_s00_;
- MenhirLib.EngineTypes.endp = _endpos_s00_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let r00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 7689 "parser_cocci_menhir.ml"
- ) = Obj.magic r00 in
- let d00 : 'tv_struct_decl_list = Obj.magic d00 in
- let l00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 7695 "parser_cocci_menhir.ml"
- ) = Obj.magic l00 in
- let s00 : 'tv_struct_or_union = Obj.magic s00 in
- let _startpos = _startpos_s00_ in
+ let ty00 : (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 8648 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let r0 = r00 in
- let d0 = d00 in
- let l0 = l00 in
- let s0 = s00 in
+ let ty0 = ty00 in
let ty =
- let r = r0 in
- let d = d0 in
- let l = l0 in
- let s = s0 in
- let i =
-
-# 39 "standard.mly"
- ( None )
-# 7714 "parser_cocci_menhir.ml"
-
- in
+ let ty = ty0 in
-# 506 "parser_cocci_menhir.mly"
- ( (if i = None && !Data.in_iso
- then failwith "structures must be named in the iso file");
- Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
- P.clt2mcode "{" l,
- d, P.clt2mcode "}" r)) )
-# 7724 "parser_cocci_menhir.ml"
+# 619 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
+# 8659 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 7730 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 8665 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7737 "parser_cocci_menhir.ml"
+# 8672 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7743 "parser_cocci_menhir.ml"
+# 8678 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r00;
- MenhirLib.EngineTypes.startp = _startpos_r00_;
- MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.semv = ty200;
+ MenhirLib.EngineTypes.startp = _startpos_ty200_;
+ MenhirLib.EngineTypes.endp = _endpos_ty200_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d00;
- MenhirLib.EngineTypes.startp = _startpos_d00_;
- MenhirLib.EngineTypes.endp = _endpos_d00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = l00;
- MenhirLib.EngineTypes.startp = _startpos_l00_;
- MenhirLib.EngineTypes.endp = _endpos_l00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = x000;
- MenhirLib.EngineTypes.startp = _startpos_x000_;
- MenhirLib.EngineTypes.endp = _endpos_x000_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = s00;
- MenhirLib.EngineTypes.startp = _startpos_s00_;
- MenhirLib.EngineTypes.endp = _endpos_s00_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ty100;
+ MenhirLib.EngineTypes.startp = _startpos_ty100_;
+ MenhirLib.EngineTypes.endp = _endpos_ty100_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let r00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 7790 "parser_cocci_menhir.ml"
- ) = Obj.magic r00 in
- let d00 : 'tv_struct_decl_list = Obj.magic d00 in
- let l00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 7796 "parser_cocci_menhir.ml"
- ) = Obj.magic l00 in
- let x000 : 'tv_ident = Obj.magic x000 in
- let s00 : 'tv_struct_or_union = Obj.magic s00 in
- let _startpos = _startpos_s00_ in
+ let ty200 : (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 8710 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty200 in
+ let ty100 : (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 8715 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty100 in
+ let _startpos = _startpos_ty100_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let r0 = r00 in
- let d0 = d00 in
- let l0 = l00 in
- let x00 = x000 in
- let s0 = s00 in
+ let ty20 = ty200 in
+ let ty10 = ty100 in
let ty =
- let r = r0 in
- let d = d0 in
- let l = l0 in
- let x0 = x00 in
- let s = s0 in
- let i =
- let x = x0 in
-
-# 41 "standard.mly"
- ( Some x )
-# 7819 "parser_cocci_menhir.ml"
-
- in
+ let ty2 = ty20 in
+ let ty1 = ty10 in
-# 506 "parser_cocci_menhir.mly"
- ( (if i = None && !Data.in_iso
- then failwith "structures must be named in the iso file");
- Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
- P.clt2mcode "{" l,
- d, P.clt2mcode "}" r)) )
-# 7829 "parser_cocci_menhir.ml"
+# 621 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.BaseType
+ (Ast.LongLongType,
+ [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
+# 8731 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 7835 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 8737 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7842 "parser_cocci_menhir.ml"
+# 8744 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7848 "parser_cocci_menhir.ml"
+# 8750 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r00;
- MenhirLib.EngineTypes.startp = _startpos_r00_;
- MenhirLib.EngineTypes.endp = _endpos_r00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d00;
- MenhirLib.EngineTypes.startp = _startpos_d00_;
- MenhirLib.EngineTypes.endp = _endpos_d00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = l00;
- MenhirLib.EngineTypes.startp = _startpos_l00_;
- MenhirLib.EngineTypes.endp = _endpos_l00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = s00;
- MenhirLib.EngineTypes.startp = _startpos_s00_;
- MenhirLib.EngineTypes.endp = _endpos_s00_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let r00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 7890 "parser_cocci_menhir.ml"
- ) = Obj.magic r00 in
- let d00 : 'tv_struct_decl_list = Obj.magic d00 in
- let l00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 7896 "parser_cocci_menhir.ml"
- ) = Obj.magic l00 in
- let s00 : (
-# 64 "parser_cocci_menhir.mly"
- (Parse_aux.info)
-# 7901 "parser_cocci_menhir.ml"
- ) = Obj.magic s00 in
- let _startpos = _startpos_s00_ in
+ let ty00 : (
+# 116 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 8777 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let r0 = r00 in
- let d0 = d00 in
- let l0 = l00 in
- let s0 = s00 in
+ let ty0 = ty00 in
let ty =
- let r = r0 in
- let d = d0 in
- let l = l0 in
- let s = s0 in
+ let ty = ty0 in
-# 512 "parser_cocci_menhir.mly"
- ( let (nm,pure,clt) = s in
- let ty = Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
- Ast0.wrap(Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
-# 7920 "parser_cocci_menhir.ml"
+# 629 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) )
+# 8788 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 7926 "parser_cocci_menhir.ml"
+# 8794 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7933 "parser_cocci_menhir.ml"
+# 8801 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7939 "parser_cocci_menhir.ml"
+# 8807 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = p00;
- MenhirLib.EngineTypes.startp = _startpos_p00_;
- MenhirLib.EngineTypes.endp = _endpos_p00_;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let p00 : (
-# 59 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 7966 "parser_cocci_menhir.ml"
- ) = Obj.magic p00 in
- let _startpos = _startpos_p00_ in
+ let ty00 : (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 8834 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let p0 = p00 in
+ let ty0 = ty00 in
let ty =
- let p = p0 in
+ let ty = ty0 in
-# 516 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
-# 7977 "parser_cocci_menhir.ml"
+# 631 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) )
+# 8845 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 7983 "parser_cocci_menhir.ml"
+# 8851 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 7990 "parser_cocci_menhir.ml"
+# 8858 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 7996 "parser_cocci_menhir.ml"
+# 8864 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = ty00;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 8033 "parser_cocci_menhir.ml"
+# 8891 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 8038 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let x0 : 'tv_const_vol = Obj.magic x0 in
- let _startpos = _startpos_x0_ in
+ let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty0 = ty00 in
- let r = r0 in
let ty =
let ty = ty0 in
-# 469 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 8051 "parser_cocci_menhir.ml"
+# 633 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) )
+# 8902 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8057 "parser_cocci_menhir.ml"
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 8908 "parser_cocci_menhir.ml"
in
let cv =
- let x = x0 in
-# 41 "standard.mly"
- ( Some x )
-# 8065 "parser_cocci_menhir.ml"
+# 39 "standard.mly"
+ ( None )
+# 8915 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8071 "parser_cocci_menhir.ml"
+# 8921 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = ty00;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 115 "parser_cocci_menhir.mly"
(Data.clt)
-# 8108 "parser_cocci_menhir.ml"
+# 8948 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 8113 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let x0 : 'tv_const_vol = Obj.magic x0 in
- let _startpos = _startpos_x0_ in
+ let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty0 = ty00 in
- let r = r0 in
let ty =
let ty = ty0 in
-# 471 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 8126 "parser_cocci_menhir.ml"
+# 635 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) )
+# 8959 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8132 "parser_cocci_menhir.ml"
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 8965 "parser_cocci_menhir.ml"
in
let cv =
- let x = x0 in
-# 41 "standard.mly"
- ( Some x )
-# 8140 "parser_cocci_menhir.ml"
+# 39 "standard.mly"
+ ( None )
+# 8972 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8146 "parser_cocci_menhir.ml"
+# 8978 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = ty00;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 115 "parser_cocci_menhir.mly"
(Data.clt)
-# 8183 "parser_cocci_menhir.ml"
+# 9005 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 8188 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let x0 : 'tv_const_vol = Obj.magic x0 in
- let _startpos = _startpos_x0_ in
+ let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty0 = ty00 in
- let r = r0 in
let ty =
let ty = ty0 in
-# 473 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 8201 "parser_cocci_menhir.ml"
+# 637 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) )
+# 9016 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8207 "parser_cocci_menhir.ml"
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 9022 "parser_cocci_menhir.ml"
in
let cv =
- let x = x0 in
-# 41 "standard.mly"
- ( Some x )
-# 8215 "parser_cocci_menhir.ml"
+# 39 "standard.mly"
+ ( None )
+# 9029 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8221 "parser_cocci_menhir.ml"
+# 9035 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = p00;
- MenhirLib.EngineTypes.startp = _startpos_p00_;
- MenhirLib.EngineTypes.endp = _endpos_p00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let p00 : (
-# 64 "parser_cocci_menhir.mly"
- (Parse_aux.info)
-# 8258 "parser_cocci_menhir.ml"
- ) = Obj.magic p00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
+ let ty00 : (
+# 115 "parser_cocci_menhir.mly"
(Data.clt)
-# 8263 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let x0 : 'tv_const_vol = Obj.magic x0 in
- let _startpos = _startpos_x0_ in
+# 9062 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let p0 = p00 in
- let r = r0 in
+ let ty0 = ty00 in
let ty =
- let p = p0 in
+ let ty = ty0 in
-# 475 "parser_cocci_menhir.mly"
- ( let (nm,pure,clt) = p in
- Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 8277 "parser_cocci_menhir.ml"
+# 639 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) )
+# 9073 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8283 "parser_cocci_menhir.ml"
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 9079 "parser_cocci_menhir.ml"
in
let cv =
- let x = x0 in
-# 41 "standard.mly"
- ( Some x )
-# 8291 "parser_cocci_menhir.ml"
+# 39 "standard.mly"
+ ( None )
+# 9086 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8297 "parser_cocci_menhir.ml"
+# 9092 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = p00;
- MenhirLib.EngineTypes.startp = _startpos_p00_;
- MenhirLib.EngineTypes.endp = _endpos_p00_;
+ MenhirLib.EngineTypes.semv = i00;
+ MenhirLib.EngineTypes.startp = _startpos_i00_;
+ MenhirLib.EngineTypes.endp = _endpos_i00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r00;
- MenhirLib.EngineTypes.startp = _startpos_r00_;
- MenhirLib.EngineTypes.endp = _endpos_r00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r1;
- MenhirLib.EngineTypes.startp = _startpos_r1_;
- MenhirLib.EngineTypes.endp = _endpos_r1_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let p00 : (
-# 59 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 8343 "parser_cocci_menhir.ml"
- ) = Obj.magic p00 in
- let r00 : (
-# 47 "parser_cocci_menhir.mly"
- (string)
-# 8348 "parser_cocci_menhir.ml"
- ) = Obj.magic r00 in
- let r1 : (
-# 51 "parser_cocci_menhir.mly"
+ let i00 : 'tv_ident = Obj.magic i00 in
+ let s00 : (
+# 116 "parser_cocci_menhir.mly"
(Data.clt)
-# 8353 "parser_cocci_menhir.ml"
- ) = Obj.magic r1 in
- let x0 : 'tv_const_vol = Obj.magic x0 in
- let _startpos = _startpos_x0_ in
+# 9125 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let _startpos = _startpos_s00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let p0 = p00 in
- let r0 = r00 in
- let r = r1 in
+ let i0 = i00 in
+ let s0 = s00 in
let ty =
- let p = p0 in
- let r = r0 in
+ let i = i0 in
+ let s = s0 in
-# 478 "parser_cocci_menhir.mly"
- ( let nm = (r,P.id2name p) in
- (* this is only possible when we are in a metavar decl. Otherwise,
- it will be represented already as a MetaType *)
- let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
- Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
- Ast0.Impure (*will be ignored*))) )
-# 8373 "parser_cocci_menhir.ml"
+# 641 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) )
+# 9138 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8379 "parser_cocci_menhir.ml"
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 9144 "parser_cocci_menhir.ml"
in
let cv =
- let x = x0 in
-# 41 "standard.mly"
- ( Some x )
-# 8387 "parser_cocci_menhir.ml"
+# 39 "standard.mly"
+ ( None )
+# 9151 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8393 "parser_cocci_menhir.ml"
+# 9157 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty00;
- MenhirLib.EngineTypes.startp = _startpos_ty00_;
- MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.semv = ids00;
+ MenhirLib.EngineTypes.startp = _startpos_ids00_;
+ MenhirLib.EngineTypes.endp = _endpos_ids00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let ty00 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 8430 "parser_cocci_menhir.ml"
- ) = Obj.magic ty00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 9199 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 9205 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let s00 : (
+# 116 "parser_cocci_menhir.mly"
(Data.clt)
-# 8435 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let x0 : 'tv_const_vol = Obj.magic x0 in
- let _startpos = _startpos_x0_ in
+# 9210 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let _startpos = _startpos_s00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let ty0 = ty00 in
- let r = r0 in
+ let r0 = r00 in
+ let ids0 = ids00 in
+ let l0 = l00 in
+ let s0 = s00 in
let ty =
- let ty = ty0 in
+ let r = r0 in
+ let ids = ids0 in
+ let l = l0 in
+ let s = s0 in
+ let i =
+
+# 39 "standard.mly"
+ ( None )
+# 9228 "parser_cocci_menhir.ml"
+
+ in
-# 485 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 8448 "parser_cocci_menhir.ml"
+# 643 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "enums must be named in the iso file");
+ Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)),
+ P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) )
+# 9237 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8454 "parser_cocci_menhir.ml"
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 9243 "parser_cocci_menhir.ml"
in
let cv =
- let x = x0 in
-# 41 "standard.mly"
- ( Some x )
-# 8462 "parser_cocci_menhir.ml"
+# 39 "standard.mly"
+ ( None )
+# 9250 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8468 "parser_cocci_menhir.ml"
+# 9256 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty200;
- MenhirLib.EngineTypes.startp = _startpos_ty200_;
- MenhirLib.EngineTypes.endp = _endpos_ty200_;
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty100;
- MenhirLib.EngineTypes.startp = _startpos_ty100_;
- MenhirLib.EngineTypes.endp = _endpos_ty100_;
+ MenhirLib.EngineTypes.semv = ids00;
+ MenhirLib.EngineTypes.startp = _startpos_ids00_;
+ MenhirLib.EngineTypes.endp = _endpos_ids00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = x000;
+ MenhirLib.EngineTypes.startp = _startpos_x000_;
+ MenhirLib.EngineTypes.endp = _endpos_x000_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let ty200 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 8510 "parser_cocci_menhir.ml"
- ) = Obj.magic ty200 in
- let ty100 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 8515 "parser_cocci_menhir.ml"
- ) = Obj.magic ty100 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 9303 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 9309 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let x000 : 'tv_ident = Obj.magic x000 in
+ let s00 : (
+# 116 "parser_cocci_menhir.mly"
(Data.clt)
-# 8520 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let x0 : 'tv_const_vol = Obj.magic x0 in
- let _startpos = _startpos_x0_ in
+# 9315 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let _startpos = _startpos_s00_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let ty20 = ty200 in
- let ty10 = ty100 in
- let r = r0 in
+ let r0 = r00 in
+ let ids0 = ids00 in
+ let l0 = l00 in
+ let x00 = x000 in
+ let s0 = s00 in
let ty =
- let ty2 = ty20 in
- let ty1 = ty10 in
+ let r = r0 in
+ let ids = ids0 in
+ let l = l0 in
+ let x0 = x00 in
+ let s = s0 in
+ let i =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 9336 "parser_cocci_menhir.ml"
+
+ in
-# 487 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.BaseType
- (Ast.LongLongType,
- [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 8538 "parser_cocci_menhir.ml"
+# 643 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "enums must be named in the iso file");
+ Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)),
+ P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) )
+# 9345 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 8544 "parser_cocci_menhir.ml"
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 9351 "parser_cocci_menhir.ml"
in
let cv =
- let x = x0 in
-# 41 "standard.mly"
- ( Some x )
-# 8552 "parser_cocci_menhir.ml"
+# 39 "standard.mly"
+ ( None )
+# 9358 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8558 "parser_cocci_menhir.ml"
+# 9364 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = i00;
+ MenhirLib.EngineTypes.startp = _startpos_i00_;
+ MenhirLib.EngineTypes.endp = _endpos_i00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let i00 : 'tv_type_ident = Obj.magic i00 in
+ let s00 : 'tv_struct_or_union = Obj.magic s00 in
+ let _startpos = _startpos_s00_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let i0 = i00 in
+ let s0 = s00 in
+ let ty =
+ let i = i0 in
+ let s = s0 in
+
+# 648 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
+# 9406 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 9412 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 9419 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 9425 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d00;
+ MenhirLib.EngineTypes.startp = _startpos_d00_;
+ MenhirLib.EngineTypes.endp = _endpos_d00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 9467 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let d00 : 'tv_struct_decl_list = Obj.magic d00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 9473 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let s00 : 'tv_struct_or_union = Obj.magic s00 in
+ let _startpos = _startpos_s00_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let r0 = r00 in
+ let d0 = d00 in
+ let l0 = l00 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let d = d0 in
+ let l = l0 in
+ let s = s0 in
+ let i =
+
+# 39 "standard.mly"
+ ( None )
+# 9492 "parser_cocci_menhir.ml"
+
+ in
+
+# 651 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "structures must be named in the iso file");
+ Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
+ P.clt2mcode "{" l,
+ d, P.clt2mcode "}" r)) )
+# 9502 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 9508 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 9515 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 9521 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d00;
+ MenhirLib.EngineTypes.startp = _startpos_d00_;
+ MenhirLib.EngineTypes.endp = _endpos_d00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = x000;
+ MenhirLib.EngineTypes.startp = _startpos_x000_;
+ MenhirLib.EngineTypes.endp = _endpos_x000_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 9568 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let d00 : 'tv_struct_decl_list = Obj.magic d00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 9574 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let x000 : 'tv_type_ident = Obj.magic x000 in
+ let s00 : 'tv_struct_or_union = Obj.magic s00 in
+ let _startpos = _startpos_s00_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let r0 = r00 in
+ let d0 = d00 in
+ let l0 = l00 in
+ let x00 = x000 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let d = d0 in
+ let l = l0 in
+ let x0 = x00 in
+ let s = s0 in
+ let i =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 9597 "parser_cocci_menhir.ml"
+
+ in
+
+# 651 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "structures must be named in the iso file");
+ Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
+ P.clt2mcode "{" l,
+ d, P.clt2mcode "}" r)) )
+# 9607 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 9613 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 9620 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 9626 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d00;
+ MenhirLib.EngineTypes.startp = _startpos_d00_;
+ MenhirLib.EngineTypes.endp = _endpos_d00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 9668 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let d00 : 'tv_struct_decl_list = Obj.magic d00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 9674 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let s00 : (
+# 131 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 9679 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let _startpos = _startpos_s00_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let r0 = r00 in
+ let d0 = d00 in
+ let l0 = l00 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let d = d0 in
+ let l = l0 in
+ let s = s0 in
+
+# 657 "parser_cocci_menhir.mly"
+ ( let (nm,pure,clt) = s in
+ let ty = Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
+ Ast0.wrap(Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
+# 9698 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 9704 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 9711 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 9717 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = p00;
+ MenhirLib.EngineTypes.startp = _startpos_p00_;
+ MenhirLib.EngineTypes.endp = _endpos_p00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let p00 : (
+# 125 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 9744 "parser_cocci_menhir.ml"
+ ) = Obj.magic p00 in
+ let _startpos = _startpos_p00_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let p0 = p00 in
+ let ty =
+ let p = p0 in
+
+# 661 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
+# 9755 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 9761 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 9768 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 9774 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 8595 "parser_cocci_menhir.ml"
+# 9811 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 8600 "parser_cocci_menhir.ml"
+# 9816 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 469 "parser_cocci_menhir.mly"
+# 603 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 8613 "parser_cocci_menhir.ml"
+# 9829 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 8619 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 9835 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 8627 "parser_cocci_menhir.ml"
+# 9843 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8633 "parser_cocci_menhir.ml"
+# 9849 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 8670 "parser_cocci_menhir.ml"
+# 9886 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 8675 "parser_cocci_menhir.ml"
+# 9891 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 471 "parser_cocci_menhir.mly"
+# 605 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 8688 "parser_cocci_menhir.ml"
+# 9904 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 8694 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 9910 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 8702 "parser_cocci_menhir.ml"
+# 9918 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8708 "parser_cocci_menhir.ml"
+# 9924 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 8745 "parser_cocci_menhir.ml"
+# 9961 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 8750 "parser_cocci_menhir.ml"
+# 9966 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 473 "parser_cocci_menhir.mly"
+# 607 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 8763 "parser_cocci_menhir.ml"
+# 9979 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 8769 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 9985 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 8777 "parser_cocci_menhir.ml"
+# 9993 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8783 "parser_cocci_menhir.ml"
+# 9999 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 8820 "parser_cocci_menhir.ml"
+# 10036 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 8825 "parser_cocci_menhir.ml"
+# 10041 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let p = p0 in
-# 475 "parser_cocci_menhir.mly"
+# 609 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = p in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 8839 "parser_cocci_menhir.ml"
+# 10055 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 8845 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 10061 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 8853 "parser_cocci_menhir.ml"
+# 10069 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8859 "parser_cocci_menhir.ml"
+# 10075 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 8905 "parser_cocci_menhir.ml"
+# 10121 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r00 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 8910 "parser_cocci_menhir.ml"
+# 10126 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let r1 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 8915 "parser_cocci_menhir.ml"
+# 10131 "parser_cocci_menhir.ml"
) = Obj.magic r1 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let p = p0 in
let r = r0 in
-# 478 "parser_cocci_menhir.mly"
+# 612 "parser_cocci_menhir.mly"
( let nm = (r,P.id2name p) in
(* this is only possible when we are in a metavar decl. Otherwise,
it will be represented already as a MetaType *)
let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
Ast0.Impure (*will be ignored*))) )
-# 8935 "parser_cocci_menhir.ml"
+# 10151 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 8941 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 10157 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 8949 "parser_cocci_menhir.ml"
+# 10165 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 8955 "parser_cocci_menhir.ml"
+# 10171 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 8992 "parser_cocci_menhir.ml"
+# 10208 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 8997 "parser_cocci_menhir.ml"
+# 10213 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 485 "parser_cocci_menhir.mly"
+# 619 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 9010 "parser_cocci_menhir.ml"
+# 10226 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 9016 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 10232 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9024 "parser_cocci_menhir.ml"
+# 10240 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9030 "parser_cocci_menhir.ml"
+# 10246 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty200 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 9072 "parser_cocci_menhir.ml"
+# 10288 "parser_cocci_menhir.ml"
) = Obj.magic ty200 in
let ty100 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 9077 "parser_cocci_menhir.ml"
+# 10293 "parser_cocci_menhir.ml"
) = Obj.magic ty100 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 9082 "parser_cocci_menhir.ml"
+# 10298 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty2 = ty20 in
let ty1 = ty10 in
-# 487 "parser_cocci_menhir.mly"
+# 621 "parser_cocci_menhir.mly"
( Ast0.wrap
(Ast0.BaseType
(Ast.LongLongType,
[P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 9100 "parser_cocci_menhir.ml"
+# 10316 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 9106 "parser_cocci_menhir.ml"
+# 666 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
+# 10322 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9114 "parser_cocci_menhir.ml"
+# 10330 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9120 "parser_cocci_menhir.ml"
+# 10336 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 9152 "parser_cocci_menhir.ml"
+# 10373 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 10378 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty0 = ty00 in
+ let r = r0 in
let ty =
let ty = ty0 in
-# 469 "parser_cocci_menhir.mly"
+# 603 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 9164 "parser_cocci_menhir.ml"
+# 10391 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 9170 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 10397 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9178 "parser_cocci_menhir.ml"
+# 10405 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9184 "parser_cocci_menhir.ml"
+# 10411 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 9216 "parser_cocci_menhir.ml"
+# 10448 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 10453 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty0 = ty00 in
+ let r = r0 in
let ty =
let ty = ty0 in
-# 471 "parser_cocci_menhir.mly"
+# 605 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 9228 "parser_cocci_menhir.ml"
+# 10466 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 9234 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 10472 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9242 "parser_cocci_menhir.ml"
+# 10480 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9248 "parser_cocci_menhir.ml"
+# 10486 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 9280 "parser_cocci_menhir.ml"
+# 10523 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 10528 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty0 = ty00 in
+ let r = r0 in
let ty =
let ty = ty0 in
-# 473 "parser_cocci_menhir.mly"
+# 607 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 9292 "parser_cocci_menhir.ml"
+# 10541 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 9298 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 10547 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9306 "parser_cocci_menhir.ml"
+# 10555 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9312 "parser_cocci_menhir.ml"
+# 10561 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_p00_;
MenhirLib.EngineTypes.endp = _endpos_p00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 9344 "parser_cocci_menhir.ml"
+# 10598 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 10603 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let p0 = p00 in
+ let r = r0 in
let ty =
let p = p0 in
-# 475 "parser_cocci_menhir.mly"
+# 609 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = p in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 9357 "parser_cocci_menhir.ml"
+# 10617 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 9363 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 10623 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9371 "parser_cocci_menhir.ml"
+# 10631 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9377 "parser_cocci_menhir.ml"
+# 10637 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_p00_;
MenhirLib.EngineTypes.endp = _endpos_p00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.semv = r00;
MenhirLib.EngineTypes.startp = _startpos_r00_;
MenhirLib.EngineTypes.endp = _endpos_r00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = r1;
+ MenhirLib.EngineTypes.startp = _startpos_r1_;
+ MenhirLib.EngineTypes.endp = _endpos_r1_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 9418 "parser_cocci_menhir.ml"
+# 10683 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r00 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 9423 "parser_cocci_menhir.ml"
+# 10688 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
+ let r1 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 10693 "parser_cocci_menhir.ml"
+ ) = Obj.magic r1 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let p0 = p00 in
let r0 = r00 in
+ let r = r1 in
let ty =
let p = p0 in
let r = r0 in
-# 478 "parser_cocci_menhir.mly"
+# 612 "parser_cocci_menhir.mly"
( let nm = (r,P.id2name p) in
(* this is only possible when we are in a metavar decl. Otherwise,
it will be represented already as a MetaType *)
let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
Ast0.Impure (*will be ignored*))) )
-# 9442 "parser_cocci_menhir.ml"
+# 10713 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 9448 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 10719 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9456 "parser_cocci_menhir.ml"
+# 10727 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9462 "parser_cocci_menhir.ml"
+# 10733 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_ty00_;
MenhirLib.EngineTypes.endp = _endpos_ty00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- } = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 9494 "parser_cocci_menhir.ml"
+# 10770 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 10775 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty0 = ty00 in
+ let r = r0 in
let ty =
let ty = ty0 in
-# 485 "parser_cocci_menhir.mly"
+# 619 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 9506 "parser_cocci_menhir.ml"
+# 10788 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 9512 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 10794 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9520 "parser_cocci_menhir.ml"
+# 10802 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9526 "parser_cocci_menhir.ml"
+# 10808 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_ty100_;
MenhirLib.EngineTypes.endp = _endpos_ty100_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty200 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 9563 "parser_cocci_menhir.ml"
+# 10850 "parser_cocci_menhir.ml"
) = Obj.magic ty200 in
let ty100 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 9568 "parser_cocci_menhir.ml"
+# 10855 "parser_cocci_menhir.ml"
) = Obj.magic ty100 in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 10860 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
let ty20 = ty200 in
let ty10 = ty100 in
+ let r = r0 in
let ty =
let ty2 = ty20 in
let ty1 = ty10 in
-# 487 "parser_cocci_menhir.mly"
+# 621 "parser_cocci_menhir.mly"
( Ast0.wrap
(Ast0.BaseType
(Ast.LongLongType,
[P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 9585 "parser_cocci_menhir.ml"
+# 10878 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
- ( ty )
-# 9591 "parser_cocci_menhir.ml"
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 10884 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9599 "parser_cocci_menhir.ml"
+# 10892 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9605 "parser_cocci_menhir.ml"
+# 10898 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 50 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 9637 "parser_cocci_menhir.ml"
+# 10930 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 495 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) )
-# 9649 "parser_cocci_menhir.ml"
+# 603 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
+# 10942 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 9655 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 10948 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9663 "parser_cocci_menhir.ml"
+# 10956 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9669 "parser_cocci_menhir.ml"
+# 10962 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 9701 "parser_cocci_menhir.ml"
+# 10994 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 497 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) )
-# 9713 "parser_cocci_menhir.ml"
+# 605 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
+# 11006 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 9719 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 11012 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9727 "parser_cocci_menhir.ml"
+# 11020 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9733 "parser_cocci_menhir.ml"
+# 11026 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 9765 "parser_cocci_menhir.ml"
+# 11058 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 499 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) )
-# 9777 "parser_cocci_menhir.ml"
+# 607 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
+# 11070 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 9783 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 11076 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9791 "parser_cocci_menhir.ml"
+# 11084 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9797 "parser_cocci_menhir.ml"
+# 11090 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = i00;
- MenhirLib.EngineTypes.startp = _startpos_i00_;
- MenhirLib.EngineTypes.endp = _endpos_i00_;
+ MenhirLib.EngineTypes.semv = p00;
+ MenhirLib.EngineTypes.startp = _startpos_p00_;
+ MenhirLib.EngineTypes.endp = _endpos_p00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = s00;
- MenhirLib.EngineTypes.startp = _startpos_s00_;
- MenhirLib.EngineTypes.endp = _endpos_s00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let i00 : 'tv_ident = Obj.magic i00 in
- let s00 : (
-# 50 "parser_cocci_menhir.mly"
- (Data.clt)
-# 9835 "parser_cocci_menhir.ml"
- ) = Obj.magic s00 in
+ let p00 : (
+# 131 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 11122 "parser_cocci_menhir.ml"
+ ) = Obj.magic p00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let i0 = i00 in
- let s0 = s00 in
+ let p0 = p00 in
let ty =
- let i = i0 in
- let s = s0 in
+ let p = p0 in
-# 501 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)) )
-# 9849 "parser_cocci_menhir.ml"
+# 609 "parser_cocci_menhir.mly"
+ ( let (nm,pure,clt) = p in
+ Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
+# 11135 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 9855 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 11141 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9863 "parser_cocci_menhir.ml"
+# 11149 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9869 "parser_cocci_menhir.ml"
+# 11155 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = i00;
- MenhirLib.EngineTypes.startp = _startpos_i00_;
- MenhirLib.EngineTypes.endp = _endpos_i00_;
+ MenhirLib.EngineTypes.semv = p00;
+ MenhirLib.EngineTypes.startp = _startpos_p00_;
+ MenhirLib.EngineTypes.endp = _endpos_p00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = s00;
- MenhirLib.EngineTypes.startp = _startpos_s00_;
- MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let i00 : 'tv_ident = Obj.magic i00 in
- let s00 : 'tv_struct_or_union = Obj.magic s00 in
+ let p00 : (
+# 125 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 11196 "parser_cocci_menhir.ml"
+ ) = Obj.magic p00 in
+ let r00 : (
+# 112 "parser_cocci_menhir.mly"
+ (string)
+# 11201 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let i0 = i00 in
- let s0 = s00 in
+ let p0 = p00 in
+ let r0 = r00 in
let ty =
- let i = i0 in
- let s = s0 in
+ let p = p0 in
+ let r = r0 in
-# 503 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
-# 9917 "parser_cocci_menhir.ml"
+# 612 "parser_cocci_menhir.mly"
+ ( let nm = (r,P.id2name p) in
+ (* this is only possible when we are in a metavar decl. Otherwise,
+ it will be represented already as a MetaType *)
+ let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
+ Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
+ Ast0.Impure (*will be ignored*))) )
+# 11220 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 9923 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 11226 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 9931 "parser_cocci_menhir.ml"
+# 11234 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 9937 "parser_cocci_menhir.ml"
+# 11240 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r00;
- MenhirLib.EngineTypes.startp = _startpos_r00_;
- MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d00;
- MenhirLib.EngineTypes.startp = _startpos_d00_;
- MenhirLib.EngineTypes.endp = _endpos_d00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = l00;
- MenhirLib.EngineTypes.startp = _startpos_l00_;
- MenhirLib.EngineTypes.endp = _endpos_l00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = s00;
- MenhirLib.EngineTypes.startp = _startpos_s00_;
- MenhirLib.EngineTypes.endp = _endpos_s00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let r00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 9984 "parser_cocci_menhir.ml"
- ) = Obj.magic r00 in
- let d00 : 'tv_struct_decl_list = Obj.magic d00 in
- let l00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 9990 "parser_cocci_menhir.ml"
- ) = Obj.magic l00 in
- let s00 : 'tv_struct_or_union = Obj.magic s00 in
+ let ty00 : (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 11272 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let r0 = r00 in
- let d0 = d00 in
- let l0 = l00 in
- let s0 = s00 in
+ let ty0 = ty00 in
let ty =
- let r = r0 in
- let d = d0 in
- let l = l0 in
- let s = s0 in
- let i =
-
-# 39 "standard.mly"
- ( None )
-# 10010 "parser_cocci_menhir.ml"
-
- in
+ let ty = ty0 in
-# 506 "parser_cocci_menhir.mly"
- ( (if i = None && !Data.in_iso
- then failwith "structures must be named in the iso file");
- Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
- P.clt2mcode "{" l,
- d, P.clt2mcode "}" r)) )
-# 10020 "parser_cocci_menhir.ml"
+# 619 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
+# 11284 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 10026 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 11290 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 10034 "parser_cocci_menhir.ml"
+# 11298 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 10040 "parser_cocci_menhir.ml"
+# 11304 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r00;
- MenhirLib.EngineTypes.startp = _startpos_r00_;
- MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.semv = ty200;
+ MenhirLib.EngineTypes.startp = _startpos_ty200_;
+ MenhirLib.EngineTypes.endp = _endpos_ty200_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d00;
- MenhirLib.EngineTypes.startp = _startpos_d00_;
- MenhirLib.EngineTypes.endp = _endpos_d00_;
+ MenhirLib.EngineTypes.semv = ty100;
+ MenhirLib.EngineTypes.startp = _startpos_ty100_;
+ MenhirLib.EngineTypes.endp = _endpos_ty100_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = l00;
- MenhirLib.EngineTypes.startp = _startpos_l00_;
- MenhirLib.EngineTypes.endp = _endpos_l00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = x000;
- MenhirLib.EngineTypes.startp = _startpos_x000_;
- MenhirLib.EngineTypes.endp = _endpos_x000_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = s00;
- MenhirLib.EngineTypes.startp = _startpos_s00_;
- MenhirLib.EngineTypes.endp = _endpos_s00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let r00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 10092 "parser_cocci_menhir.ml"
- ) = Obj.magic r00 in
- let d00 : 'tv_struct_decl_list = Obj.magic d00 in
- let l00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 10098 "parser_cocci_menhir.ml"
- ) = Obj.magic l00 in
- let x000 : 'tv_ident = Obj.magic x000 in
- let s00 : 'tv_struct_or_union = Obj.magic s00 in
+ let ty200 : (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 11341 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty200 in
+ let ty100 : (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 11346 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty100 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let r0 = r00 in
- let d0 = d00 in
- let l0 = l00 in
- let x00 = x000 in
- let s0 = s00 in
+ let ty20 = ty200 in
+ let ty10 = ty100 in
let ty =
- let r = r0 in
- let d = d0 in
- let l = l0 in
- let x0 = x00 in
- let s = s0 in
- let i =
- let x = x0 in
-
-# 41 "standard.mly"
- ( Some x )
-# 10122 "parser_cocci_menhir.ml"
-
- in
+ let ty2 = ty20 in
+ let ty1 = ty10 in
-# 506 "parser_cocci_menhir.mly"
- ( (if i = None && !Data.in_iso
- then failwith "structures must be named in the iso file");
- Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
- P.clt2mcode "{" l,
- d, P.clt2mcode "}" r)) )
-# 10132 "parser_cocci_menhir.ml"
+# 621 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.BaseType
+ (Ast.LongLongType,
+ [P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
+# 11363 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
- ( ty )
-# 10138 "parser_cocci_menhir.ml"
+# 669 "parser_cocci_menhir.mly"
+ ( ty )
+# 11369 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 10146 "parser_cocci_menhir.ml"
+# 11377 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 10152 "parser_cocci_menhir.ml"
+# 11383 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r00;
- MenhirLib.EngineTypes.startp = _startpos_r00_;
- MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d00;
- MenhirLib.EngineTypes.startp = _startpos_d00_;
- MenhirLib.EngineTypes.endp = _endpos_d00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = l00;
- MenhirLib.EngineTypes.startp = _startpos_l00_;
- MenhirLib.EngineTypes.endp = _endpos_l00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = s00;
- MenhirLib.EngineTypes.startp = _startpos_s00_;
- MenhirLib.EngineTypes.endp = _endpos_s00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let r00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 10199 "parser_cocci_menhir.ml"
- ) = Obj.magic r00 in
- let d00 : 'tv_struct_decl_list = Obj.magic d00 in
- let l00 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 10205 "parser_cocci_menhir.ml"
- ) = Obj.magic l00 in
- let s00 : (
-# 64 "parser_cocci_menhir.mly"
- (Parse_aux.info)
-# 10210 "parser_cocci_menhir.ml"
- ) = Obj.magic s00 in
+ let ty00 : (
+# 116 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 11415 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let r0 = r00 in
- let d0 = d00 in
- let l0 = l00 in
- let s0 = s00 in
+ let ty0 = ty00 in
let ty =
- let r = r0 in
- let d = d0 in
- let l = l0 in
- let s = s0 in
+ let ty = ty0 in
-# 512 "parser_cocci_menhir.mly"
- ( let (nm,pure,clt) = s in
- let ty = Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
- Ast0.wrap(Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
-# 10230 "parser_cocci_menhir.ml"
+# 629 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) )
+# 11427 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 10236 "parser_cocci_menhir.ml"
+# 11433 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 10244 "parser_cocci_menhir.ml"
+# 11441 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 10250 "parser_cocci_menhir.ml"
+# 11447 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos_m_;
MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = p00;
- MenhirLib.EngineTypes.startp = _startpos_p00_;
- MenhirLib.EngineTypes.endp = _endpos_p00_;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = x0;
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let p00 : (
-# 59 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 10282 "parser_cocci_menhir.ml"
- ) = Obj.magic p00 in
+ let ty00 : (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 11479 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_m_ in
let _v : 'tv_ctype = let ty =
- let p0 = p00 in
+ let ty0 = ty00 in
let ty =
- let p = p0 in
+ let ty = ty0 in
-# 516 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
-# 10294 "parser_cocci_menhir.ml"
+# 631 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) )
+# 11491 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 10300 "parser_cocci_menhir.ml"
+# 11497 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 10308 "parser_cocci_menhir.ml"
+# 11505 "parser_cocci_menhir.ml"
in
-# 529 "parser_cocci_menhir.mly"
+# 674 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 10314 "parser_cocci_menhir.ml"
+# 11511 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r;
- MenhirLib.EngineTypes.startp = _startpos_r_;
- MenhirLib.EngineTypes.endp = _endpos_r_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
} = _menhir_stack in
- let r : (
-# 51 "parser_cocci_menhir.mly"
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 10335 "parser_cocci_menhir.ml"
- ) = Obj.magic r in
- let _startpos = _startpos_r_ in
- let _endpos = _endpos_r_ in
- let _v : 'tv_ctype =
-# 531 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,None)) )
-# 10342 "parser_cocci_menhir.ml"
+# 11543 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let ty0 = ty00 in
+ let ty =
+ let ty = ty0 in
+
+# 633 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) )
+# 11555 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 11561 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 11569 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 11575 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r;
- MenhirLib.EngineTypes.startp = _startpos_r_;
- MenhirLib.EngineTypes.endp = _endpos_r_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
} = _menhir_stack in
- let r : (
-# 51 "parser_cocci_menhir.mly"
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 115 "parser_cocci_menhir.mly"
(Data.clt)
-# 10363 "parser_cocci_menhir.ml"
- ) = Obj.magic r in
- let _startpos = _startpos_r_ in
- let _endpos = _endpos_r_ in
- let _v : 'tv_ctype =
-# 533 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,None)) )
-# 10370 "parser_cocci_menhir.ml"
+# 11607 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let ty0 = ty00 in
+ let ty =
+ let ty = ty0 in
+
+# 635 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) )
+# 11619 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 11625 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 11633 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 11639 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = rp;
- MenhirLib.EngineTypes.startp = _startpos_rp_;
- MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = lp;
- MenhirLib.EngineTypes.startp = _startpos_lp_;
- MenhirLib.EngineTypes.endp = _endpos_lp_;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let rp : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 10401 "parser_cocci_menhir.ml"
- ) = Obj.magic rp in
- let t : 'tv_midzero_list_ctype_ctype_ = Obj.magic t in
- let lp : (
-# 76 "parser_cocci_menhir.mly"
- (Data.clt)
-# 10407 "parser_cocci_menhir.ml"
- ) = Obj.magic lp in
- let _startpos = _startpos_lp_ in
- let _endpos = _endpos_rp_ in
- let _v : 'tv_ctype =
-# 535 "parser_cocci_menhir.mly"
- ( let (mids,code) = t in
- Ast0.wrap
- (Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) )
-# 10416 "parser_cocci_menhir.ml"
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 115 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 11671 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let ty0 = ty00 in
+ let ty =
+ let ty = ty0 in
+
+# 637 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) )
+# 11683 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 11689 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 11697 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 11703 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let _2 : 'tv_list_array_dec_ = Obj.magic _2 in
- let _1 : 'tv_ident = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_d_ident =
-# 1042 "parser_cocci_menhir.mly"
- ( (_1,
- function t ->
- List.fold_right
- (function (l,i,r) ->
- function rest ->
- Ast0.wrap
- (Ast0.Array(rest,P.clt2mcode "[" l,i,P.clt2mcode "]" r)))
- _2 t) )
-# 10453 "parser_cocci_menhir.ml"
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 115 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 11735 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let ty0 = ty00 in
+ let ty =
+ let ty = ty0 in
+
+# 639 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) )
+# 11747 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 11753 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 11761 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 11767 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = i;
- MenhirLib.EngineTypes.startp = _startpos_i_;
- MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = i00;
+ MenhirLib.EngineTypes.startp = _startpos_i00_;
+ MenhirLib.EngineTypes.endp = _endpos_i00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
};
} = _menhir_stack in
- let i : 'tv_ident = Obj.magic i in
- let t : 'tv_ctype = Obj.magic t in
- let _startpos = _startpos_t_ in
- let _endpos = _endpos_i_ in
- let _v : 'tv_decl =
-# 803 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Param(t, Some i)) )
-# 10483 "parser_cocci_menhir.ml"
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let i00 : 'tv_ident = Obj.magic i00 in
+ let s00 : (
+# 116 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 11805 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let i0 = i00 in
+ let s0 = s00 in
+ let ty =
+ let i = i0 in
+ let s = s0 in
+
+# 641 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) )
+# 11819 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 11825 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 11833 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 11839 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids00;
+ MenhirLib.EngineTypes.startp = _startpos_ids00_;
+ MenhirLib.EngineTypes.endp = _endpos_ids00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
} = _menhir_stack in
- let t : 'tv_ctype = Obj.magic t in
- let _startpos = _startpos_t_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_decl =
-# 804 "parser_cocci_menhir.mly"
- ( (*verify in FunDecl*) Ast0.wrap(Ast0.Param(t, None)) )
-# 10507 "parser_cocci_menhir.ml"
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 11886 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 11892 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let s00 : (
+# 116 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 11897 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let r0 = r00 in
+ let ids0 = ids00 in
+ let l0 = l00 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let ids = ids0 in
+ let l = l0 in
+ let s = s0 in
+ let i =
+
+# 39 "standard.mly"
+ ( None )
+# 11916 "parser_cocci_menhir.ml"
+
+ in
+
+# 643 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "enums must be named in the iso file");
+ Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)),
+ P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) )
+# 11925 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 11931 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 11939 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 11945 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = rp1;
- MenhirLib.EngineTypes.startp = _startpos_rp1_;
- MenhirLib.EngineTypes.endp = _endpos_rp1_;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = lp1;
- MenhirLib.EngineTypes.startp = _startpos_lp1_;
- MenhirLib.EngineTypes.endp = _endpos_lp1_;
+ MenhirLib.EngineTypes.semv = ids00;
+ MenhirLib.EngineTypes.startp = _startpos_ids00_;
+ MenhirLib.EngineTypes.endp = _endpos_ids00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = rp;
- MenhirLib.EngineTypes.startp = _startpos_rp_;
- MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = i;
- MenhirLib.EngineTypes.startp = _startpos_i_;
- MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.semv = x000;
+ MenhirLib.EngineTypes.startp = _startpos_x000_;
+ MenhirLib.EngineTypes.endp = _endpos_x000_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = s;
- MenhirLib.EngineTypes.startp = _startpos_s_;
- MenhirLib.EngineTypes.endp = _endpos_s_;
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = lp;
- MenhirLib.EngineTypes.startp = _startpos_lp_;
- MenhirLib.EngineTypes.endp = _endpos_lp_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
};
};
};
} = _menhir_stack in
- let rp1 : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 10563 "parser_cocci_menhir.ml"
- ) = Obj.magic rp1 in
- let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
- let lp1 : (
-# 76 "parser_cocci_menhir.mly"
- (Data.clt)
-# 10569 "parser_cocci_menhir.ml"
- ) = Obj.magic lp1 in
- let rp : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 10574 "parser_cocci_menhir.ml"
- ) = Obj.magic rp in
- let i : 'tv_ident = Obj.magic i in
- let s : (
-# 99 "parser_cocci_menhir.mly"
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 10580 "parser_cocci_menhir.ml"
- ) = Obj.magic s in
- let lp : (
-# 76 "parser_cocci_menhir.mly"
+# 11997 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 10585 "parser_cocci_menhir.ml"
- ) = Obj.magic lp in
- let t : 'tv_ctype = Obj.magic t in
- let _startpos = _startpos_t_ in
- let _endpos = _endpos_rp1_ in
- let _v : 'tv_decl =
-# 807 "parser_cocci_menhir.mly"
- ( let fnptr =
- Ast0.wrap
- (Ast0.FunctionPointer
- (t,P.clt2mcode "(" lp,P.clt2mcode "*" s,P.clt2mcode ")" rp,
- P.clt2mcode "(" lp1,d,P.clt2mcode ")" rp1)) in
- Ast0.wrap(Ast0.Param(fnptr, Some i)) )
-# 10598 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : (
-# 64 "parser_cocci_menhir.mly"
- (Parse_aux.info)
-# 10619 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_decl =
-# 814 "parser_cocci_menhir.mly"
- ( let (nm,pure,clt) = _1 in
- Ast0.wrap(Ast0.MetaParam(P.clt2mcode nm clt,pure)) )
-# 10627 "parser_cocci_menhir.ml"
+# 12003 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let x000 : 'tv_ident = Obj.magic x000 in
+ let s00 : (
+# 116 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12009 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let r0 = r00 in
+ let ids0 = ids00 in
+ let l0 = l00 in
+ let x00 = x000 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let ids = ids0 in
+ let l = l0 in
+ let x0 = x00 in
+ let s = s0 in
+ let i =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 12031 "parser_cocci_menhir.ml"
+
+ in
+
+# 643 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "enums must be named in the iso file");
+ Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)),
+ P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) )
+# 12040 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 12046 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 12054 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 12060 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = i00;
+ MenhirLib.EngineTypes.startp = _startpos_i00_;
+ MenhirLib.EngineTypes.endp = _endpos_i00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : (
-# 59 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 10648 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_decl_ident =
-# 1527 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
-# 10655 "parser_cocci_menhir.ml"
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let i00 : 'tv_type_ident = Obj.magic i00 in
+ let s00 : 'tv_struct_or_union = Obj.magic s00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let i0 = i00 in
+ let s0 = s00 in
+ let ty =
+ let i = i0 in
+ let s = s0 in
+
+# 648 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
+# 12108 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 12114 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 12122 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 12128 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d00;
+ MenhirLib.EngineTypes.startp = _startpos_d00_;
+ MenhirLib.EngineTypes.endp = _endpos_d00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : (
-# 62 "parser_cocci_menhir.mly"
- (Parse_aux.idinfo)
-# 10676 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_decl_ident =
-# 1529 "parser_cocci_menhir.mly"
- ( let (nm,constraints,pure,clt) = _1 in
- Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
-# 10684 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_decl_list_decl_ =
-# 1549 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.DOTS([])) )
-# 10701 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12175 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let d00 : 'tv_struct_decl_list = Obj.magic d00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12181 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let s00 : 'tv_struct_or_union = Obj.magic s00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let r0 = r00 in
+ let d0 = d00 in
+ let l0 = l00 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let d = d0 in
+ let l = l0 in
+ let s = s0 in
+ let i =
+
+# 39 "standard.mly"
+ ( None )
+# 12201 "parser_cocci_menhir.ml"
+
+ in
+
+# 651 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "structures must be named in the iso file");
+ Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
+ P.clt2mcode "{" l,
+ d, P.clt2mcode "}" r)) )
+# 12211 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 12217 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 12225 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 12231 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
MenhirLib.EngineTypes.endp = _endpos;
MenhirLib.EngineTypes.next = _menhir_stack;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d00;
+ MenhirLib.EngineTypes.startp = _startpos_d00_;
+ MenhirLib.EngineTypes.endp = _endpos_d00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = x000;
+ MenhirLib.EngineTypes.startp = _startpos_x000_;
+ MenhirLib.EngineTypes.endp = _endpos_x000_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12283 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let d00 : 'tv_struct_decl_list = Obj.magic d00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12289 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let x000 : 'tv_type_ident = Obj.magic x000 in
+ let s00 : 'tv_struct_or_union = Obj.magic s00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let r0 = r00 in
+ let d0 = d00 in
+ let l0 = l00 in
+ let x00 = x000 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let d = d0 in
+ let l = l0 in
+ let x0 = x00 in
+ let s = s0 in
+ let i =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 12313 "parser_cocci_menhir.ml"
+
+ in
+
+# 651 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "structures must be named in the iso file");
+ Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
+ P.clt2mcode "{" l,
+ d, P.clt2mcode "}" r)) )
+# 12323 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 12329 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 12337 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 12343 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d00;
+ MenhirLib.EngineTypes.startp = _startpos_d00_;
+ MenhirLib.EngineTypes.endp = _endpos_d00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_decl_list_start_decl_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_decl_list_decl_ =
-# 1551 "parser_cocci_menhir.mly"
- (let circle x =
- match Ast0.unwrap x with Ast0.Pcircles(_) -> true | _ -> false in
- if List.exists circle _1
- then Ast0.wrap(Ast0.CIRCLES(_1))
- else Ast0.wrap(Ast0.DOTS(_1)) )
-# 10729 "parser_cocci_menhir.ml"
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12390 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let d00 : 'tv_struct_decl_list = Obj.magic d00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12396 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let s00 : (
+# 131 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 12401 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let r0 = r00 in
+ let d0 = d00 in
+ let l0 = l00 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let d = d0 in
+ let l = l0 in
+ let s = s0 in
+
+# 657 "parser_cocci_menhir.mly"
+ ( let (nm,pure,clt) = s in
+ let ty = Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
+ Ast0.wrap(Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
+# 12421 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 12427 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 12435 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 12441 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_decl_list_name_opt_decl_ =
-# 1549 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.DOTS([])) )
-# 10746 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = p00;
+ MenhirLib.EngineTypes.startp = _startpos_p00_;
+ MenhirLib.EngineTypes.endp = _endpos_p00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let p00 : (
+# 125 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 12473 "parser_cocci_menhir.ml"
+ ) = Obj.magic p00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_ctype = let ty =
+ let p0 = p00 in
+ let ty =
+ let p = p0 in
+
+# 661 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
+# 12485 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 12491 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 12499 "parser_cocci_menhir.ml"
+
+ in
+
+# 674 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 12505 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_decl_list_start_name_opt_decl_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_decl_list_name_opt_decl_ =
-# 1551 "parser_cocci_menhir.mly"
- (let circle x =
- match Ast0.unwrap x with Ast0.Pcircles(_) -> true | _ -> false in
- if List.exists circle _1
- then Ast0.wrap(Ast0.CIRCLES(_1))
- else Ast0.wrap(Ast0.DOTS(_1)) )
-# 10774 "parser_cocci_menhir.ml"
+ let r : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12526 "parser_cocci_menhir.ml"
+ ) = Obj.magic r in
+ let _startpos = _startpos_r_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_ctype =
+# 676 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,None)) )
+# 12533 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_decl_list_start_decl_ =
-# 1558 "parser_cocci_menhir.mly"
- ( [_1] )
-# 10798 "parser_cocci_menhir.ml"
+ let r : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12554 "parser_cocci_menhir.ml"
+ ) = Obj.magic r in
+ let _startpos = _startpos_r_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_ctype =
+# 678 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,None)) )
+# 12561 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = rp;
+ MenhirLib.EngineTypes.startp = _startpos_rp_;
+ MenhirLib.EngineTypes.endp = _endpos_rp_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = lp;
+ MenhirLib.EngineTypes.startp = _startpos_lp_;
+ MenhirLib.EngineTypes.endp = _endpos_lp_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let _3 : 'tv_decl_list_start_decl_ = Obj.magic _3 in
- let _2 : (
-# 107 "parser_cocci_menhir.mly"
+ let rp : (
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 10830 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_decl_list_start_decl_ =
-# 1560 "parser_cocci_menhir.mly"
- ( _1::Ast0.wrap(Ast0.PComma(P.clt2mcode "," _2))::_3 )
-# 10838 "parser_cocci_menhir.ml"
+# 12592 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp in
+ let t : 'tv_midzero_list_ctype_ctype_ = Obj.magic t in
+ let lp : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12598 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp in
+ let _startpos = _startpos_lp_ in
+ let _endpos = _endpos_rp_ in
+ let _v : 'tv_ctype =
+# 680 "parser_cocci_menhir.mly"
+ ( let (mids,code) = t in
+ Ast0.wrap
+ (Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) )
+# 12607 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_list_comma_decls_TEllipsis_decl__ = Obj.magic _2 in
- let _1 : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 10865 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let _2 : 'tv_list_array_dec_ = Obj.magic _2 in
+ let _1 : 'tv_mident = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : 'tv_decl_list_start_decl_ =
-# 1562 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." _1))::
- (List.concat(List.map (function x -> x (P.mkpdots "...")) _2)) )
-# 10873 "parser_cocci_menhir.ml"
+ let _v : 'tv_d_ident =
+# 1241 "parser_cocci_menhir.mly"
+ ( (_1,
+ function t ->
+ List.fold_right
+ (function (l,i,r) ->
+ function rest ->
+ Ast0.wrap
+ (Ast0.Array(rest,P.clt2mcode "[" l,i,P.clt2mcode "]" r)))
+ _2 t) )
+# 12644 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = i;
+ MenhirLib.EngineTypes.startp = _startpos_i_;
+ MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_decl_list_start_name_opt_decl_ =
-# 1558 "parser_cocci_menhir.mly"
- ( [_1] )
-# 10897 "parser_cocci_menhir.ml"
+ let i : 'tv_ident = Obj.magic i in
+ let t : 'tv_ctype = Obj.magic t in
+ let _startpos = _startpos_t_ in
+ let _endpos = _endpos_i_ in
+ let _v : 'tv_decl =
+# 993 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Param(t, Some i)) )
+# 12674 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _3 : 'tv_decl_list_start_name_opt_decl_ = Obj.magic _3 in
- let _2 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 10929 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_decl_list_start_name_opt_decl_ =
-# 1560 "parser_cocci_menhir.mly"
- ( _1::Ast0.wrap(Ast0.PComma(P.clt2mcode "," _2))::_3 )
-# 10937 "parser_cocci_menhir.ml"
+ let t : 'tv_ctype = Obj.magic t in
+ let _startpos = _startpos_t_ in
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_decl =
+# 994 "parser_cocci_menhir.mly"
+ ( (*verify in FunDecl*) Ast0.wrap(Ast0.Param(t, None)) )
+# 12698 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = rp1;
+ MenhirLib.EngineTypes.startp = _startpos_rp1_;
+ MenhirLib.EngineTypes.endp = _endpos_rp1_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = lp1;
+ MenhirLib.EngineTypes.startp = _startpos_lp1_;
+ MenhirLib.EngineTypes.endp = _endpos_lp1_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = rp;
+ MenhirLib.EngineTypes.startp = _startpos_rp_;
+ MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = i;
+ MenhirLib.EngineTypes.startp = _startpos_i_;
+ MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = s;
+ MenhirLib.EngineTypes.startp = _startpos_s_;
+ MenhirLib.EngineTypes.endp = _endpos_s_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = lp;
+ MenhirLib.EngineTypes.startp = _startpos_lp_;
+ MenhirLib.EngineTypes.endp = _endpos_lp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ };
};
} = _menhir_stack in
- let _2 : 'tv_list_comma_decls_TEllipsis_name_opt_decl__ = Obj.magic _2 in
- let _1 : (
-# 73 "parser_cocci_menhir.mly"
+ let rp1 : (
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 10964 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_decl_list_start_name_opt_decl_ =
-# 1562 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." _1))::
- (List.concat(List.map (function x -> x (P.mkpdots "...")) _2)) )
-# 10972 "parser_cocci_menhir.ml"
+# 12754 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp1 in
+ let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
+ let lp1 : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12760 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp1 in
+ let rp : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12765 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp in
+ let i : 'tv_ident = Obj.magic i in
+ let s : (
+# 166 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12771 "parser_cocci_menhir.ml"
+ ) = Obj.magic s in
+ let lp : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 12776 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp in
+ let t : 'tv_ctype = Obj.magic t in
+ let _startpos = _startpos_t_ in
+ let _endpos = _endpos_rp1_ in
+ let _v : 'tv_decl =
+# 997 "parser_cocci_menhir.mly"
+ ( let fnptr =
+ Ast0.wrap
+ (Ast0.FunctionPointer
+ (t,P.clt2mcode "(" lp,P.clt2mcode "*" s,P.clt2mcode ")" rp,
+ P.clt2mcode "(" lp1,d,P.clt2mcode ")" rp1)) in
+ Ast0.wrap(Ast0.Param(fnptr, Some i)) )
+# 12789 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 10993 "parser_cocci_menhir.ml"
+# 12810 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_decl =
+# 1004 "parser_cocci_menhir.mly"
+ ( let (nm,pure,clt) = _1 in
+ Ast0.wrap(Ast0.MetaParam(P.clt2mcode nm clt,pure)) )
+# 12818 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 12839 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_decl =
+# 1006 "parser_cocci_menhir.mly"
+ ( tmeta_to_param _1 )
+# 12846 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 125 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 12867 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_decl_ident =
+# 1887 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
+# 12874 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 129 "parser_cocci_menhir.mly"
+ (Parse_aux.idinfo)
+# 12895 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_decl_ident =
+# 1889 "parser_cocci_menhir.mly"
+ ( let (nm,constraints,pure,clt) = _1 in
+ Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
+# 12903 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_empty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_decl_list_decl_ =
+# 1911 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.DOTS
+ (_1
+ (fun _ d -> Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." d)))
+ (fun c -> Ast0.PComma c))) )
+# 12931 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_empty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_decl_list_name_opt_decl_ =
+# 1911 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.DOTS
+ (_1
+ (fun _ d -> Ast0.wrap(Ast0.Pdots(P.clt2mcode "..." d)))
+ (fun c -> Ast0.PComma c))) )
+# 12959 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 131 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 12980 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_decl_statement =
-# 1120 "parser_cocci_menhir.mly"
+# 1299 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = _1 in
[Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] )
-# 11001 "parser_cocci_menhir.ml"
+# 12988 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_decl_statement =
-# 1123 "parser_cocci_menhir.mly"
+# 1302 "parser_cocci_menhir.mly"
( List.map
(function x ->
Ast0.wrap
(Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),x)))
_1 )
-# 11029 "parser_cocci_menhir.ml"
+# 13016 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_decl_statement =
-# 1128 "parser_cocci_menhir.mly"
+# 1307 "parser_cocci_menhir.mly"
( [_1] )
-# 11053 "parser_cocci_menhir.ml"
+# 13040 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 11084 "parser_cocci_menhir.ml"
+# 13071 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let t : 'tv_midzero_list_fun_start_fun_start_ = Obj.magic t in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 11090 "parser_cocci_menhir.ml"
+# 13077 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_decl_statement =
-# 1137 "parser_cocci_menhir.mly"
+# 1316 "parser_cocci_menhir.mly"
( let (mids,code) = t in
if List.for_all
(function x ->
else
[Ast0.wrap(Ast0.Disj(P.clt2mcode "(" _1, code, mids,
P.clt2mcode ")" _3))] )
-# 11105 "parser_cocci_menhir.ml"
+# 13092 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 11126 "parser_cocci_menhir.ml"
+# 13113 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_decl_statement_expr =
-# 1150 "parser_cocci_menhir.mly"
+# 1329 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = _1 in
[Ast0.wrap(Ast0.MetaStmt(P.clt2mcode nm clt,pure))] )
-# 11134 "parser_cocci_menhir.ml"
+# 13121 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_decl_statement_expr =
-# 1153 "parser_cocci_menhir.mly"
+# 1332 "parser_cocci_menhir.mly"
( List.map
(function x ->
Ast0.wrap
(Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),x)))
_1 )
-# 11162 "parser_cocci_menhir.ml"
+# 13149 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_decl_statement_expr =
-# 1158 "parser_cocci_menhir.mly"
+# 1337 "parser_cocci_menhir.mly"
( [_1] )
-# 11186 "parser_cocci_menhir.ml"
+# 13173 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 11217 "parser_cocci_menhir.ml"
+# 13204 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let t : 'tv_midzero_list_fun_after_stm_fun_after_dots_or_ = Obj.magic t in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 11223 "parser_cocci_menhir.ml"
+# 13210 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_decl_statement_expr =
-# 1167 "parser_cocci_menhir.mly"
+# 1346 "parser_cocci_menhir.mly"
( let (mids,code) = t in
if List.for_all (function [] -> true | _ -> false) code
then []
List.map (function x -> Ast0.wrap(Ast0.DOTS x)) code in
[Ast0.wrap(Ast0.Disj(P.clt2mcode "(" _1, dot_code, mids,
P.clt2mcode ")" _3))] )
-# 11237 "parser_cocci_menhir.ml"
+# 13224 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11263 "parser_cocci_menhir.ml"
+# 13250 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let t : 'tv_ctype = Obj.magic t in
let _startpos = _startpos_t_ in
let _endpos = _endpos_pv_ in
let _v : 'tv_decl_var =
-# 930 "parser_cocci_menhir.mly"
+# 1127 "parser_cocci_menhir.mly"
( [Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv))] )
-# 11271 "parser_cocci_menhir.ml"
+# 13258 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 13279 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_decl_var =
+# 1128 "parser_cocci_menhir.mly"
+ ( [P.meta_decl _1] )
+# 13286 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11302 "parser_cocci_menhir.ml"
+# 13317 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_comma_list_d_ident_ = Obj.magic d in
let t : 'tv_ctype = Obj.magic t in
# 39 "standard.mly"
( None )
-# 11312 "parser_cocci_menhir.ml"
+# 13327 "parser_cocci_menhir.ml"
in
-# 932 "parser_cocci_menhir.mly"
+# 1130 "parser_cocci_menhir.mly"
( List.map
(function (id,fn) ->
Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)))
d )
-# 11321 "parser_cocci_menhir.ml"
+# 13336 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11357 "parser_cocci_menhir.ml"
+# 13372 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_comma_list_d_ident_ = Obj.magic d in
let t : 'tv_ctype = Obj.magic t in
# 41 "standard.mly"
( Some x )
-# 11369 "parser_cocci_menhir.ml"
+# 13384 "parser_cocci_menhir.ml"
in
-# 932 "parser_cocci_menhir.mly"
+# 1130 "parser_cocci_menhir.mly"
( List.map
(function (id,fn) ->
Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)))
d )
-# 11378 "parser_cocci_menhir.ml"
+# 13393 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos_f_ in
let _endpos = _endpos_f_ in
let _v : 'tv_decl_var =
-# 936 "parser_cocci_menhir.mly"
+# 1134 "parser_cocci_menhir.mly"
( [f] )
-# 11402 "parser_cocci_menhir.ml"
+# 13417 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11443 "parser_cocci_menhir.ml"
+# 13458 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11449 "parser_cocci_menhir.ml"
+# 13464 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let t : 'tv_ctype = Obj.magic t in
# 39 "standard.mly"
( None )
-# 11459 "parser_cocci_menhir.ml"
+# 13474 "parser_cocci_menhir.ml"
in
-# 938 "parser_cocci_menhir.mly"
+# 1136 "parser_cocci_menhir.mly"
(let (id,fn) = d in
[Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
-# 11466 "parser_cocci_menhir.ml"
+# 13481 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11512 "parser_cocci_menhir.ml"
+# 13527 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11518 "parser_cocci_menhir.ml"
+# 13533 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let t : 'tv_ctype = Obj.magic t in
# 41 "standard.mly"
( Some x )
-# 11530 "parser_cocci_menhir.ml"
+# 13545 "parser_cocci_menhir.ml"
in
-# 938 "parser_cocci_menhir.mly"
+# 1136 "parser_cocci_menhir.mly"
(let (id,fn) = d in
[Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
-# 11537 "parser_cocci_menhir.ml"
+# 13552 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11568 "parser_cocci_menhir.ml"
+# 13583 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_comma_list_d_ident_ = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 39 "standard.mly"
( None )
-# 11578 "parser_cocci_menhir.ml"
+# 13593 "parser_cocci_menhir.ml"
in
let s =
# 39 "standard.mly"
( None )
-# 11585 "parser_cocci_menhir.ml"
+# 13600 "parser_cocci_menhir.ml"
in
-# 943 "parser_cocci_menhir.mly"
+# 1141 "parser_cocci_menhir.mly"
( List.map
(function (id,fn) ->
let idtype =
P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
d )
-# 11596 "parser_cocci_menhir.ml"
+# 13611 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11632 "parser_cocci_menhir.ml"
+# 13647 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_comma_list_d_ident_ = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 41 "standard.mly"
( Some x )
-# 11644 "parser_cocci_menhir.ml"
+# 13659 "parser_cocci_menhir.ml"
in
let s =
# 39 "standard.mly"
( None )
-# 11651 "parser_cocci_menhir.ml"
+# 13666 "parser_cocci_menhir.ml"
in
-# 943 "parser_cocci_menhir.mly"
+# 1141 "parser_cocci_menhir.mly"
( List.map
(function (id,fn) ->
let idtype =
P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
d )
-# 11662 "parser_cocci_menhir.ml"
+# 13677 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11698 "parser_cocci_menhir.ml"
+# 13713 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_comma_list_d_ident_ = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 39 "standard.mly"
( None )
-# 11709 "parser_cocci_menhir.ml"
+# 13724 "parser_cocci_menhir.ml"
in
let s =
# 41 "standard.mly"
( Some x )
-# 11717 "parser_cocci_menhir.ml"
+# 13732 "parser_cocci_menhir.ml"
in
-# 943 "parser_cocci_menhir.mly"
+# 1141 "parser_cocci_menhir.mly"
( List.map
(function (id,fn) ->
let idtype =
P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
d )
-# 11728 "parser_cocci_menhir.ml"
+# 13743 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11769 "parser_cocci_menhir.ml"
+# 13784 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_comma_list_d_ident_ = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 41 "standard.mly"
( Some x )
-# 11782 "parser_cocci_menhir.ml"
+# 13797 "parser_cocci_menhir.ml"
in
let s =
# 41 "standard.mly"
( Some x )
-# 11790 "parser_cocci_menhir.ml"
+# 13805 "parser_cocci_menhir.ml"
in
-# 943 "parser_cocci_menhir.mly"
+# 1141 "parser_cocci_menhir.mly"
( List.map
(function (id,fn) ->
let idtype =
P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)))
d )
-# 11801 "parser_cocci_menhir.ml"
+# 13816 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11842 "parser_cocci_menhir.ml"
+# 13857 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11848 "parser_cocci_menhir.ml"
+# 13863 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 39 "standard.mly"
( None )
-# 11858 "parser_cocci_menhir.ml"
+# 13873 "parser_cocci_menhir.ml"
in
let s =
# 39 "standard.mly"
( None )
-# 11865 "parser_cocci_menhir.ml"
+# 13880 "parser_cocci_menhir.ml"
in
-# 951 "parser_cocci_menhir.mly"
+# 1149 "parser_cocci_menhir.mly"
( let (id,fn) = d in
!Data.add_type_name (P.id2name i);
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
[Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
P.clt2mcode ";" pv))] )
-# 11875 "parser_cocci_menhir.ml"
+# 13890 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11921 "parser_cocci_menhir.ml"
+# 13936 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 11927 "parser_cocci_menhir.ml"
+# 13942 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 41 "standard.mly"
( Some x )
-# 11939 "parser_cocci_menhir.ml"
+# 13954 "parser_cocci_menhir.ml"
in
let s =
# 39 "standard.mly"
( None )
-# 11946 "parser_cocci_menhir.ml"
+# 13961 "parser_cocci_menhir.ml"
in
-# 951 "parser_cocci_menhir.mly"
+# 1149 "parser_cocci_menhir.mly"
( let (id,fn) = d in
!Data.add_type_name (P.id2name i);
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
[Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
P.clt2mcode ";" pv))] )
-# 11956 "parser_cocci_menhir.ml"
+# 13971 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12002 "parser_cocci_menhir.ml"
+# 14017 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12008 "parser_cocci_menhir.ml"
+# 14023 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 39 "standard.mly"
( None )
-# 12019 "parser_cocci_menhir.ml"
+# 14034 "parser_cocci_menhir.ml"
in
let s =
# 41 "standard.mly"
( Some x )
-# 12027 "parser_cocci_menhir.ml"
+# 14042 "parser_cocci_menhir.ml"
in
-# 951 "parser_cocci_menhir.mly"
+# 1149 "parser_cocci_menhir.mly"
( let (id,fn) = d in
!Data.add_type_name (P.id2name i);
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
[Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
P.clt2mcode ";" pv))] )
-# 12037 "parser_cocci_menhir.ml"
+# 14052 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12088 "parser_cocci_menhir.ml"
+# 14103 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12094 "parser_cocci_menhir.ml"
+# 14109 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 41 "standard.mly"
( Some x )
-# 12107 "parser_cocci_menhir.ml"
+# 14122 "parser_cocci_menhir.ml"
in
let s =
# 41 "standard.mly"
( Some x )
-# 12115 "parser_cocci_menhir.ml"
+# 14130 "parser_cocci_menhir.ml"
in
-# 951 "parser_cocci_menhir.mly"
+# 1149 "parser_cocci_menhir.mly"
( let (id,fn) = d in
!Data.add_type_name (P.id2name i);
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
[Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
P.clt2mcode ";" pv))] )
-# 12125 "parser_cocci_menhir.ml"
+# 14140 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12186 "parser_cocci_menhir.ml"
+# 14201 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let rp2 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 12191 "parser_cocci_menhir.ml"
+# 14206 "parser_cocci_menhir.ml"
) = Obj.magic rp2 in
let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
let lp2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 12197 "parser_cocci_menhir.ml"
+# 14212 "parser_cocci_menhir.ml"
) = Obj.magic lp2 in
let rp1 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 12202 "parser_cocci_menhir.ml"
+# 14217 "parser_cocci_menhir.ml"
) = Obj.magic rp1 in
let d : 'tv_d_ident = Obj.magic d in
let st : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 12208 "parser_cocci_menhir.ml"
+# 14223 "parser_cocci_menhir.ml"
) = Obj.magic st in
let lp1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 12213 "parser_cocci_menhir.ml"
+# 14228 "parser_cocci_menhir.ml"
) = Obj.magic lp1 in
let t : 'tv_ctype = Obj.magic t in
let _startpos = _startpos_t_ in
# 39 "standard.mly"
( None )
-# 12222 "parser_cocci_menhir.ml"
+# 14237 "parser_cocci_menhir.ml"
in
-# 961 "parser_cocci_menhir.mly"
+# 1159 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let t =
Ast0.wrap
(t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
[Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))] )
-# 12234 "parser_cocci_menhir.ml"
+# 14249 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12300 "parser_cocci_menhir.ml"
+# 14315 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let rp2 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 12305 "parser_cocci_menhir.ml"
+# 14320 "parser_cocci_menhir.ml"
) = Obj.magic rp2 in
let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
let lp2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 12311 "parser_cocci_menhir.ml"
+# 14326 "parser_cocci_menhir.ml"
) = Obj.magic lp2 in
let rp1 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 12316 "parser_cocci_menhir.ml"
+# 14331 "parser_cocci_menhir.ml"
) = Obj.magic rp1 in
let d : 'tv_d_ident = Obj.magic d in
let st : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 12322 "parser_cocci_menhir.ml"
+# 14337 "parser_cocci_menhir.ml"
) = Obj.magic st in
let lp1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 12327 "parser_cocci_menhir.ml"
+# 14342 "parser_cocci_menhir.ml"
) = Obj.magic lp1 in
let t : 'tv_ctype = Obj.magic t in
let x0 : 'tv_storage = Obj.magic x0 in
# 41 "standard.mly"
( Some x )
-# 12338 "parser_cocci_menhir.ml"
+# 14353 "parser_cocci_menhir.ml"
in
-# 961 "parser_cocci_menhir.mly"
+# 1159 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let t =
Ast0.wrap
(t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
[Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv))] )
-# 12350 "parser_cocci_menhir.ml"
+# 14365 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _5 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12391 "parser_cocci_menhir.ml"
+# 14406 "parser_cocci_menhir.ml"
) = Obj.magic _5 in
let _4 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 12396 "parser_cocci_menhir.ml"
+# 14411 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 12402 "parser_cocci_menhir.ml"
+# 14417 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_decl_ident = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__5_ in
let _v : 'tv_decl_var =
-# 969 "parser_cocci_menhir.mly"
+# 1167 "parser_cocci_menhir.mly"
( [Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3,
P.clt2mcode ")" _4,P.clt2mcode ";" _5))] )
-# 12411 "parser_cocci_menhir.ml"
+# 14426 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12482 "parser_cocci_menhir.ml"
+# 14497 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12488 "parser_cocci_menhir.ml"
+# 14503 "parser_cocci_menhir.ml"
) = Obj.magic q in
let rp2 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 12493 "parser_cocci_menhir.ml"
+# 14508 "parser_cocci_menhir.ml"
) = Obj.magic rp2 in
let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
let lp2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 12499 "parser_cocci_menhir.ml"
+# 14514 "parser_cocci_menhir.ml"
) = Obj.magic lp2 in
let rp1 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 12504 "parser_cocci_menhir.ml"
+# 14519 "parser_cocci_menhir.ml"
) = Obj.magic rp1 in
let d : 'tv_d_ident = Obj.magic d in
let st : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 12510 "parser_cocci_menhir.ml"
+# 14525 "parser_cocci_menhir.ml"
) = Obj.magic st in
let lp1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 12515 "parser_cocci_menhir.ml"
+# 14530 "parser_cocci_menhir.ml"
) = Obj.magic lp1 in
let t : 'tv_ctype = Obj.magic t in
let _startpos = _startpos_t_ in
# 39 "standard.mly"
( None )
-# 12524 "parser_cocci_menhir.ml"
+# 14539 "parser_cocci_menhir.ml"
in
-# 975 "parser_cocci_menhir.mly"
+# 1173 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let t =
Ast0.wrap
(t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
[Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
-# 12536 "parser_cocci_menhir.ml"
+# 14551 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12612 "parser_cocci_menhir.ml"
+# 14627 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12618 "parser_cocci_menhir.ml"
+# 14633 "parser_cocci_menhir.ml"
) = Obj.magic q in
let rp2 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 12623 "parser_cocci_menhir.ml"
+# 14638 "parser_cocci_menhir.ml"
) = Obj.magic rp2 in
let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
let lp2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 12629 "parser_cocci_menhir.ml"
+# 14644 "parser_cocci_menhir.ml"
) = Obj.magic lp2 in
let rp1 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 12634 "parser_cocci_menhir.ml"
+# 14649 "parser_cocci_menhir.ml"
) = Obj.magic rp1 in
let d : 'tv_d_ident = Obj.magic d in
let st : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 12640 "parser_cocci_menhir.ml"
+# 14655 "parser_cocci_menhir.ml"
) = Obj.magic st in
let lp1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 12645 "parser_cocci_menhir.ml"
+# 14660 "parser_cocci_menhir.ml"
) = Obj.magic lp1 in
let t : 'tv_ctype = Obj.magic t in
let x0 : 'tv_storage = Obj.magic x0 in
# 41 "standard.mly"
( Some x )
-# 12656 "parser_cocci_menhir.ml"
+# 14671 "parser_cocci_menhir.ml"
in
-# 975 "parser_cocci_menhir.mly"
+# 1173 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let t =
Ast0.wrap
(t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
[Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv))])
-# 12668 "parser_cocci_menhir.ml"
+# 14683 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 12704 "parser_cocci_menhir.ml"
+# 14719 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let id : 'tv_comma_list_typedef_ident_ = Obj.magic id in
let t : 'tv_typedef_ctype = Obj.magic t in
let s : (
-# 53 "parser_cocci_menhir.mly"
+# 119 "parser_cocci_menhir.mly"
(Data.clt)
-# 12711 "parser_cocci_menhir.ml"
+# 14726 "parser_cocci_menhir.ml"
) = Obj.magic s in
let _startpos = _startpos_s_ in
let _endpos = _endpos_pv_ in
let _v : 'tv_decl_var =
-# 983 "parser_cocci_menhir.mly"
+# 1181 "parser_cocci_menhir.mly"
( let s = P.clt2mcode "typedef" s in
List.map
(function id ->
Ast0.wrap(Ast0.Typedef(s,t,id,P.clt2mcode ";" pv)))
id )
-# 12722 "parser_cocci_menhir.ml"
+# 14737 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_define_param_list_start = Obj.magic _1 in
+ let _1 : 'tv_empty_list_start_dparam_TEllipsis_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_define_param_list =
-# 705 "parser_cocci_menhir.mly"
- (let circle x =
- match Ast0.unwrap x with Ast0.DPcircles(_) -> true | _ -> false in
- if List.exists circle _1
- then Ast0.wrap(Ast0.CIRCLES(_1))
- else Ast0.wrap(Ast0.DOTS(_1)) )
-# 12750 "parser_cocci_menhir.ml"
+ let _v : 'tv_define_param_list_option =
+# 916 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.DOTS
+ (_1
+ (fun _ d -> Ast0.wrap(Ast0.DPdots(P.clt2mcode "," d)))
+ (fun c -> Ast0.DPComma c))) )
+# 14765 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 148 "parser_cocci_menhir.mly"
+ (Data.clt * token)
+# 14786 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_defineop =
+# 872 "parser_cocci_menhir.mly"
+ ( let (clt,ident) = _1 in
+ function body ->
+ Ast0.wrap
+ (Ast0.Define
+ (P.clt2mcode "#define" clt,
+ (match ident with
+ TMetaId((nm,constraints,pure,clt)) ->
+ Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure))
+ | TIdent(nm_pure) ->
+ Ast0.wrap(Ast0.Id(P.id2mcode nm_pure))
+ | _ ->
+ raise
+ (Semantic_cocci.Semantic
+ "unexpected name for a #define")),
+ Ast0.wrap Ast0.NoParams,
+ body)) )
+# 14808 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 14839 "parser_cocci_menhir.ml"
+ ) = Obj.magic _3 in
+ let _2 : 'tv_define_param_list_option = Obj.magic _2 in
+ let _1 : (
+# 149 "parser_cocci_menhir.mly"
+ (Data.clt * token * int * int)
+# 14845 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_defineop =
+# 889 "parser_cocci_menhir.mly"
+ ( let (clt,ident,parenoff,parencol) = _1 in
+ (* clt is the start of the #define itself *)
+ let (arity,line,lline,offset,col,strbef,straft,pos) = clt in
+ let lp =
+ P.clt2mcode "("
+ (arity,line,lline,parenoff,parencol,[],[],Ast0.NoMetaPos) in
+ function body ->
+ Ast0.wrap
+ (Ast0.Define
+ (P.clt2mcode "#define" clt,
+ (match ident with
+ TMetaId((nm,constraints,pure,clt)) ->
+ Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure))
+ | TIdent(nm_pure) ->
+ Ast0.wrap(Ast0.Id(P.id2mcode nm_pure))
+ | _ ->
+ raise
+ (Semantic_cocci.Semantic
+ "unexpected name for a #define")),
+ Ast0.wrap (Ast0.DParams (lp,_2,P.clt2mcode ")" _3)),body)) )
+# 14871 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_pnrule = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_dep =
+# 294 "parser_cocci_menhir.mly"
+ ( _1 )
+# 14895 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_dep = Obj.magic _3 in
+ let _1 : 'tv_dep = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_dep =
+# 295 "parser_cocci_menhir.mly"
+ ( Ast.AndDep(_1, _3) )
+# 14929 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_dep = Obj.magic _3 in
+ let _1 : 'tv_dep = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_dep =
+# 296 "parser_cocci_menhir.mly"
+ ( Ast.OrDep (_1, _3) )
+# 14963 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_depends =
+# 290 "parser_cocci_menhir.mly"
+ ( Ast.NoDep )
+# 14980 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = parents;
+ MenhirLib.EngineTypes.startp = _startpos_parents_;
+ MenhirLib.EngineTypes.endp = _endpos_parents_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let parents : 'tv_dep = Obj.magic parents in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_parents_ in
+ let _v : 'tv_depends =
+# 291 "parser_cocci_menhir.mly"
+ ( parents )
+# 15012 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_mident = Obj.magic _2 in
+ let _1 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15039 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_designator =
+# 1285 "parser_cocci_menhir.mly"
+ ( Ast0.DesignatorField (P.clt2mcode "." _1,_2) )
+# 15046 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : (
+# 169 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15077 "parser_cocci_menhir.ml"
+ ) = Obj.magic _3 in
+ let _2 : 'tv_eexpr = Obj.magic _2 in
+ let _1 : (
+# 169 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15083 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_designator =
+# 1287 "parser_cocci_menhir.mly"
+ ( Ast0.DesignatorIndex (P.clt2mcode "[" _1,_2,P.clt2mcode "]" _3) )
+# 15090 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _5;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _4;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let _5 : (
+# 169 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15131 "parser_cocci_menhir.ml"
+ ) = Obj.magic _5 in
+ let _4 : 'tv_eexpr = Obj.magic _4 in
+ let _3 : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15137 "parser_cocci_menhir.ml"
+ ) = Obj.magic _3 in
+ let _2 : 'tv_eexpr = Obj.magic _2 in
+ let _1 : (
+# 169 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15143 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_designator =
+# 1289 "parser_cocci_menhir.mly"
+ ( Ast0.DesignatorRange (P.clt2mcode "[" _1,_2,P.clt2mcode "..." _3,
+ _4,P.clt2mcode "]" _5) )
+# 15151 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_basic_expr_eexpr_nest_expressions_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_dexpr =
+# 1368 "parser_cocci_menhir.mly"
+ ( _1 )
+# 15175 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_separated_nonempty_list_TComma_pure_ident_ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_disable =
+# 309 "parser_cocci_menhir.mly"
+ ( List.map P.id2name _2 )
+# 15203 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15224 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_dot_expressions =
+# 1377 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Edots(P.clt2mcode "..." _1,None)) )
+# 15231 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_nest_expressions = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_dot_expressions =
+# 1378 "parser_cocci_menhir.mly"
+ ( _1 )
+# 15255 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_mident = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_dparam =
+# 912 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.DParam _1) )
+# 15279 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15300 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_d_ in
+ let _v : 'tv_edots_when_TEllipsis_eexpr_ =
+# 2197 "parser_cocci_menhir.mly"
+ ( (d,None) )
+# 15307 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = w;
+ MenhirLib.EngineTypes.startp = _startpos_w_;
+ MenhirLib.EngineTypes.endp = _endpos_w_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let w : 'tv_eexpr = Obj.magic w in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15346 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_edots_when_TEllipsis_eexpr_ =
+# 2198 "parser_cocci_menhir.mly"
+ ( (d,Some w) )
+# 15353 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15374 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_d_ in
+ let _v : 'tv_edots_when_TEllipsis_enum_decl_one_ =
+# 2197 "parser_cocci_menhir.mly"
+ ( (d,None) )
+# 15381 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = w;
+ MenhirLib.EngineTypes.startp = _startpos_w_;
+ MenhirLib.EngineTypes.endp = _endpos_w_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let w : 'tv_enum_decl_one = Obj.magic w in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15420 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_edots_when_TEllipsis_enum_decl_one_ =
+# 2198 "parser_cocci_menhir.mly"
+ ( (d,Some w) )
+# 15427 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15448 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_d_ in
+ let _v : 'tv_edots_when_TEllipsis_initialize_ =
+# 2197 "parser_cocci_menhir.mly"
+ ( (d,None) )
+# 15455 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = w;
+ MenhirLib.EngineTypes.startp = _startpos_w_;
+ MenhirLib.EngineTypes.endp = _endpos_w_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let w : 'tv_initialize = Obj.magic w in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15494 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_edots_when_TEllipsis_initialize_ =
+# 2198 "parser_cocci_menhir.mly"
+ ( (d,Some w) )
+# 15501 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15522 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_d_ in
+ let _v : 'tv_edots_when_TEllipsis_struct_decl_one_ =
+# 2197 "parser_cocci_menhir.mly"
+ ( (d,None) )
+# 15529 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = w;
+ MenhirLib.EngineTypes.startp = _startpos_w_;
+ MenhirLib.EngineTypes.endp = _endpos_w_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let w : 'tv_struct_decl_one = Obj.magic w in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15568 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_edots_when_TEllipsis_struct_decl_one_ =
+# 2198 "parser_cocci_menhir.mly"
+ ( (d,Some w) )
+# 15575 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_basic_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_eexpr =
+# 1366 "parser_cocci_menhir.mly"
+ ( _1 )
+# 15599 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_empty_list_start_aexpr_TEllipsis_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_eexpr_list_option =
+# 2177 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.DOTS
+ (_1
+ (fun _ d -> Ast0.wrap(Ast0.Edots(P.clt2mcode "..." d,None)))
+ (fun c -> Ast0.EComma c))) )
+# 15627 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_empty_list_start_aexpr_TEllipsis_ =
+# 1939 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [] )
+# 15644 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_empty_list_start_aexpr_TEllipsis_ =
+# 1940 "parser_cocci_menhir.mly"
+ ( _1 )
+# 15668 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_empty_list_start_dparam_TEllipsis_ =
+# 1939 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [] )
+# 15685 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_empty_list_start_dparam_TEllipsis_ =
+# 1940 "parser_cocci_menhir.mly"
+ ( _1 )
+# 15709 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_empty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
+# 1939 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [] )
+# 15726 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_empty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
+# 1940 "parser_cocci_menhir.mly"
+ ( _1 )
+# 15750 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_empty_list_start_one_dec_decl__TEllipsis_ =
+# 1939 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [] )
+# 15767 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_empty_list_start_one_dec_decl__TEllipsis_ =
+# 1940 "parser_cocci_menhir.mly"
+ ( _1 )
+# 15791 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_empty_list_start_one_dec_name_opt_decl__TEllipsis_ =
+# 1939 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [] )
+# 15808 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_empty_list_start_one_dec_name_opt_decl__TEllipsis_ =
+# 1940 "parser_cocci_menhir.mly"
+ ( _1 )
+# 15832 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_enum_decl_list =
+# 776 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.DOTS(_1 P.mkedots (fun c -> Ast0.EComma c))) )
+# 15856 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_mident = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_enum_decl_one =
+# 747 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Ident(_1)) )
+# 15880 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_enum_val = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 15912 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_mident = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_enum_decl_one =
+# 749 "parser_cocci_menhir.mly"
+ ( let id = Ast0.wrap(Ast0.Ident(_1)) in
+ Ast0.wrap
+ (Ast0.Assignment
+ (id,P.clt2mcode Ast.SimpleAssign _2,Ast0.set_arg_exp _3,
+ false)) )
+# 15924 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_ident = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_enum_val =
+# 756 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Ident(_1)) )
+# 15948 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 154 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 15969 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_enum_val =
+# 758 "parser_cocci_menhir.mly"
+ ( let (x,clt) = _1 in
+ Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
+# 15977 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 15998 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_enum_val =
+# 760 "parser_cocci_menhir.mly"
+ ( tmeta_to_exp _1 )
+# 16005 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 16026 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_enum_val =
+# 762 "parser_cocci_menhir.mly"
+ ( let (nm,constraints,pure,ty,clt) = _1 in
+ Ast0.wrap
+ (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
+# 16035 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 16056 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_enum_val =
+# 766 "parser_cocci_menhir.mly"
+ ( let (nm,constraints,pure,ty,clt) = _1 in
+ Ast0.wrap
+ (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
+# 16065 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 16086 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_enum_val =
+# 770 "parser_cocci_menhir.mly"
+ ( let (nm,constraints,pure,ty,clt) = _1 in
+ Ast0.wrap
+ (Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
+# 16095 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_exists =
+# 312 "parser_cocci_menhir.mly"
+ ( Ast.Exists )
+# 16117 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_exists =
+# 313 "parser_cocci_menhir.mly"
+ ( Ast.Forall )
+# 16139 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_exists =
+# 314 "parser_cocci_menhir.mly"
+ ( Ast.Undetermined )
+# 16156 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_basic_expr_expr_invalid_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_expr =
+# 1364 "parser_cocci_menhir.mly"
+ ( _1 )
+# 16180 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let r : 'tv_no_dot_start_end_dexpr_edots_when_TEllipsis_eexpr__ = Obj.magic r in
+ let _startpos = _startpos_r_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_expr_dots_TEllipsis_ =
+# 1601 "parser_cocci_menhir.mly"
+ ( r )
+# 16204 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let m : 'tv_nonempty_list_TMul_ = Obj.magic m in
+ let _startpos = _startpos_m_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_expression_type =
+# 542 "parser_cocci_menhir.mly"
+ ( P.ty_pointerify Type_cocci.Unknown m )
+# 16228 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_expression_type =
+# 544 "parser_cocci_menhir.mly"
+ ( P.ty_pointerify (Type_cocci.EnumName Type_cocci.NoName) m )
+# 16256 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_expression_type =
+# 546 "parser_cocci_menhir.mly"
+ ( P.ty_pointerify
+ (Type_cocci.StructUnionName (Type_cocci.Struct,Type_cocci.NoName)) m )
+# 16285 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_expression_type =
+# 549 "parser_cocci_menhir.mly"
+ ( P.ty_pointerify
+ (Type_cocci.StructUnionName (Type_cocci.Union,Type_cocci.NoName)) m )
+# 16314 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_extends =
+# 285 "parser_cocci_menhir.mly"
+ ( () )
+# 16331 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = parent;
+ MenhirLib.EngineTypes.startp = _startpos_parent_;
+ MenhirLib.EngineTypes.endp = _endpos_parent_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let parent : (
+# 112 "parser_cocci_menhir.mly"
+ (string)
+# 16356 "parser_cocci_menhir.ml"
+ ) = Obj.magic parent in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_parent_ in
+ let _v : 'tv_extends =
+# 287 "parser_cocci_menhir.mly"
+ ( !Data.install_bindings (parent) )
+# 16363 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : (
+# 150 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 16389 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : (
+# 150 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 16394 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_filespec =
+# 813 "parser_cocci_menhir.mly"
+ ( [Ast0.wrap
+ (Ast0.FILEINFO(P.id2mcode _1,
+ P.id2mcode _2))] )
+# 16403 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_mident = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_fn_ident =
+# 1859 "parser_cocci_menhir.mly"
+ ( _1 )
+# 16427 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 128 "parser_cocci_menhir.mly"
+ (Parse_aux.idinfo)
+# 16448 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_fn_ident =
+# 1861 "parser_cocci_menhir.mly"
+ ( let (nm,constraints,pure,clt) = _1 in
+ Ast0.wrap(Ast0.MetaFunc(P.clt2mcode nm clt,constraints,pure)) )
+# 16456 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 128 "parser_cocci_menhir.mly"
+ (Parse_aux.idinfo)
+# 16477 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_fn_ident =
+# 1864 "parser_cocci_menhir.mly"
+ ( let (nm,constraints,pure,clt) = _1 in
+ Ast0.wrap
+ (Ast0.MetaLocalFunc(P.clt2mcode nm clt,constraints,pure)) )
+# 16486 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_fninfo =
+# 948 "parser_cocci_menhir.mly"
+ ( [] )
+# 16503 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_fninfo = Obj.magic _2 in
+ let _1 : 'tv_storage = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fninfo =
+# 950 "parser_cocci_menhir.mly"
+ ( try
+ let _ =
+ List.find (function Ast0.FStorage(_) -> true | _ -> false) _2 in
+ raise (Semantic_cocci.Semantic "duplicate storage")
+ with Not_found -> (Ast0.FStorage(_1))::_2 )
+# 16537 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let r : 'tv_fninfo_nt = Obj.magic r in
+ let t : 'tv_ctype = Obj.magic t in
+ let _startpos = _startpos_t_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_fninfo =
+# 955 "parser_cocci_menhir.mly"
+ ( (Ast0.FType(t))::r )
+# 16567 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_fninfo = Obj.magic _2 in
+ let _1 : (
+# 119 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 16594 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fninfo =
+# 957 "parser_cocci_menhir.mly"
+ ( try
+ let _ = List.find (function Ast0.FInline(_) -> true | _ -> false) _2 in
+ raise (Semantic_cocci.Semantic "duplicate inline")
+ with Not_found -> (Ast0.FInline(P.clt2mcode "inline" _1))::_2 )
+# 16604 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let _1 : 'tv_define_param_list = Obj.magic _1 in
+ let _2 : 'tv_fninfo = Obj.magic _2 in
+ let _1 : (
+# 121 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 16631 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_define_param_list_option =
-# 729 "parser_cocci_menhir.mly"
- ( _1 )
-# 12774 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fninfo =
+# 962 "parser_cocci_menhir.mly"
+ ( try
+ let _ = List.find (function Ast0.FAttr(_) -> true | _ -> false) _2 in
+ raise (Semantic_cocci.Semantic "multiple attributes")
+ with Not_found -> (Ast0.FAttr(P.id2mcode _1))::_2 )
+# 16641 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
- let _v : 'tv_define_param_list_option =
-# 730 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.DOTS([])) )
-# 12791 "parser_cocci_menhir.ml"
+ let _v : 'tv_fninfo_nt =
+# 968 "parser_cocci_menhir.mly"
+ ( [] )
+# 16658 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let _1 : 'tv_ident = Obj.magic _1 in
+ let _2 : 'tv_fninfo_nt = Obj.magic _2 in
+ let _1 : 'tv_storage = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_define_param_list_start =
-# 712 "parser_cocci_menhir.mly"
- ( [Ast0.wrap(Ast0.DParam _1)] )
-# 12815 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fninfo_nt =
+# 970 "parser_cocci_menhir.mly"
+ ( try
+ let _ =
+ List.find (function Ast0.FStorage(_) -> true | _ -> false) _2 in
+ raise (Semantic_cocci.Semantic "duplicate storage")
+ with Not_found -> (Ast0.FStorage(_1))::_2 )
+# 16692 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _3 : 'tv_define_param_list_start = Obj.magic _3 in
- let _2 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 12847 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : 'tv_ident = Obj.magic _1 in
+ let _2 : 'tv_fninfo_nt = Obj.magic _2 in
+ let _1 : (
+# 119 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 16719 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_define_param_list_start =
-# 714 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.DParam _1)::
- Ast0.wrap(Ast0.DPComma(P.clt2mcode "," _2))::_3 )
-# 12856 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fninfo_nt =
+# 976 "parser_cocci_menhir.mly"
+ ( try
+ let _ = List.find (function Ast0.FInline(_) -> true | _ -> false) _2 in
+ raise (Semantic_cocci.Semantic "duplicate inline")
+ with Not_found -> (Ast0.FInline(P.clt2mcode "inline" _1))::_2 )
+# 16729 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = r;
- MenhirLib.EngineTypes.startp = _startpos_r_;
- MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let r : 'tv_list_dp_comma_args_TEllipsis__ = Obj.magic r in
- let d : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 12883 "parser_cocci_menhir.ml"
- ) = Obj.magic d in
- let _startpos = _startpos_d_ in
- let _endpos = _endpos_r_ in
- let _v : 'tv_define_param_list_start =
-# 717 "parser_cocci_menhir.mly"
- ( (P.mkdpdots "..." d)::
- (List.concat (List.map (function x -> x (P.mkdpdots "...")) r)) )
-# 12891 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
+ let _2 : 'tv_fninfo_nt = Obj.magic _2 in
let _1 : (
-# 81 "parser_cocci_menhir.mly"
- (Data.clt * token)
-# 12912 "parser_cocci_menhir.ml"
+# 121 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 16756 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_defineop =
-# 664 "parser_cocci_menhir.mly"
- ( let (clt,ident) = _1 in
- function body ->
- Ast0.wrap
- (Ast0.Define
- (P.clt2mcode "#define" clt,
- (match ident with
- TMetaId((nm,constraints,pure,clt)) ->
- Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure))
- | TIdent(nm_pure) ->
- Ast0.wrap(Ast0.Id(P.id2mcode nm_pure))
- | _ ->
- raise
- (Semantic_cocci.Semantic
- "unexpected name for a #define")),
- Ast0.wrap Ast0.NoParams,
- body)) )
-# 12934 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fninfo_nt =
+# 981 "parser_cocci_menhir.mly"
+ ( try
+ let _ = List.find (function Ast0.FAttr(_) -> true | _ -> false) _2 in
+ raise (Semantic_cocci.Semantic "duplicate init")
+ with Not_found -> (Ast0.FAttr(P.id2mcode _1))::_2 )
+# 16766 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- } = _menhir_stack in
- let _3 : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 12965 "parser_cocci_menhir.ml"
- ) = Obj.magic _3 in
- let _2 : 'tv_define_param_list_option = Obj.magic _2 in
- let _1 : (
-# 82 "parser_cocci_menhir.mly"
- (Data.clt * token * int * int)
-# 12971 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_defineop =
-# 681 "parser_cocci_menhir.mly"
- ( let (clt,ident,parenoff,parencol) = _1 in
- (* clt is the start of the #define itself *)
- let (arity,line,lline,offset,col,strbef,straft,pos) = clt in
- let lp =
- P.clt2mcode "("
- (arity,line,lline,parenoff,parencol,[],[],Ast0.NoMetaPos) in
- function body ->
- Ast0.wrap
- (Ast0.Define
- (P.clt2mcode "#define" clt,
- (match ident with
- TMetaId((nm,constraints,pure,clt)) ->
- Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure))
- | TIdent(nm_pure) ->
- Ast0.wrap(Ast0.Id(P.id2mcode nm_pure))
- | _ ->
- raise
- (Semantic_cocci.Semantic
- "unexpected name for a #define")),
- Ast0.wrap (Ast0.DParams (lp,_2,P.clt2mcode ")" _3)),body)) )
-# 12997 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_fun_after_dots =
+# 2110 "parser_cocci_menhir.mly"
+ ([])
+# 16783 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let _1 : 'tv_pnrule = Obj.magic _1 in
+ let _2 : 'tv_fun_after_exp = Obj.magic _2 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_dep =
-# 225 "parser_cocci_menhir.mly"
- ( _1 )
-# 13021 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fun_after_dots =
+# 2111 "parser_cocci_menhir.mly"
+ (_2)
+# 16811 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _3 : 'tv_dep = Obj.magic _3 in
- let _1 : 'tv_dep = Obj.magic _1 in
+ let _2 : 'tv_fun_after_exp = Obj.magic _2 in
+ let _1 : 'tv_expr = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_dep =
-# 226 "parser_cocci_menhir.mly"
- ( Ast.AndDep(_1, _3) )
-# 13055 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fun_after_dots =
+# 2112 "parser_cocci_menhir.mly"
+ (Ast0.wrap(Ast0.Exp(_1))::_2)
+# 16841 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _3 : 'tv_dep = Obj.magic _3 in
- let _1 : 'tv_dep = Obj.magic _1 in
+ let _2 : 'tv_fun_after_stm = Obj.magic _2 in
+ let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_dep =
-# 227 "parser_cocci_menhir.mly"
- ( Ast.OrDep (_1, _3) )
-# 13089 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fun_after_dots =
+# 2113 "parser_cocci_menhir.mly"
+ (_1@_2)
+# 16871 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
- let _v : 'tv_depends =
-# 221 "parser_cocci_menhir.mly"
- ( Ast.NoDep )
-# 13106 "parser_cocci_menhir.ml"
+ let _v : 'tv_fun_after_dots_or =
+# 2120 "parser_cocci_menhir.mly"
+ ([])
+# 16888 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = parents;
- MenhirLib.EngineTypes.startp = _startpos_parents_;
- MenhirLib.EngineTypes.endp = _endpos_parents_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let parents : 'tv_dep = Obj.magic parents in
+ let _2 : 'tv_fun_after_exp_or = Obj.magic _2 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos_parents_ in
- let _v : 'tv_depends =
-# 222 "parser_cocci_menhir.mly"
- ( parents )
-# 13138 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fun_after_dots_or =
+# 2121 "parser_cocci_menhir.mly"
+ (_2)
+# 16916 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_ident = Obj.magic _2 in
- let _1 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13165 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let _2 : 'tv_fun_after_exp_or = Obj.magic _2 in
+ let _1 : 'tv_expr = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : 'tv_designator =
-# 1084 "parser_cocci_menhir.mly"
- ( Ast0.DesignatorField (P.clt2mcode "." _1,_2) )
-# 13172 "parser_cocci_menhir.ml"
+ let _v : 'tv_fun_after_dots_or =
+# 2122 "parser_cocci_menhir.mly"
+ (Ast0.wrap(Ast0.Exp(_1))::_2)
+# 16946 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _3 : (
-# 102 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13203 "parser_cocci_menhir.ml"
- ) = Obj.magic _3 in
- let _2 : 'tv_eexpr = Obj.magic _2 in
- let _1 : (
-# 102 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13209 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let _2 : 'tv_fun_after_stm = Obj.magic _2 in
+ let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_designator =
-# 1086 "parser_cocci_menhir.mly"
- ( Ast0.DesignatorIndex (P.clt2mcode "[" _1,_2,P.clt2mcode "]" _3) )
-# 13216 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fun_after_dots_or =
+# 2123 "parser_cocci_menhir.mly"
+ (_1@_2)
+# 16976 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _5;
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _4;
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _5 : (
-# 102 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13257 "parser_cocci_menhir.ml"
- ) = Obj.magic _5 in
- let _4 : 'tv_eexpr = Obj.magic _4 in
- let _3 : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13263 "parser_cocci_menhir.ml"
- ) = Obj.magic _3 in
- let _2 : 'tv_eexpr = Obj.magic _2 in
- let _1 : (
-# 102 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13269 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let _2 : 'tv_fun_after_dots = Obj.magic _2 in
+ let _1 : 'tv_stm_dots = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_designator =
-# 1088 "parser_cocci_menhir.mly"
- ( Ast0.DesignatorRange (P.clt2mcode "[" _1,_2,P.clt2mcode "..." _3,
- _4,P.clt2mcode "]" _5) )
-# 13277 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fun_after_exp =
+# 2116 "parser_cocci_menhir.mly"
+ (_1::_2)
+# 17006 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : 'tv_basic_expr_eexpr_nest_expressions_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_dexpr =
-# 1187 "parser_cocci_menhir.mly"
- ( _1 )
-# 13301 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_fun_after_exp_or =
+# 2126 "parser_cocci_menhir.mly"
+ ([])
+# 17023 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_separated_nonempty_list_TComma_pure_ident_ = Obj.magic _2 in
+ let _2 : 'tv_fun_after_dots = Obj.magic _2 in
+ let _1 : 'tv_stm_dots = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : 'tv_disable =
-# 240 "parser_cocci_menhir.mly"
- ( List.map P.id2name _2 )
-# 13329 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13350 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_dot_expressions =
-# 1196 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Edots(P.clt2mcode "..." _1,None)) )
-# 13357 "parser_cocci_menhir.ml"
+ let _v : 'tv_fun_after_exp_or =
+# 2127 "parser_cocci_menhir.mly"
+ (_1::_2)
+# 17053 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : 'tv_nest_expressions = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_dot_expressions =
-# 1197 "parser_cocci_menhir.mly"
- ( _1 )
-# 13381 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_fun_after_stm =
+# 2105 "parser_cocci_menhir.mly"
+ ([])
+# 17070 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = c;
- MenhirLib.EngineTypes.startp = _startpos_c_;
- MenhirLib.EngineTypes.endp = _endpos_c_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let d : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13407 "parser_cocci_menhir.ml"
- ) = Obj.magic d in
- let c : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13412 "parser_cocci_menhir.ml"
- ) = Obj.magic c in
- let _startpos = _startpos_c_ in
- let _endpos = _endpos_d_ in
- let _v : 'tv_dp_comma_args_TEllipsis_ =
-# 722 "parser_cocci_menhir.mly"
- ( function dot_builder ->
- [Ast0.wrap(Ast0.DPComma(P.clt2mcode "," c)); dot_builder d] )
-# 13420 "parser_cocci_menhir.ml"
+ let _2 : 'tv_fun_after_dots = Obj.magic _2 in
+ let _1 : 'tv_stm_dots = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_fun_after_stm =
+# 2106 "parser_cocci_menhir.mly"
+ (_1::_2)
+# 17100 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_ident = Obj.magic _2 in
- let _1 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13447 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let _2 : 'tv_fun_after_stm = Obj.magic _2 in
+ let _1 : 'tv_decl_statement = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : 'tv_dp_comma_args_TEllipsis_ =
-# 725 "parser_cocci_menhir.mly"
- ( function dot_builder ->
- [Ast0.wrap(Ast0.DPComma(P.clt2mcode "," _1));
- Ast0.wrap(Ast0.DParam _2)] )
-# 13456 "parser_cocci_menhir.ml"
+ let _v : 'tv_fun_after_stm =
+# 2107 "parser_cocci_menhir.mly"
+ (_1@_2)
+# 17130 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let d : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13477 "parser_cocci_menhir.ml"
- ) = Obj.magic d in
- let _startpos = _startpos_d_ in
- let _endpos = _endpos_d_ in
- let _v : 'tv_edots_when_TEllipsis_eexpr_ =
-# 1825 "parser_cocci_menhir.mly"
- ( (d,None) )
-# 13484 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = w;
- MenhirLib.EngineTypes.startp = _startpos_w_;
- MenhirLib.EngineTypes.endp = _endpos_w_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
} = _menhir_stack in
- let w : 'tv_eexpr = Obj.magic w in
- let d : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13523 "parser_cocci_menhir.ml"
- ) = Obj.magic d in
- let _startpos = _startpos_d_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_edots_when_TEllipsis_eexpr_ =
-# 1826 "parser_cocci_menhir.mly"
- ( (d,Some w) )
-# 13530 "parser_cocci_menhir.ml"
+ let _1 : 'tv_fun_after_stm = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_fun_start =
+# 2102 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.DOTS(_1)) )
+# 17154 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let d : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13551 "parser_cocci_menhir.ml"
- ) = Obj.magic d in
- let _startpos = _startpos_d_ in
- let _endpos = _endpos_d_ in
- let _v : 'tv_edots_when_TEllipsis_initialize_ =
-# 1825 "parser_cocci_menhir.mly"
- ( (d,None) )
-# 13558 "parser_cocci_menhir.ml"
+ let _1 : 'tv_ident = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_func_ident =
+# 1850 "parser_cocci_menhir.mly"
+ ( _1 )
+# 17178 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = w;
- MenhirLib.EngineTypes.startp = _startpos_w_;
- MenhirLib.EngineTypes.endp = _endpos_w_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let w : 'tv_initialize = Obj.magic w in
- let d : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13597 "parser_cocci_menhir.ml"
- ) = Obj.magic d in
- let _startpos = _startpos_d_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_edots_when_TEllipsis_initialize_ =
-# 1826 "parser_cocci_menhir.mly"
- ( (d,Some w) )
-# 13604 "parser_cocci_menhir.ml"
+ let _1 : (
+# 128 "parser_cocci_menhir.mly"
+ (Parse_aux.idinfo)
+# 17199 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_func_ident =
+# 1852 "parser_cocci_menhir.mly"
+ ( let (nm,constraints,pure,clt) = _1 in
+ Ast0.wrap(Ast0.MetaFunc(P.clt2mcode nm clt,constraints,pure)) )
+# 17207 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let d : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13625 "parser_cocci_menhir.ml"
- ) = Obj.magic d in
- let _startpos = _startpos_d_ in
- let _endpos = _endpos_d_ in
- let _v : 'tv_edots_when_TEllipsis_struct_decl_ =
-# 1825 "parser_cocci_menhir.mly"
- ( (d,None) )
-# 13632 "parser_cocci_menhir.ml"
+ let _1 : (
+# 128 "parser_cocci_menhir.mly"
+ (Parse_aux.idinfo)
+# 17228 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_func_ident =
+# 1855 "parser_cocci_menhir.mly"
+ ( let (nm,constraints,pure,clt) = _1 in
+ Ast0.wrap
+ (Ast0.MetaLocalFunc(P.clt2mcode nm clt,constraints,pure)) )
+# 17237 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.semv = rb;
+ MenhirLib.EngineTypes.startp = _startpos_rb_;
+ MenhirLib.EngineTypes.endp = _endpos_rb_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = w;
- MenhirLib.EngineTypes.startp = _startpos_w_;
- MenhirLib.EngineTypes.endp = _endpos_w_;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = lb;
+ MenhirLib.EngineTypes.startp = _startpos_lb_;
+ MenhirLib.EngineTypes.endp = _endpos_lb_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = rp;
+ MenhirLib.EngineTypes.startp = _startpos_rp_;
+ MenhirLib.EngineTypes.endp = _endpos_rp_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = d;
MenhirLib.EngineTypes.startp = _startpos_d_;
MenhirLib.EngineTypes.endp = _endpos_d_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = lp;
+ MenhirLib.EngineTypes.startp = _startpos_lp_;
+ MenhirLib.EngineTypes.endp = _endpos_lp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = i;
+ MenhirLib.EngineTypes.startp = _startpos_i_;
+ MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = f;
+ MenhirLib.EngineTypes.startp = _startpos_f_;
+ MenhirLib.EngineTypes.endp = _endpos_f_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
};
};
};
};
} = _menhir_stack in
- let w : 'tv_struct_decl = Obj.magic w in
- let d : (
-# 73 "parser_cocci_menhir.mly"
+ let rb : (
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 13671 "parser_cocci_menhir.ml"
- ) = Obj.magic d in
- let _startpos = _startpos_d_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_edots_when_TEllipsis_struct_decl_ =
-# 1826 "parser_cocci_menhir.mly"
- ( (d,Some w) )
-# 13678 "parser_cocci_menhir.ml"
+# 17297 "parser_cocci_menhir.ml"
+ ) = Obj.magic rb in
+ let b : 'tv_fun_start = Obj.magic b in
+ let lb : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 17303 "parser_cocci_menhir.ml"
+ ) = Obj.magic lb in
+ let rp : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 17308 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp in
+ let d : 'tv_decl_list_decl_ = Obj.magic d in
+ let lp : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 17314 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp in
+ let i : 'tv_fn_ident = Obj.magic i in
+ let f : 'tv_fninfo = Obj.magic f in
+ let _startpos = _startpos_f_ in
+ let _endpos = _endpos_rb_ in
+ let _v : 'tv_fundecl =
+# 939 "parser_cocci_menhir.mly"
+ ( P.verify_parameter_declarations (Ast0.undots d);
+ Ast0.wrap(Ast0.FunDecl((Ast0.default_info(),Ast0.context_befaft()),
+ f, i,
+ P.clt2mcode "(" lp, d,
+ P.clt2mcode ")" rp,
+ P.clt2mcode "{" lb, b,
+ P.clt2mcode "}" rb)) )
+# 17329 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = pt;
+ MenhirLib.EngineTypes.startp = _startpos_pt_;
+ MenhirLib.EngineTypes.endp = _endpos_pt_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = rp;
+ MenhirLib.EngineTypes.startp = _startpos_rp_;
+ MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = lp;
+ MenhirLib.EngineTypes.startp = _startpos_lp_;
+ MenhirLib.EngineTypes.endp = _endpos_lp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = id;
+ MenhirLib.EngineTypes.startp = _startpos_id_;
+ MenhirLib.EngineTypes.endp = _endpos_id_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_basic_expr_eexpr_dot_expressions_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_eexpr =
-# 1185 "parser_cocci_menhir.mly"
- ( _1 )
-# 13702 "parser_cocci_menhir.ml"
+ let pt : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 17375 "parser_cocci_menhir.ml"
+ ) = Obj.magic pt in
+ let rp : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 17380 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp in
+ let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
+ let lp : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 17386 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp in
+ let id : 'tv_fn_ident = Obj.magic id in
+ let t : 'tv_ctype = Obj.magic t in
+ let _startpos = _startpos_t_ in
+ let _endpos = _endpos_pt_ in
+ let _v : 'tv_funproto = let s =
+
+# 39 "standard.mly"
+ ( None )
+# 17396 "parser_cocci_menhir.ml"
+
+ in
+
+# 927 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.UnInit
+ (s,
+ Ast0.wrap
+ (Ast0.FunctionType(Some t,
+ P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
+ id, P.clt2mcode ";" pt)) )
+# 17408 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = pt;
+ MenhirLib.EngineTypes.startp = _startpos_pt_;
+ MenhirLib.EngineTypes.endp = _endpos_pt_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = rp;
+ MenhirLib.EngineTypes.startp = _startpos_rp_;
+ MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = lp;
+ MenhirLib.EngineTypes.startp = _startpos_lp_;
+ MenhirLib.EngineTypes.endp = _endpos_lp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = id;
+ MenhirLib.EngineTypes.startp = _startpos_id_;
+ MenhirLib.EngineTypes.endp = _endpos_id_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_eexpr_list_start = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_eexpr_list =
-# 1769 "parser_cocci_menhir.mly"
- (let circle x =
- match Ast0.unwrap x with Ast0.Ecircles(_) -> true | _ -> false in
- let star x =
- match Ast0.unwrap x with Ast0.Estars(_) -> true | _ -> false in
- if List.exists circle _1
- then Ast0.wrap(Ast0.CIRCLES(_1))
- else
- if List.exists star _1
- then Ast0.wrap(Ast0.STARS(_1))
- else Ast0.wrap(Ast0.DOTS(_1)) )
-# 13735 "parser_cocci_menhir.ml"
+ let pt : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 17459 "parser_cocci_menhir.ml"
+ ) = Obj.magic pt in
+ let rp : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 17464 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp in
+ let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
+ let lp : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 17470 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp in
+ let id : 'tv_fn_ident = Obj.magic id in
+ let t : 'tv_ctype = Obj.magic t in
+ let x0 : 'tv_storage = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_pt_ in
+ let _v : 'tv_funproto = let s =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 17482 "parser_cocci_menhir.ml"
+
+ in
+
+# 927 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.UnInit
+ (s,
+ Ast0.wrap
+ (Ast0.FunctionType(Some t,
+ P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
+ id, P.clt2mcode ";" pt)) )
+# 17494 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_eexpr_list = Obj.magic _1 in
+ let _1 : 'tv_pure_ident = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_eexpr_list_option =
-# 1808 "parser_cocci_menhir.mly"
- ( _1 )
-# 13759 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_eexpr_list_option =
-# 1809 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.DOTS([])) )
-# 13776 "parser_cocci_menhir.ml"
+ let _v : 'tv_ident =
+# 1869 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
+# 17518 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_aexpr = Obj.magic _1 in
+ let _1 : (
+# 128 "parser_cocci_menhir.mly"
+ (Parse_aux.idinfo)
+# 17539 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_eexpr_list_start =
-# 1796 "parser_cocci_menhir.mly"
- ( [_1] )
-# 13800 "parser_cocci_menhir.ml"
+ let _v : 'tv_ident =
+# 1871 "parser_cocci_menhir.mly"
+ ( let (nm,constraints,pure,clt) = _1 in
+ Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
+# 17547 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = i;
+ MenhirLib.EngineTypes.startp = _startpos_i_;
+ MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _3 : 'tv_eexpr_list_start = Obj.magic _3 in
- let _2 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 13832 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : 'tv_aexpr = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_eexpr_list_start =
-# 1798 "parser_cocci_menhir.mly"
- ( _1::Ast0.wrap(Ast0.EComma(P.clt2mcode "," _2))::_3 )
-# 13840 "parser_cocci_menhir.ml"
+ let i : 'tv_pure_ident = Obj.magic i in
+ let _startpos = _startpos_i_ in
+ let _endpos = _endpos_i_ in
+ let _v : 'tv_ident_or_const =
+# 1824 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))) )
+# 17571 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
+ let _1 : (
+# 154 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 17592 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_exists =
-# 243 "parser_cocci_menhir.mly"
- ( Ast.Exists )
-# 13862 "parser_cocci_menhir.ml"
+ let _v : 'tv_ident_or_const =
+# 1826 "parser_cocci_menhir.mly"
+ ( let (x,clt) = _1 in
+ Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
+# 17600 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
+ let _1 : (
+# 147 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 17621 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_exists =
-# 244 "parser_cocci_menhir.mly"
- ( Ast.Forall )
-# 13884 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_exists =
-# 245 "parser_cocci_menhir.mly"
- ( Ast.Undetermined )
-# 13901 "parser_cocci_menhir.ml"
+ let _v : 'tv_incl =
+# 325 "parser_cocci_menhir.mly"
+ ( let (x,_) = _1 in Data.Include(x) )
+# 17628 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let _1 : 'tv_basic_expr_expr_invalid_ = Obj.magic _1 in
+ let _2 : (
+# 154 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 17653 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_expr =
-# 1183 "parser_cocci_menhir.mly"
- ( _1 )
-# 13925 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_incl =
+# 326 "parser_cocci_menhir.mly"
+ ( Data.Iso(Common.Left(P.id2name _2)) )
+# 17660 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = r;
- MenhirLib.EngineTypes.startp = _startpos_r_;
- MenhirLib.EngineTypes.endp = _endpos_r_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let r : 'tv_no_dot_start_end_dexpr_edots_when_TEllipsis_eexpr__ = Obj.magic r in
- let _startpos = _startpos_r_ in
- let _endpos = _endpos_r_ in
- let _v : 'tv_expr_dots_TEllipsis_ =
-# 1365 "parser_cocci_menhir.mly"
- ( r )
-# 13949 "parser_cocci_menhir.ml"
+ let _2 : (
+# 146 "parser_cocci_menhir.mly"
+ (string)
+# 17685 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_incl =
+# 327 "parser_cocci_menhir.mly"
+ ( Data.Iso(Common.Right _2) )
+# 17692 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_extends =
-# 216 "parser_cocci_menhir.mly"
- ( () )
-# 13966 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_comma_list_pure_ident_ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_incl =
+# 329 "parser_cocci_menhir.mly"
+ ( let names = List.map P.id2name _2 in
+ Iteration.parsed_virtual_rules :=
+ Common.union_set names !Iteration.parsed_virtual_rules;
+ (* ensure that the names of virtual and real rules don't overlap *)
+ List.iter
+ (function name -> Hashtbl.add Data.all_metadecls name [])
+ names;
+ Data.Virt(names) )
+# 17727 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = parent;
- MenhirLib.EngineTypes.startp = _startpos_parent_;
- MenhirLib.EngineTypes.endp = _endpos_parent_;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let parent : (
-# 47 "parser_cocci_menhir.mly"
- (string)
-# 13991 "parser_cocci_menhir.ml"
- ) = Obj.magic parent in
+ let _1 : 'tv_list_incl_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos_parent_ in
- let _v : 'tv_extends =
-# 218 "parser_cocci_menhir.mly"
- ( !Data.install_bindings (parent) )
-# 13998 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : (
+# 215 "parser_cocci_menhir.mly"
+ (Data.incl_iso list)
+# 17755 "parser_cocci_menhir.ml"
+ ) =
+# 321 "parser_cocci_menhir.mly"
+ ( _1 )
+# 17759 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
MenhirLib.EngineTypes.startp = _startpos__2_;
MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : (
-# 83 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 14024 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
+ let _1 : 'tv_list_incl_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : (
+# 215 "parser_cocci_menhir.mly"
+ (Data.incl_iso list)
+# 17787 "parser_cocci_menhir.ml"
+ ) =
+# 322 "parser_cocci_menhir.mly"
+ ( _1 )
+# 17791 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
let _1 : (
-# 83 "parser_cocci_menhir.mly"
+# 147 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 14029 "parser_cocci_menhir.ml"
+# 17812 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_filespec =
-# 623 "parser_cocci_menhir.mly"
- ( [Ast0.wrap
- (Ast0.FILEINFO(P.id2mcode _1,
- P.id2mcode _2))] )
-# 14038 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_includes =
+# 819 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.Include(P.clt2mcode "#include"
+ (P.drop_pos (P.drop_aft (P.id2clt _1))),
+ let (arity,ln,lln,offset,col,strbef,straft,pos) =
+ P.id2clt _1 in
+ let clt =
+ (arity,ln,lln,offset,0,strbef,straft,pos) in
+ P.clt2mcode
+ (Ast.Local (Parse_aux.str2inc (P.id2name _1)))
+ (P.drop_bef clt))) )
+# 17828 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_fninfo =
-# 758 "parser_cocci_menhir.mly"
- ( [] )
-# 14055 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 147 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 17849 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_includes =
+# 830 "parser_cocci_menhir.mly"
+ ( Ast0.wrap
+ (Ast0.Include(P.clt2mcode "#include"
+ (P.drop_pos (P.drop_aft (P.id2clt _1))),
+ let (arity,ln,lln,offset,col,strbef,straft,pos) =
+ P.id2clt _1 in
+ let clt =
+ (arity,ln,lln,offset,0,strbef,straft,pos) in
+ P.clt2mcode
+ (Ast.NonLocal (Parse_aux.str2inc (P.id2name _1)))
+ (P.drop_bef clt))) )
+# 17865 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
MenhirLib.EngineTypes.startp = _startpos__2_;
MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_fninfo = Obj.magic _2 in
- let _1 : 'tv_storage = Obj.magic _1 in
+ let _1 : (
+# 148 "parser_cocci_menhir.mly"
+ (Data.clt * token)
+# 17890 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : 'tv_fninfo =
-# 760 "parser_cocci_menhir.mly"
- ( try
- let _ =
- List.find (function Ast0.FStorage(_) -> true | _ -> false) _2 in
- raise (Semantic_cocci.Semantic "duplicate storage")
- with Not_found -> (Ast0.FStorage(_1))::_2 )
-# 14089 "parser_cocci_menhir.ml"
+ let _v : 'tv_includes =
+# 841 "parser_cocci_menhir.mly"
+ ( let (clt,ident) = _1 in
+ Ast0.wrap
+ (Ast0.Undef
+ (P.clt2mcode "#undef" clt,
+ (match ident with
+ TMetaId((nm,constraints,pure,clt)) ->
+ Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure))
+ | TIdent(nm_pure) ->
+ Ast0.wrap(Ast0.Id(P.id2mcode nm_pure))
+ | _ ->
+ raise
+ (Semantic_cocci.Semantic
+ "unexpected name for a #define")))) )
+# 17909 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = r;
- MenhirLib.EngineTypes.startp = _startpos_r_;
- MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let r : 'tv_fninfo_nt = Obj.magic r in
- let t : 'tv_ctype = Obj.magic t in
- let _startpos = _startpos_t_ in
- let _endpos = _endpos_r_ in
- let _v : 'tv_fninfo =
-# 765 "parser_cocci_menhir.mly"
- ( (Ast0.FType(t))::r )
-# 14119 "parser_cocci_menhir.ml"
+ let d : 'tv_defineop = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_includes =
+# 855 "parser_cocci_menhir.mly"
+ ( d (Ast0.wrap(Ast0.DOTS([]))) )
+# 17937 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let _2 : 'tv_fninfo = Obj.magic _2 in
- let _1 : (
-# 53 "parser_cocci_menhir.mly"
- (Data.clt)
-# 14146 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fninfo =
-# 767 "parser_cocci_menhir.mly"
- ( try
- let _ = List.find (function Ast0.FInline(_) -> true | _ -> false) _2 in
- raise (Semantic_cocci.Semantic "duplicate inline")
- with Not_found -> (Ast0.FInline(P.clt2mcode "inline" _1))::_2 )
-# 14156 "parser_cocci_menhir.ml"
+ let t : 'tv_ctype = Obj.magic t in
+ let d : 'tv_defineop = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_includes =
+# 857 "parser_cocci_menhir.mly"
+ ( let ty = Ast0.wrap(Ast0.TopExp(Ast0.wrap(Ast0.TypeExp(t)))) in
+ d (Ast0.wrap(Ast0.DOTS([ty]))) )
+# 17972 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let _2 : 'tv_fninfo = Obj.magic _2 in
- let _1 : (
-# 55 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 14183 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let b : 'tv_toplevel_seq_start_toplevel_after_dots_ = Obj.magic b in
+ let _1 : 'tv_defineop = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fninfo =
-# 772 "parser_cocci_menhir.mly"
- ( try
- let _ = List.find (function Ast0.FAttr(_) -> true | _ -> false) _2 in
- raise (Semantic_cocci.Semantic "multiple attributes")
- with Not_found -> (Ast0.FAttr(P.id2mcode _1))::_2 )
-# 14193 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_includes =
+# 860 "parser_cocci_menhir.mly"
+ ( let body =
+ match b with
+ [e] ->
+ (match Ast0.unwrap e with
+ Ast0.Exp(e1) ->
+ [Ast0.rewrap e (Ast0.TopExp(Ast0.set_arg_exp (e1)))]
+ | _ -> b)
+ | _ -> b in
+ _1 (Ast0.wrap(Ast0.DOTS(body))) )
+# 18014 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_fninfo_nt =
-# 778 "parser_cocci_menhir.mly"
- ( [] )
-# 14210 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_eexpr = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_initialize =
+# 1254 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.InitExpr(_1)) )
+# 18038 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let _2 : 'tv_fninfo_nt = Obj.magic _2 in
- let _1 : 'tv_storage = Obj.magic _1 in
+ let _3 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 18069 "parser_cocci_menhir.ml"
+ ) = Obj.magic _3 in
+ let _2 : 'tv_initialize_list = Obj.magic _2 in
+ let _1 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 18075 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fninfo_nt =
-# 780 "parser_cocci_menhir.mly"
- ( try
- let _ =
- List.find (function Ast0.FStorage(_) -> true | _ -> false) _2 in
- raise (Semantic_cocci.Semantic "duplicate storage")
- with Not_found -> (Ast0.FStorage(_1))::_2 )
-# 14244 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_initialize =
+# 1256 "parser_cocci_menhir.mly"
+ ( if P.struct_initializer _2
+ then
+ let il = P.drop_dot_commas _2 in
+ Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,il,P.clt2mcode "}" _3,false))
+ else
+ Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3,true)) )
+# 18087 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _2 : 'tv_fninfo_nt = Obj.magic _2 in
let _1 : (
-# 53 "parser_cocci_menhir.mly"
- (Data.clt)
-# 14271 "parser_cocci_menhir.ml"
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 18108 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fninfo_nt =
-# 786 "parser_cocci_menhir.mly"
- ( try
- let _ = List.find (function Ast0.FInline(_) -> true | _ -> false) _2 in
- raise (Semantic_cocci.Semantic "duplicate inline")
- with Not_found -> (Ast0.FInline(P.clt2mcode "inline" _1))::_2 )
-# 14281 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_initialize =
+# 1263 "parser_cocci_menhir.mly"
+ (let (nm,pure,clt) = _1 in
+ Ast0.wrap(Ast0.MetaInit(P.clt2mcode nm clt,pure)) )
+# 18116 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_initialize2 =
+# 1269 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.InitExpr(_1)) )
+# 18140 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let _2 : 'tv_fninfo_nt = Obj.magic _2 in
+ let _3 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 18171 "parser_cocci_menhir.ml"
+ ) = Obj.magic _3 in
+ let _2 : 'tv_initialize_list = Obj.magic _2 in
let _1 : (
-# 55 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 14308 "parser_cocci_menhir.ml"
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 18177 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fninfo_nt =
-# 791 "parser_cocci_menhir.mly"
- ( try
- let _ = List.find (function Ast0.FAttr(_) -> true | _ -> false) _2 in
- raise (Semantic_cocci.Semantic "duplicate init")
- with Not_found -> (Ast0.FAttr(P.id2mcode _1))::_2 )
-# 14318 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_initialize2 =
+# 1271 "parser_cocci_menhir.mly"
+ ( if P.struct_initializer _2
+ then
+ let il = P.drop_dot_commas _2 in
+ Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,il,P.clt2mcode "}" _3,false))
+ else
+ Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3,true)) )
+# 18189 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_fun_after_dots =
-# 1717 "parser_cocci_menhir.mly"
- ([])
-# 14335 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_initialize2 = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 18221 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_list_designator_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_initialize2 =
+# 1279 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.InitGccExt(_1,P.clt2mcode "=" _2,_3)) )
+# 18229 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let _2 : 'tv_fun_after_exp = Obj.magic _2 in
+ let _3 : 'tv_initialize2 = Obj.magic _3 in
+ let _2 : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 18261 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_mident = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fun_after_dots =
-# 1718 "parser_cocci_menhir.mly"
- (_2)
-# 14363 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_initialize2 =
+# 1281 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.InitGccName(_1,P.clt2mcode ":" _2,_3)) )
+# 18269 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _2 : 'tv_fun_after_exp = Obj.magic _2 in
- let _1 : 'tv_expr = Obj.magic _1 in
+ let _1 : 'tv_empty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fun_after_dots =
-# 1719 "parser_cocci_menhir.mly"
- (Ast0.wrap(Ast0.Exp(_1))::_2)
-# 14393 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_initialize_list =
+# 1294 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.DOTS(_1 P.mkidots (fun c -> Ast0.IComma c))) )
+# 18293 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _2 : 'tv_fun_after_stm = Obj.magic _2 in
- let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fun_after_dots =
-# 1720 "parser_cocci_menhir.mly"
- (_1@_2)
-# 14423 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_invalid =
+# 1374 "parser_cocci_menhir.mly"
+ ( raise (Semantic_cocci.Semantic "not matchable") )
+# 18315 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
- let _v : 'tv_fun_after_dots_or =
-# 1727 "parser_cocci_menhir.mly"
- ([])
-# 14440 "parser_cocci_menhir.ml"
+ let _v : 'tv_is_expression =
+# 317 "parser_cocci_menhir.mly"
+ ( false )
+# 18332 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_is_expression =
+# 318 "parser_cocci_menhir.mly"
+ ( true )
+# 18354 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_fun_after_exp_or = Obj.magic _2 in
+ let t : 'tv_ctype = Obj.magic t in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fun_after_dots_or =
-# 1728 "parser_cocci_menhir.mly"
- (_2)
-# 14468 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_iso_ctype_ =
+# 2253 "parser_cocci_menhir.mly"
+ ( Common.Left t )
+# 18382 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_fun_after_exp_or = Obj.magic _2 in
- let _1 : 'tv_expr = Obj.magic _1 in
+ let t : 'tv_ctype = Obj.magic t in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fun_after_dots_or =
-# 1729 "parser_cocci_menhir.mly"
- (Ast0.wrap(Ast0.Exp(_1))::_2)
-# 14498 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_iso_ctype_ =
+# 2254 "parser_cocci_menhir.mly"
+ ( Common.Right t )
+# 18410 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_fun_after_stm = Obj.magic _2 in
- let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
+ let t : 'tv_decl_var = Obj.magic t in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fun_after_dots_or =
-# 1730 "parser_cocci_menhir.mly"
- (_1@_2)
-# 14528 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_iso_decl_var_ =
+# 2253 "parser_cocci_menhir.mly"
+ ( Common.Left t )
+# 18438 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_fun_after_dots = Obj.magic _2 in
- let _1 : 'tv_stm_dots = Obj.magic _1 in
+ let t : 'tv_decl_var = Obj.magic t in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fun_after_exp =
-# 1723 "parser_cocci_menhir.mly"
- (_1::_2)
-# 14558 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_iso_decl_var_ =
+# 2254 "parser_cocci_menhir.mly"
+ ( Common.Right t )
+# 18466 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_fun_after_exp_or =
-# 1733 "parser_cocci_menhir.mly"
- ([])
-# 14575 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let t : 'tv_eexpr = Obj.magic t in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_iso_eexpr_ =
+# 2253 "parser_cocci_menhir.mly"
+ ( Common.Left t )
+# 18494 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_fun_after_dots = Obj.magic _2 in
- let _1 : 'tv_stm_dots = Obj.magic _1 in
+ let t : 'tv_eexpr = Obj.magic t in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fun_after_exp_or =
-# 1734 "parser_cocci_menhir.mly"
- (_1::_2)
-# 14605 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_iso_eexpr_ =
+# 2254 "parser_cocci_menhir.mly"
+ ( Common.Right t )
+# 18522 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_fun_after_stm =
-# 1712 "parser_cocci_menhir.mly"
- ([])
-# 14622 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let t : 'tv_nest_start = Obj.magic t in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_iso_nest_start_ =
+# 2253 "parser_cocci_menhir.mly"
+ ( Common.Left t )
+# 18550 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_fun_after_dots = Obj.magic _2 in
- let _1 : 'tv_stm_dots = Obj.magic _1 in
+ let t : 'tv_nest_start = Obj.magic t in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fun_after_stm =
-# 1713 "parser_cocci_menhir.mly"
- (_1::_2)
-# 14652 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_iso_nest_start_ =
+# 2254 "parser_cocci_menhir.mly"
+ ( Common.Right t )
+# 18578 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_fun_after_stm = Obj.magic _2 in
- let _1 : 'tv_decl_statement = Obj.magic _1 in
+ let t : 'tv_single_statement = Obj.magic t in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_fun_after_stm =
-# 1714 "parser_cocci_menhir.mly"
- (_1@_2)
-# 14682 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_iso_single_statement_ =
+# 2253 "parser_cocci_menhir.mly"
+ ( Common.Left t )
+# 18606 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let _1 : 'tv_fun_after_stm = Obj.magic _1 in
+ let t : 'tv_single_statement = Obj.magic t in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_fun_start =
-# 1709 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.DOTS(_1)) )
-# 14706 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_iso_single_statement_ =
+# 2254 "parser_cocci_menhir.mly"
+ ( Common.Right t )
+# 18634 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = el;
+ MenhirLib.EngineTypes.startp = _startpos_el_;
+ MenhirLib.EngineTypes.endp = _endpos_el_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = e1;
+ MenhirLib.EngineTypes.startp = _startpos_e1_;
+ MenhirLib.EngineTypes.endp = _endpos_e1_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_pure_ident = Obj.magic _1 in
+ let el : 'tv_list_iso_eexpr__ = Obj.magic el in
+ let e1 : 'tv_eexpr = Obj.magic e1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_func_ident =
-# 1507 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
-# 14730 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__4_ in
+ let _v : (
+# 231 "parser_cocci_menhir.mly"
+ (Ast0_cocci.anything list list)
+# 18672 "parser_cocci_menhir.ml"
+ ) =
+# 2221 "parser_cocci_menhir.mly"
+ ( let fn x = Ast0.ExprTag x in P.iso_adjust fn fn e1 el )
+# 18676 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = el;
+ MenhirLib.EngineTypes.startp = _startpos_el_;
+ MenhirLib.EngineTypes.endp = _endpos_el_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = e1;
+ MenhirLib.EngineTypes.startp = _startpos_e1_;
+ MenhirLib.EngineTypes.endp = _endpos_e1_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : (
-# 61 "parser_cocci_menhir.mly"
- (Parse_aux.idinfo)
-# 14751 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let el : 'tv_list_iso_eexpr__ = Obj.magic el in
+ let e1 : 'tv_eexpr = Obj.magic e1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_func_ident =
-# 1509 "parser_cocci_menhir.mly"
- ( let (nm,constraints,pure,clt) = _1 in
- Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
-# 14759 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__4_ in
+ let _v : (
+# 231 "parser_cocci_menhir.mly"
+ (Ast0_cocci.anything list list)
+# 18714 "parser_cocci_menhir.ml"
+ ) =
+# 2223 "parser_cocci_menhir.mly"
+ ( let fn x = Ast0.ArgExprTag x in P.iso_adjust fn fn e1 el )
+# 18718 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = el;
+ MenhirLib.EngineTypes.startp = _startpos_el_;
+ MenhirLib.EngineTypes.endp = _endpos_el_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = e1;
+ MenhirLib.EngineTypes.startp = _startpos_e1_;
+ MenhirLib.EngineTypes.endp = _endpos_e1_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : (
-# 61 "parser_cocci_menhir.mly"
- (Parse_aux.idinfo)
-# 14780 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let el : 'tv_list_iso_eexpr__ = Obj.magic el in
+ let e1 : 'tv_eexpr = Obj.magic e1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_func_ident =
-# 1512 "parser_cocci_menhir.mly"
- ( let (nm,constraints,pure,clt) = _1 in
- Ast0.wrap(Ast0.MetaFunc(P.clt2mcode nm clt,constraints,pure)) )
-# 14788 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__4_ in
+ let _v : (
+# 231 "parser_cocci_menhir.mly"
+ (Ast0_cocci.anything list list)
+# 18756 "parser_cocci_menhir.ml"
+ ) =
+# 2225 "parser_cocci_menhir.mly"
+ ( let fn x = Ast0.TestExprTag x in P.iso_adjust fn fn e1 el )
+# 18760 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = el;
+ MenhirLib.EngineTypes.startp = _startpos_el_;
+ MenhirLib.EngineTypes.endp = _endpos_el_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = e1;
+ MenhirLib.EngineTypes.startp = _startpos_e1_;
+ MenhirLib.EngineTypes.endp = _endpos_e1_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : (
-# 61 "parser_cocci_menhir.mly"
- (Parse_aux.idinfo)
-# 14809 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let el : 'tv_list_iso_eexpr__ = Obj.magic el in
+ let e1 : 'tv_eexpr = Obj.magic e1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_func_ident =
-# 1515 "parser_cocci_menhir.mly"
- ( let (nm,constraints,pure,clt) = _1 in
- Ast0.wrap
- (Ast0.MetaLocalFunc(P.clt2mcode nm clt,constraints,pure)) )
-# 14818 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__4_ in
+ let _v : (
+# 231 "parser_cocci_menhir.mly"
+ (Ast0_cocci.anything list list)
+# 18798 "parser_cocci_menhir.ml"
+ ) =
+# 2227 "parser_cocci_menhir.mly"
+ ( let ffn x = Ast0.ExprTag x in
+ let fn x = Ast0.TestExprTag x in
+ P.iso_adjust ffn fn e1 el )
+# 18804 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = rb;
- MenhirLib.EngineTypes.startp = _startpos_rb_;
- MenhirLib.EngineTypes.endp = _endpos_rb_;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.semv = sl;
+ MenhirLib.EngineTypes.startp = _startpos_sl_;
+ MenhirLib.EngineTypes.endp = _endpos_sl_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = lb;
- MenhirLib.EngineTypes.startp = _startpos_lb_;
- MenhirLib.EngineTypes.endp = _endpos_lb_;
+ MenhirLib.EngineTypes.semv = s1;
+ MenhirLib.EngineTypes.startp = _startpos_s1_;
+ MenhirLib.EngineTypes.endp = _endpos_s1_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = rp;
- MenhirLib.EngineTypes.startp = _startpos_rp_;
- MenhirLib.EngineTypes.endp = _endpos_rp_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = lp;
- MenhirLib.EngineTypes.startp = _startpos_lp_;
- MenhirLib.EngineTypes.endp = _endpos_lp_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = i;
- MenhirLib.EngineTypes.startp = _startpos_i_;
- MenhirLib.EngineTypes.endp = _endpos_i_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = f;
- MenhirLib.EngineTypes.startp = _startpos_f_;
- MenhirLib.EngineTypes.endp = _endpos_f_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
};
} = _menhir_stack in
- let rb : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 14878 "parser_cocci_menhir.ml"
- ) = Obj.magic rb in
- let b : 'tv_fun_start = Obj.magic b in
- let lb : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 14884 "parser_cocci_menhir.ml"
- ) = Obj.magic lb in
- let rp : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 14889 "parser_cocci_menhir.ml"
- ) = Obj.magic rp in
- let d : 'tv_decl_list_decl_ = Obj.magic d in
- let lp : (
-# 76 "parser_cocci_menhir.mly"
- (Data.clt)
-# 14895 "parser_cocci_menhir.ml"
- ) = Obj.magic lp in
- let i : 'tv_func_ident = Obj.magic i in
- let f : 'tv_fninfo = Obj.magic f in
- let _startpos = _startpos_f_ in
- let _endpos = _endpos_rb_ in
- let _v : 'tv_fundecl =
-# 749 "parser_cocci_menhir.mly"
- ( P.verify_parameter_declarations (Ast0.undots d);
- Ast0.wrap(Ast0.FunDecl((Ast0.default_info(),Ast0.context_befaft()),
- f, i,
- P.clt2mcode "(" lp, d,
- P.clt2mcode ")" rp,
- P.clt2mcode "{" lb, b,
- P.clt2mcode "}" rb)) )
-# 14910 "parser_cocci_menhir.ml"
+ let sl : 'tv_list_iso_single_statement__ = Obj.magic sl in
+ let s1 : 'tv_single_statement = Obj.magic s1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__4_ in
+ let _v : (
+# 231 "parser_cocci_menhir.mly"
+ (Ast0_cocci.anything list list)
+# 18842 "parser_cocci_menhir.ml"
+ ) =
+# 2231 "parser_cocci_menhir.mly"
+ ( let fn x = Ast0.StmtTag x in P.iso_adjust fn fn s1 sl )
+# 18846 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = pt;
- MenhirLib.EngineTypes.startp = _startpos_pt_;
- MenhirLib.EngineTypes.endp = _endpos_pt_;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = rp;
- MenhirLib.EngineTypes.startp = _startpos_rp_;
- MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.semv = tl;
+ MenhirLib.EngineTypes.startp = _startpos_tl_;
+ MenhirLib.EngineTypes.endp = _endpos_tl_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.semv = t1;
+ MenhirLib.EngineTypes.startp = _startpos_t1_;
+ MenhirLib.EngineTypes.endp = _endpos_t1_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = lp;
- MenhirLib.EngineTypes.startp = _startpos_lp_;
- MenhirLib.EngineTypes.endp = _endpos_lp_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = id;
- MenhirLib.EngineTypes.startp = _startpos_id_;
- MenhirLib.EngineTypes.endp = _endpos_id_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
};
} = _menhir_stack in
- let pt : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 14956 "parser_cocci_menhir.ml"
- ) = Obj.magic pt in
- let rp : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 14961 "parser_cocci_menhir.ml"
- ) = Obj.magic rp in
- let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
- let lp : (
-# 76 "parser_cocci_menhir.mly"
- (Data.clt)
-# 14967 "parser_cocci_menhir.ml"
- ) = Obj.magic lp in
- let id : 'tv_func_ident = Obj.magic id in
- let t : 'tv_ctype = Obj.magic t in
- let _startpos = _startpos_t_ in
- let _endpos = _endpos_pt_ in
- let _v : 'tv_funproto = let s =
-
-# 39 "standard.mly"
- ( None )
-# 14977 "parser_cocci_menhir.ml"
-
- in
-
-# 737 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.UnInit
- (s,
- Ast0.wrap
- (Ast0.FunctionType(Some t,
- P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
- id, P.clt2mcode ";" pt)) )
-# 14989 "parser_cocci_menhir.ml"
+ let tl : 'tv_list_iso_ctype__ = Obj.magic tl in
+ let t1 : 'tv_ctype = Obj.magic t1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__4_ in
+ let _v : (
+# 231 "parser_cocci_menhir.mly"
+ (Ast0_cocci.anything list list)
+# 18884 "parser_cocci_menhir.ml"
+ ) =
+# 2233 "parser_cocci_menhir.mly"
+ ( let fn x = Ast0.TypeCTag x in P.iso_adjust fn fn t1 tl )
+# 18888 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = Obj.repr _v;
MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = pt;
- MenhirLib.EngineTypes.startp = _startpos_pt_;
- MenhirLib.EngineTypes.endp = _endpos_pt_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = rp;
- MenhirLib.EngineTypes.startp = _startpos_rp_;
- MenhirLib.EngineTypes.endp = _endpos_rp_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = lp;
- MenhirLib.EngineTypes.startp = _startpos_lp_;
- MenhirLib.EngineTypes.endp = _endpos_lp_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = id;
- MenhirLib.EngineTypes.startp = _startpos_id_;
- MenhirLib.EngineTypes.endp = _endpos_id_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = el;
+ MenhirLib.EngineTypes.startp = _startpos_el_;
+ MenhirLib.EngineTypes.endp = _endpos_el_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = e1;
+ MenhirLib.EngineTypes.startp = _startpos_e1_;
+ MenhirLib.EngineTypes.endp = _endpos_e1_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
};
} = _menhir_stack in
- let pt : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15040 "parser_cocci_menhir.ml"
- ) = Obj.magic pt in
- let rp : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15045 "parser_cocci_menhir.ml"
- ) = Obj.magic rp in
- let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
- let lp : (
-# 76 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15051 "parser_cocci_menhir.ml"
- ) = Obj.magic lp in
- let id : 'tv_func_ident = Obj.magic id in
- let t : 'tv_ctype = Obj.magic t in
- let x0 : 'tv_storage = Obj.magic x0 in
- let _startpos = _startpos_x0_ in
- let _endpos = _endpos_pt_ in
- let _v : 'tv_funproto = let s =
- let x = x0 in
-
-# 41 "standard.mly"
- ( Some x )
-# 15063 "parser_cocci_menhir.ml"
-
- in
-
-# 737 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.UnInit
- (s,
- Ast0.wrap
- (Ast0.FunctionType(Some t,
- P.clt2mcode "(" lp, d, P.clt2mcode ")" rp)),
- id, P.clt2mcode ";" pt)) )
-# 15075 "parser_cocci_menhir.ml"
+ let el : 'tv_list_iso_nest_start__ = Obj.magic el in
+ let e1 : 'tv_nest_start = Obj.magic e1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__4_ in
+ let _v : (
+# 231 "parser_cocci_menhir.mly"
+ (Ast0_cocci.anything list list)
+# 18926 "parser_cocci_menhir.ml"
+ ) =
+# 2235 "parser_cocci_menhir.mly"
+ ( let fn x = Ast0.DotsStmtTag x in P.iso_adjust fn fn e1 el )
+# 18930 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = dl;
+ MenhirLib.EngineTypes.startp = _startpos_dl_;
+ MenhirLib.EngineTypes.endp = _endpos_dl_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d1;
+ MenhirLib.EngineTypes.startp = _startpos_d1_;
+ MenhirLib.EngineTypes.endp = _endpos_d1_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_pure_ident = Obj.magic _1 in
+ let dl : 'tv_list_iso_decl_var__ = Obj.magic dl in
+ let d1 : 'tv_decl_var = Obj.magic d1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_ident =
-# 1520 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
-# 15099 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__4_ in
+ let _v : (
+# 231 "parser_cocci_menhir.mly"
+ (Ast0_cocci.anything list list)
+# 18968 "parser_cocci_menhir.ml"
+ ) =
+# 2237 "parser_cocci_menhir.mly"
+ ( let check_one = function
+ [x] -> x
+ | _ ->
+ raise
+ (Semantic_cocci.Semantic
+ "only one variable per declaration in an isomorphism rule") in
+ let d1 = check_one d1 in
+ let dl =
+ List.map
+ (function
+ Common.Left x -> Common.Left(check_one x)
+ | Common.Right x -> Common.Right(check_one x))
+ dl in
+ let fn x = Ast0.DeclTag x in P.iso_adjust fn fn d1 dl )
+# 18985 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : (
-# 61 "parser_cocci_menhir.mly"
- (Parse_aux.idinfo)
-# 15120 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_ident =
-# 1522 "parser_cocci_menhir.mly"
- ( let (nm,constraints,pure,clt) = _1 in
- Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
-# 15128 "parser_cocci_menhir.ml"
+ let m : 'tv_metadec = Obj.magic m in
+ let _startpos = _startpos_m_ in
+ let _endpos = _endpos_m_ in
+ let _v : (
+# 234 "parser_cocci_menhir.mly"
+ ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
+# 19009 "parser_cocci_menhir.ml"
+ ) =
+# 251 "parser_cocci_menhir.mly"
+ ( m "" )
+# 19013 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = i;
- MenhirLib.EngineTypes.startp = _startpos_i_;
- MenhirLib.EngineTypes.endp = _endpos_i_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = nm;
+ MenhirLib.EngineTypes.startp = _startpos_nm_;
+ MenhirLib.EngineTypes.endp = _endpos_nm_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let i : 'tv_pure_ident = Obj.magic i in
- let _startpos = _startpos_i_ in
- let _endpos = _endpos_i_ in
- let _v : 'tv_ident_or_const =
-# 1474 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))) )
-# 15152 "parser_cocci_menhir.ml"
+ let nm : 'tv_pure_ident = Obj.magic nm in
+ let _startpos = _startpos_nm_ in
+ let _endpos = _endpos__2_ in
+ let _v : (
+# 218 "parser_cocci_menhir.mly"
+ (Ast_cocci.rulename)
+# 19041 "parser_cocci_menhir.ml"
+ ) =
+# 266 "parser_cocci_menhir.mly"
+ ( P.make_iso_rule_name_result (P.id2name nm) )
+# 19045 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 15173 "parser_cocci_menhir.ml"
+# 19066 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_ident_or_const =
-# 1476 "parser_cocci_menhir.mly"
- ( let (x,clt) = _1 in
- Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
-# 15181 "parser_cocci_menhir.ml"
+ let _v : 'tv_iter_ident =
+# 1894 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
+# 19073 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 80 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 15202 "parser_cocci_menhir.ml"
+# 129 "parser_cocci_menhir.mly"
+ (Parse_aux.idinfo)
+# 19094 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_incl =
-# 256 "parser_cocci_menhir.mly"
- ( let (x,_) = _1 in Data.Include(x) )
-# 15209 "parser_cocci_menhir.ml"
+ let _v : 'tv_iter_ident =
+# 1896 "parser_cocci_menhir.mly"
+ ( let (nm,constraints,pure,clt) = _1 in
+ Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
+# 19102 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- } = _menhir_stack in
- let _2 : (
-# 87 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 15234 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_incl =
-# 257 "parser_cocci_menhir.mly"
- ( Data.Iso(Common.Left(P.id2name _2)) )
-# 15241 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_TMul_ =
+# 114 "standard.mly"
+ ( [] )
+# 19119 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : (
-# 79 "parser_cocci_menhir.mly"
- (string)
-# 15266 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_incl =
-# 258 "parser_cocci_menhir.mly"
- ( Data.Iso(Common.Right _2) )
-# 15273 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_TMul_ = Obj.magic xs in
+ let x : (
+# 166 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 19146 "parser_cocci_menhir.ml"
+ ) = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_TMul_ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19153 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_array_dec_ =
+# 114 "standard.mly"
+ ( [] )
+# 19170 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _1 : 'tv_list_incl_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : (
-# 146 "parser_cocci_menhir.mly"
- (Data.incl_iso list)
-# 15301 "parser_cocci_menhir.ml"
- ) =
-# 252 "parser_cocci_menhir.mly"
- ( _1 )
-# 15305 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_array_dec_ = Obj.magic xs in
+ let x : 'tv_array_dec = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_array_dec_ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19200 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_case_line_ =
+# 114 "standard.mly"
+ ( [] )
+# 19217 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _1 : 'tv_list_incl_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : (
-# 146 "parser_cocci_menhir.mly"
- (Data.incl_iso list)
-# 15333 "parser_cocci_menhir.ml"
- ) =
-# 253 "parser_cocci_menhir.mly"
- ( _1 )
-# 15337 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_case_line_ = Obj.magic xs in
+ let x : 'tv_case_line = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_case_line_ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19247 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : (
-# 80 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 15358 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_includes =
-# 629 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.Include(P.clt2mcode "#include" (P.drop_aft (P.id2clt _1)),
- let (arity,ln,lln,offset,col,strbef,straft,pos) =
- P.id2clt _1 in
- let clt =
- (arity,ln,lln,offset,0,strbef,straft,pos) in
- P.clt2mcode
- (Ast.Local (Parse_aux.str2inc (P.id2name _1)))
- (P.drop_bef clt))) )
-# 15373 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_decl_var_ =
+# 114 "standard.mly"
+ ( [] )
+# 19264 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let _1 : (
-# 80 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 15394 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_includes =
-# 639 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.Include(P.clt2mcode "#include" (P.drop_aft (P.id2clt _1)),
- let (arity,ln,lln,offset,col,strbef,straft,pos) =
- P.id2clt _1 in
- let clt =
- (arity,ln,lln,offset,0,strbef,straft,pos) in
- P.clt2mcode
- (Ast.NonLocal (Parse_aux.str2inc (P.id2name _1)))
- (P.drop_bef clt))) )
-# 15409 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_decl_var_ = Obj.magic xs in
+ let x : 'tv_decl_var = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_decl_var_ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19294 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- } = _menhir_stack in
- let t : 'tv_ctype = Obj.magic t in
- let d : 'tv_defineop = Obj.magic d in
- let _startpos = _startpos_d_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_includes =
-# 649 "parser_cocci_menhir.mly"
- ( let ty = Ast0.wrap(Ast0.TopExp(Ast0.wrap(Ast0.TypeExp(t)))) in
- d (Ast0.wrap(Ast0.DOTS([ty]))) )
-# 15444 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_designator_ =
+# 114 "standard.mly"
+ ( [] )
+# 19311 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let b : 'tv_toplevel_seq_start_toplevel_after_dots_ = Obj.magic b in
- let _1 : 'tv_defineop = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_includes =
-# 652 "parser_cocci_menhir.mly"
- ( let body =
- match b with
- [e] ->
- (match Ast0.unwrap e with
- Ast0.Exp(e1) ->
- [Ast0.rewrap e (Ast0.TopExp(Ast0.set_arg_exp (e1)))]
- | _ -> b)
- | _ -> b in
- _1 (Ast0.wrap(Ast0.DOTS(body))) )
-# 15486 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_designator_ = Obj.magic xs in
+ let x : 'tv_designator = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_designator_ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19341 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : 'tv_eexpr = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_initialize =
-# 1055 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.InitExpr(_1)) )
-# 15510 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_incl_ =
+# 114 "standard.mly"
+ ( [] )
+# 19358 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _3 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15541 "parser_cocci_menhir.ml"
- ) = Obj.magic _3 in
- let _2 : 'tv_initialize_list = Obj.magic _2 in
- let _1 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15547 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_initialize =
-# 1057 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3)) )
-# 15554 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_incl_ = Obj.magic xs in
+ let x : 'tv_incl = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_incl_ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19388 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_iso_ctype__ =
+# 114 "standard.mly"
+ ( [] )
+# 19405 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15580 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15585 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_initialize =
-# 1059 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.InitList(P.clt2mcode "{" _1,Ast0.wrap(Ast0.DOTS []),
- P.clt2mcode "}" _2)) )
-# 15594 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_iso_ctype__ = Obj.magic xs in
+ let x : 'tv_iso_ctype_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_iso_ctype__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19435 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : (
-# 65 "parser_cocci_menhir.mly"
- (Parse_aux.info)
-# 15615 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_initialize =
-# 1063 "parser_cocci_menhir.mly"
- (let (nm,pure,clt) = _1 in
- Ast0.wrap(Ast0.MetaInit(P.clt2mcode nm clt,pure)) )
-# 15623 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_iso_decl_var__ =
+# 114 "standard.mly"
+ ( [] )
+# 19452 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let _1 : 'tv_arith_expr_eexpr_invalid_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_initialize2 =
-# 1069 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.InitExpr(_1)) )
-# 15647 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_iso_decl_var__ = Obj.magic xs in
+ let x : 'tv_iso_decl_var_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_iso_decl_var__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19482 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- } = _menhir_stack in
- let _3 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15678 "parser_cocci_menhir.ml"
- ) = Obj.magic _3 in
- let _2 : 'tv_initialize_list = Obj.magic _2 in
- let _1 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15684 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_initialize2 =
-# 1071 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3)) )
-# 15691 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_iso_eexpr__ =
+# 114 "standard.mly"
+ ( [] )
+# 19499 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15717 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : (
-# 101 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15722 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_initialize2 =
-# 1073 "parser_cocci_menhir.mly"
- ( Ast0.wrap
- (Ast0.InitList(P.clt2mcode "{" _1,Ast0.wrap(Ast0.DOTS []),
- P.clt2mcode "}" _2)) )
-# 15731 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_iso_eexpr__ = Obj.magic xs in
+ let x : 'tv_iso_eexpr_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_iso_eexpr__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19529 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- } = _menhir_stack in
- let _3 : 'tv_initialize2 = Obj.magic _3 in
- let _2 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15763 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : 'tv_list_designator_ = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_initialize2 =
-# 1078 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.InitGccExt(_1,P.clt2mcode "=" _2,_3)) )
-# 15771 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_iso_nest_start__ =
+# 114 "standard.mly"
+ ( [] )
+# 19546 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _3 : 'tv_initialize2 = Obj.magic _3 in
- let _2 : (
-# 76 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15803 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : 'tv_ident = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_initialize2 =
-# 1080 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.InitGccName(_1,P.clt2mcode ":" _2,_3)) )
-# 15811 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_iso_nest_start__ = Obj.magic xs in
+ let x : 'tv_iso_nest_start_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_iso_nest_start__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19576 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let _1 : 'tv_initialize_list_start = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_initialize_list =
-# 1092 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.DOTS(_1)) )
-# 15835 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_iso_single_statement__ =
+# 114 "standard.mly"
+ ( [] )
+# 19593 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15861 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : 'tv_initialize2 = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_initialize_list_start =
-# 1095 "parser_cocci_menhir.mly"
- ( [_1;Ast0.wrap(Ast0.IComma(P.clt2mcode "," _2))] )
-# 15869 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_iso_single_statement__ = Obj.magic xs in
+ let x : 'tv_iso_single_statement_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_iso_single_statement__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19623 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- } = _menhir_stack in
- let _3 : 'tv_initialize_list_start = Obj.magic _3 in
- let _2 : (
-# 107 "parser_cocci_menhir.mly"
- (Data.clt)
-# 15901 "parser_cocci_menhir.ml"
- ) = Obj.magic _2 in
- let _1 : 'tv_initialize2 = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_initialize_list_start =
-# 1097 "parser_cocci_menhir.mly"
- ( _1::Ast0.wrap(Ast0.IComma(P.clt2mcode "," _2))::_3 )
-# 15909 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_mzl_ctype__ =
+# 114 "standard.mly"
+ ( [] )
+# 19640 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = r;
- MenhirLib.EngineTypes.startp = _startpos_r_;
- MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let r : 'tv_comma_initializers_edots_when_TEllipsis_initialize__ = Obj.magic r in
- let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in
- let _startpos = _startpos_d_ in
- let _endpos = _endpos_r_ in
- let _v : 'tv_initialize_list_start =
-# 1100 "parser_cocci_menhir.mly"
- ( (P.mkidots "..." d)::
- (List.concat(List.map (function x -> x (P.mkidots "...")) r)) )
-# 15940 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_mzl_ctype__ = Obj.magic xs in
+ let x : 'tv_mzl_ctype_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_mzl_ctype__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19670 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_mzl_eexpr__ =
+# 114 "standard.mly"
+ ( [] )
+# 19687 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_invalid =
-# 1193 "parser_cocci_menhir.mly"
- ( raise (Semantic_cocci.Semantic "not matchable") )
-# 15962 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_mzl_eexpr__ = Obj.magic xs in
+ let x : 'tv_mzl_eexpr_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_mzl_eexpr__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19717 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
- let _v : 'tv_is_expression =
-# 248 "parser_cocci_menhir.mly"
- ( false )
-# 15979 "parser_cocci_menhir.ml"
+ let _v : 'tv_list_mzl_fun_after_dots_or__ =
+# 114 "standard.mly"
+ ( [] )
+# 19734 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_is_expression =
-# 249 "parser_cocci_menhir.mly"
- ( true )
-# 16001 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_mzl_fun_after_dots_or__ = Obj.magic xs in
+ let x : 'tv_mzl_fun_after_dots_or_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_mzl_fun_after_dots_or__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19764 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- } = _menhir_stack in
- let t : 'tv_ctype = Obj.magic t in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_iso_ctype_ =
-# 1877 "parser_cocci_menhir.mly"
- ( Common.Left t )
-# 16029 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_mzl_fun_start__ =
+# 114 "standard.mly"
+ ( [] )
+# 19781 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let t : 'tv_ctype = Obj.magic t in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_iso_ctype_ =
-# 1878 "parser_cocci_menhir.mly"
- ( Common.Right t )
-# 16057 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_mzl_fun_start__ = Obj.magic xs in
+ let x : 'tv_mzl_fun_start_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_mzl_fun_start__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19811 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- } = _menhir_stack in
- let t : 'tv_decl_var = Obj.magic t in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_iso_decl_var_ =
-# 1877 "parser_cocci_menhir.mly"
- ( Common.Left t )
-# 16085 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_mzl_mctype__ =
+# 114 "standard.mly"
+ ( [] )
+# 19828 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let t : 'tv_decl_var = Obj.magic t in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_iso_decl_var_ =
-# 1878 "parser_cocci_menhir.mly"
- ( Common.Right t )
-# 16113 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_mzl_mctype__ = Obj.magic xs in
+ let x : 'tv_mzl_mctype_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_mzl_mctype__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19858 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- } = _menhir_stack in
- let t : 'tv_dexpr = Obj.magic t in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_iso_dexpr_ =
-# 1877 "parser_cocci_menhir.mly"
- ( Common.Left t )
-# 16141 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_mzl_rule_elem_statement__ =
+# 114 "standard.mly"
+ ( [] )
+# 19875 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let t : 'tv_dexpr = Obj.magic t in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_iso_dexpr_ =
-# 1878 "parser_cocci_menhir.mly"
- ( Common.Right t )
-# 16169 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_mzl_rule_elem_statement__ = Obj.magic xs in
+ let x : 'tv_mzl_rule_elem_statement_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_mzl_rule_elem_statement__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19905 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- } = _menhir_stack in
- let t : 'tv_nest_start = Obj.magic t in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_iso_nest_start_ =
-# 1877 "parser_cocci_menhir.mly"
- ( Common.Left t )
-# 16197 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_mzl_statement__ =
+# 114 "standard.mly"
+ ( [] )
+# 19922 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let t : 'tv_nest_start = Obj.magic t in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_iso_nest_start_ =
-# 1878 "parser_cocci_menhir.mly"
- ( Common.Right t )
-# 16225 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_mzl_statement__ = Obj.magic xs in
+ let x : 'tv_mzl_statement_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_mzl_statement__ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 19952 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- } = _menhir_stack in
- let t : 'tv_single_statement = Obj.magic t in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_iso_single_statement_ =
-# 1877 "parser_cocci_menhir.mly"
- ( Common.Left t )
-# 16253 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ =
+# 114 "standard.mly"
+ ( [] )
+# 19969 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = y0;
+ MenhirLib.EngineTypes.startp = _startpos_y0_;
+ MenhirLib.EngineTypes.endp = _endpos_y0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let t : 'tv_single_statement = Obj.magic t in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_iso_single_statement_ =
-# 1878 "parser_cocci_menhir.mly"
- ( Common.Right t )
-# 16281 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = Obj.magic xs in
+ let y0 : 'tv_dexpr = Obj.magic y0 in
+ let x0 : 'tv_edots_when_TEllipsis_eexpr_ = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = let x =
+ let y = y0 in
+ let x = x0 in
+
+# 70 "standard.mly"
+ ( (x, y) )
+# 20008 "parser_cocci_menhir.ml"
+
+ in
+
+# 116 "standard.mly"
+ ( x :: xs )
+# 20014 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = el;
- MenhirLib.EngineTypes.startp = _startpos_el_;
- MenhirLib.EngineTypes.endp = _endpos_el_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = e1;
- MenhirLib.EngineTypes.startp = _startpos_e1_;
- MenhirLib.EngineTypes.endp = _endpos_e1_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- } = _menhir_stack in
- let el : 'tv_list_iso_dexpr__ = Obj.magic el in
- let e1 : 'tv_dexpr = Obj.magic e1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__4_ in
- let _v : (
-# 162 "parser_cocci_menhir.mly"
- (Ast0_cocci.anything list list)
-# 16319 "parser_cocci_menhir.ml"
- ) =
-# 1849 "parser_cocci_menhir.mly"
- ( P.iso_adjust (function x -> Ast0.ExprTag x) e1 el )
-# 16323 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_list_whenppdecs_ =
+# 114 "standard.mly"
+ ( [] )
+# 20031 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = el;
- MenhirLib.EngineTypes.startp = _startpos_el_;
- MenhirLib.EngineTypes.endp = _endpos_el_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = e1;
- MenhirLib.EngineTypes.startp = _startpos_e1_;
- MenhirLib.EngineTypes.endp = _endpos_e1_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let el : 'tv_list_iso_dexpr__ = Obj.magic el in
- let e1 : 'tv_dexpr = Obj.magic e1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__4_ in
- let _v : (
-# 162 "parser_cocci_menhir.mly"
- (Ast0_cocci.anything list list)
-# 16361 "parser_cocci_menhir.ml"
- ) =
-# 1851 "parser_cocci_menhir.mly"
- ( P.iso_adjust (function x -> Ast0.ArgExprTag x) e1 el )
-# 16365 "parser_cocci_menhir.ml"
+ let xs : 'tv_list_whenppdecs_ = Obj.magic xs in
+ let x : 'tv_whenppdecs = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_list_whenppdecs_ =
+# 116 "standard.mly"
+ ( x :: xs )
+# 20061 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = el;
- MenhirLib.EngineTypes.startp = _startpos_el_;
- MenhirLib.EngineTypes.endp = _endpos_el_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = e1;
- MenhirLib.EngineTypes.startp = _startpos_e1_;
- MenhirLib.EngineTypes.endp = _endpos_e1_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let el : 'tv_list_iso_dexpr__ = Obj.magic el in
- let e1 : 'tv_dexpr = Obj.magic e1 in
+ let _1 : 'tv_pure_ident_or_meta_ident = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__4_ in
- let _v : (
-# 162 "parser_cocci_menhir.mly"
- (Ast0_cocci.anything list list)
-# 16403 "parser_cocci_menhir.ml"
- ) =
-# 1853 "parser_cocci_menhir.mly"
- ( P.iso_adjust (function x -> Ast0.TestExprTag x) e1 el )
-# 16407 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_list_len =
+# 400 "parser_cocci_menhir.mly"
+ ( Common.Left _1 )
+# 20085 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = sl;
- MenhirLib.EngineTypes.startp = _startpos_sl_;
- MenhirLib.EngineTypes.endp = _endpos_sl_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = s1;
- MenhirLib.EngineTypes.startp = _startpos_s1_;
- MenhirLib.EngineTypes.endp = _endpos_s1_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let sl : 'tv_list_iso_single_statement__ = Obj.magic sl in
- let s1 : 'tv_single_statement = Obj.magic s1 in
+ let _1 : (
+# 154 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 20106 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__4_ in
- let _v : (
-# 162 "parser_cocci_menhir.mly"
- (Ast0_cocci.anything list list)
-# 16445 "parser_cocci_menhir.ml"
- ) =
-# 1855 "parser_cocci_menhir.mly"
- ( P.iso_adjust (function x -> Ast0.StmtTag x) s1 sl )
-# 16449 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_list_len =
+# 401 "parser_cocci_menhir.mly"
+ ( let (x,clt) = _1 in Common.Right (int_of_string x) )
+# 20113 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = tl;
- MenhirLib.EngineTypes.startp = _startpos_tl_;
- MenhirLib.EngineTypes.endp = _endpos_tl_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = t1;
- MenhirLib.EngineTypes.startp = _startpos_t1_;
- MenhirLib.EngineTypes.endp = _endpos_t1_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- } = _menhir_stack in
- let tl : 'tv_list_iso_ctype__ = Obj.magic tl in
- let t1 : 'tv_ctype = Obj.magic t1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__4_ in
- let _v : (
-# 162 "parser_cocci_menhir.mly"
- (Ast0_cocci.anything list list)
-# 16487 "parser_cocci_menhir.ml"
- ) =
-# 1857 "parser_cocci_menhir.mly"
- ( P.iso_adjust (function x -> Ast0.TypeCTag x) t1 tl )
-# 16491 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_loption_choose_iso_ =
+# 57 "standard.mly"
+ ( [] )
+# 20130 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = el;
- MenhirLib.EngineTypes.startp = _startpos_el_;
- MenhirLib.EngineTypes.endp = _endpos_el_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = e1;
- MenhirLib.EngineTypes.startp = _startpos_e1_;
- MenhirLib.EngineTypes.endp = _endpos_e1_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let el : 'tv_list_iso_nest_start__ = Obj.magic el in
- let e1 : 'tv_nest_start = Obj.magic e1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__4_ in
- let _v : (
-# 162 "parser_cocci_menhir.mly"
- (Ast0_cocci.anything list list)
-# 16529 "parser_cocci_menhir.ml"
- ) =
-# 1859 "parser_cocci_menhir.mly"
- ( P.iso_adjust (function x -> Ast0.DotsStmtTag x) e1 el )
-# 16533 "parser_cocci_menhir.ml"
+ let x : 'tv_choose_iso = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_x_ in
+ let _v : 'tv_loption_choose_iso_ =
+# 59 "standard.mly"
+ ( x )
+# 20154 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = dl;
- MenhirLib.EngineTypes.startp = _startpos_dl_;
- MenhirLib.EngineTypes.endp = _endpos_dl_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d1;
- MenhirLib.EngineTypes.startp = _startpos_d1_;
- MenhirLib.EngineTypes.endp = _endpos_d1_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- } = _menhir_stack in
- let dl : 'tv_list_iso_decl_var__ = Obj.magic dl in
- let d1 : 'tv_decl_var = Obj.magic d1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__4_ in
- let _v : (
-# 162 "parser_cocci_menhir.mly"
- (Ast0_cocci.anything list list)
-# 16571 "parser_cocci_menhir.ml"
- ) =
-# 1861 "parser_cocci_menhir.mly"
- ( let check_one = function
- [x] -> x
- | _ ->
- raise
- (Semantic_cocci.Semantic
- "only one variable per declaration in an isomorphism rule") in
- let d1 = check_one d1 in
- let dl =
- List.map
- (function
- Common.Left x -> Common.Left(check_one x)
- | Common.Right x -> Common.Right(check_one x))
- dl in
- P.iso_adjust (function x -> Ast0.DeclTag x) d1 dl )
-# 16588 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_loption_disable_ =
+# 57 "standard.mly"
+ ( [] )
+# 20171 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let m : 'tv_metadec = Obj.magic m in
- let _startpos = _startpos_m_ in
- let _endpos = _endpos_m_ in
- let _v : (
-# 165 "parser_cocci_menhir.mly"
- ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
-# 16612 "parser_cocci_menhir.ml"
- ) =
-# 182 "parser_cocci_menhir.mly"
- ( m "" )
-# 16616 "parser_cocci_menhir.ml"
+ let x : 'tv_disable = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_x_ in
+ let _v : 'tv_loption_disable_ =
+# 59 "standard.mly"
+ ( x )
+# 20195 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = nm;
- MenhirLib.EngineTypes.startp = _startpos_nm_;
- MenhirLib.EngineTypes.endp = _endpos_nm_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- } = _menhir_stack in
- let nm : 'tv_pure_ident = Obj.magic nm in
- let _startpos = _startpos_nm_ in
- let _endpos = _endpos__2_ in
- let _v : (
-# 149 "parser_cocci_menhir.mly"
- (Ast_cocci.rulename)
-# 16644 "parser_cocci_menhir.ml"
- ) =
-# 197 "parser_cocci_menhir.mly"
- ( P.make_iso_rule_name_result (P.id2name nm) )
-# 16648 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_loption_filespec_ =
+# 57 "standard.mly"
+ ( [] )
+# 20212 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : (
-# 59 "parser_cocci_menhir.mly"
- (string * Data.clt)
-# 16669 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_iter_ident =
-# 1534 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
-# 16676 "parser_cocci_menhir.ml"
+ let x : 'tv_filespec = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_x_ in
+ let _v : 'tv_loption_filespec_ =
+# 59 "standard.mly"
+ ( x )
+# 20236 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_loption_minus_start_ =
+# 57 "standard.mly"
+ ( [] )
+# 20253 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : (
-# 62 "parser_cocci_menhir.mly"
- (Parse_aux.idinfo)
-# 16697 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_iter_ident =
-# 1536 "parser_cocci_menhir.mly"
- ( let (nm,constraints,pure,clt) = _1 in
- Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
-# 16705 "parser_cocci_menhir.ml"
+ let x : 'tv_minus_start = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_x_ in
+ let _v : 'tv_loption_minus_start_ =
+# 59 "standard.mly"
+ ( x )
+# 20277 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
- let _v : 'tv_list_TMul_ =
-# 114 "standard.mly"
+ let _v : 'tv_loption_not_pos_ =
+# 57 "standard.mly"
( [] )
-# 16722 "parser_cocci_menhir.ml"
+# 20294 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let xs : 'tv_list_TMul_ = Obj.magic xs in
- let x : (
-# 99 "parser_cocci_menhir.mly"
- (Data.clt)
-# 16749 "parser_cocci_menhir.ml"
- ) = Obj.magic x in
+ let x : 'tv_not_pos = Obj.magic x in
let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_TMul_ =
-# 116 "standard.mly"
- ( x :: xs )
-# 16756 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_x_ in
+ let _v : 'tv_loption_not_pos_ =
+# 59 "standard.mly"
+ ( x )
+# 20318 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
- let _v : 'tv_list_array_dec_ =
-# 114 "standard.mly"
+ let _v : 'tv_loption_plus_start_ =
+# 57 "standard.mly"
( [] )
-# 16773 "parser_cocci_menhir.ml"
+# 20335 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let xs : 'tv_list_array_dec_ = Obj.magic xs in
- let x : 'tv_array_dec = Obj.magic x in
+ let x : 'tv_plus_start = Obj.magic x in
let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_array_dec_ =
-# 116 "standard.mly"
- ( x :: xs )
-# 16803 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_x_ in
+ let _v : 'tv_loption_plus_start_ =
+# 59 "standard.mly"
+ ( x )
+# 20359 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_case_line_ =
-# 114 "standard.mly"
- ( [] )
-# 16820 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 20380 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_mctype =
+# 685 "parser_cocci_menhir.mly"
+ ( tmeta_to_type _1 )
+# 20387 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let xs : 'tv_list_case_line_ = Obj.magic xs in
- let x : 'tv_case_line = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_case_line_ =
-# 116 "standard.mly"
- ( x :: xs )
-# 16850 "parser_cocci_menhir.ml"
+ let _1 : 'tv_ctype = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_mctype =
+# 686 "parser_cocci_menhir.mly"
+ (_1)
+# 20411 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_comma_decls_TEllipsis_decl__ =
-# 114 "standard.mly"
- ( [] )
-# 16867 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let t : 'tv_typedef_ctype = Obj.magic t in
+ let _startpos = _startpos_t_ in
+ let _endpos = _endpos_t_ in
+ let _v : 'tv_meta_exp_type =
+# 585 "parser_cocci_menhir.mly"
+ ( [Ast0_cocci.ast0_type_to_type t] )
+# 20435 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_comma_decls_TEllipsis_decl__ = Obj.magic xs in
- let x : 'tv_comma_decls_TEllipsis_decl_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_comma_decls_TEllipsis_decl__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 16897 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_comma_decls_TEllipsis_name_opt_decl__ =
-# 114 "standard.mly"
- ( [] )
-# 16914 "parser_cocci_menhir.ml"
+ let t : 'tv_typedef_ctype = Obj.magic t in
+ let _startpos = _startpos_t_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_meta_exp_type =
+# 587 "parser_cocci_menhir.mly"
+ ( [Type_cocci.Array (Ast0_cocci.ast0_type_to_type t)] )
+# 20467 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_comma_decls_TEllipsis_name_opt_decl__ = Obj.magic xs in
- let x : 'tv_comma_decls_TEllipsis_name_opt_decl_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_comma_decls_TEllipsis_name_opt_decl__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 16944 "parser_cocci_menhir.ml"
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let t : 'tv_comma_list_ctype_ = Obj.magic t in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_meta_exp_type =
+# 589 "parser_cocci_menhir.mly"
+ ( List.map
+ (function x -> P.ty_pointerify (Ast0_cocci.ast0_type_to_type x) m)
+ t )
+# 20507 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_designator_ =
-# 114 "standard.mly"
- ( [] )
-# 16961 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_pure_ident = Obj.magic _3 in
+ let _1 : (
+# 112 "parser_cocci_menhir.mly"
+ (string)
+# 20538 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_meta_ident =
+# 1639 "parser_cocci_menhir.mly"
+ ( (Some _1,P.id2name _3) )
+# 20545 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_designator_ = Obj.magic xs in
- let x : 'tv_designator = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_designator_ =
-# 116 "standard.mly"
- ( x :: xs )
-# 16991 "parser_cocci_menhir.ml"
+ let _3 : 'tv_pure_ident_kwd = Obj.magic _3 in
+ let _1 : (
+# 112 "parser_cocci_menhir.mly"
+ (string)
+# 20576 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_meta_ident =
+# 1640 "parser_cocci_menhir.mly"
+ ( (Some _1,_3) )
+# 20583 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_dp_comma_args_TEllipsis__ =
-# 114 "standard.mly"
- ( [] )
-# 17008 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let m : 'tv_metadec = Obj.magic m in
+ let _startpos = _startpos_m_ in
+ let _endpos = _endpos_m_ in
+ let _v : (
+# 226 "parser_cocci_menhir.mly"
+ ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
+# 20607 "parser_cocci_menhir.ml"
+ ) =
+# 250 "parser_cocci_menhir.mly"
+ ( m (!Ast0.rule_name) )
+# 20611 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_dp_comma_args_TEllipsis__ = Obj.magic xs in
- let x : 'tv_dp_comma_args_TEllipsis_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_dp_comma_args_TEllipsis__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17038 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 412 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta ->
+ let tok = check_meta(Ast.MetaMetaDecl(arity,name)) in
+ !Data.add_meta_meta name pure; tok) )
+# 20658 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 20664 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_incl_ =
-# 114 "standard.mly"
- ( [] )
-# 17055 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 416 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta ->
+ let tok = check_meta(Ast.MetaParamDecl(arity,name)) in
+ !Data.add_param_meta name pure; tok) )
+# 20711 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 20717 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_incl_ = Obj.magic xs in
- let x : 'tv_incl = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_incl_ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17085 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__6_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 420 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta ->
+ let len = Ast.AnyLen in
+ let tok = check_meta(Ast.MetaParamListDecl(arity,name,len)) in
+ !Data.add_paramlist_meta name len pure; tok) )
+# 20769 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 20775 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_iso_ctype__ =
-# 114 "standard.mly"
- ( [] )
-# 17102 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__6_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 425 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta ->
+ let len = Ast.AnyLen in
+ let tok = check_meta(Ast.MetaExpListDecl(arity,name,len)) in
+ !Data.add_explist_meta name len pure; tok) )
+# 20827 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 20833 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_iso_ctype__ = Obj.magic xs in
- let x : 'tv_iso_ctype_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_iso_ctype__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17132 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 430 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta ->
+ let tok = check_meta(Ast.MetaTypeDecl(arity,name)) in
+ !Data.add_type_meta name pure; tok) )
+# 20880 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 20886 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_iso_decl_var__ =
-# 114 "standard.mly"
- ( [] )
-# 17149 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 434 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta ->
+ let tok = check_meta(Ast.MetaInitDecl(arity,name)) in
+ !Data.add_init_meta name pure; tok) )
+# 20933 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 20939 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_iso_decl_var__ = Obj.magic xs in
- let x : 'tv_iso_decl_var_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_iso_decl_var__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17179 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 438 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta ->
+ let tok = check_meta(Ast.MetaStmDecl(arity,name)) in
+ !Data.add_stm_meta name pure; tok) )
+# 20986 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 20992 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_iso_dexpr__ =
-# 114 "standard.mly"
- ( [] )
-# 17196 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 442 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta ->
+ let tok = check_meta(Ast.MetaDeclDecl(arity,name)) in
+ !Data.add_decl_meta name pure; tok) )
+# 21039 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 21045 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_iso_dexpr__ = Obj.magic xs in
- let x : 'tv_iso_dexpr_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_iso_dexpr__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17226 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 446 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta ->
+ let tok = check_meta(Ast.MetaFieldDecl(arity,name)) in
+ !Data.add_field_meta name pure; tok) )
+# 21092 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 21098 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_iso_nest_start__ =
-# 114 "standard.mly"
- ( [] )
-# 17243 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__6_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 450 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta ->
+ let tok = check_meta(Ast.MetaStmListDecl(arity,name)) in
+ !Data.add_stmlist_meta name pure; tok) )
+# 21149 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 21155 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_iso_nest_start__ = Obj.magic xs in
- let x : 'tv_iso_nest_start_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_iso_nest_start__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17273 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 454 "parser_cocci_menhir.mly"
+ ( (fun arity (_,name) pure check_meta ->
+ if arity = Ast.NONE && pure = Ast0.Impure
+ then (!Data.add_type_name name; [])
+ else raise (Semantic_cocci.Semantic "bad typedef")) )
+# 21203 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 21209 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_iso_single_statement__ =
-# 114 "standard.mly"
- ( [] )
-# 17290 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__6_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 459 "parser_cocci_menhir.mly"
+ ( (fun arity (_,name) pure check_meta ->
+ if arity = Ast.NONE && pure = Ast0.Impure
+ then (!Data.add_declarer_name name; [])
+ else raise (Semantic_cocci.Semantic "bad declarer")) )
+# 21261 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 21267 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_iso_single_statement__ = Obj.magic xs in
- let x : 'tv_iso_single_statement_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_iso_single_statement__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17320 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__6_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 464 "parser_cocci_menhir.mly"
+ ( (fun arity (_,name) pure check_meta ->
+ if arity = Ast.NONE && pure = Ast0.Impure
+ then (!Data.add_iterator_name name; [])
+ else raise (Semantic_cocci.Semantic "bad iterator")) )
+# 21319 "parser_cocci_menhir.ml"
+
+ in
+
+# 341 "parser_cocci_menhir.mly"
+ ( P.create_metadec ar ispure kindfn ids )
+# 21325 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_mzl_ctype__ =
-# 114 "standard.mly"
- ( [] )
-# 17337 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_seed_ = Obj.magic ids in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__4_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 405 "parser_cocci_menhir.mly"
+ ( (fun name check_meta seed ->
+ let tok = check_meta(Ast.MetaFreshIdDecl(name,seed)) in
+ !Data.add_fresh_id_meta name; tok) )
+# 21364 "parser_cocci_menhir.ml"
+
+ in
+
+# 344 "parser_cocci_menhir.mly"
+ ( P.create_fresh_metadec kindfn ids )
+# 21370 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_mzl_ctype__ = Obj.magic xs in
- let x : 'tv_mzl_ctype_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_mzl_ctype__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17367 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 471 "parser_cocci_menhir.mly"
+ (
+ let idfn arity name pure check_meta constraints =
+ let tok = check_meta(Ast.MetaIdDecl(arity,name)) in
+ !Data.add_id_meta name constraints pure; tok in
+ let virtfn arity name pure check_meta virtual_env =
+ try
+ let vl = List.assoc name virtual_env in
+ !Data.add_virt_id_meta_found name vl; []
+ with Not_found ->
+ Iteration.parsed_virtual_identifiers :=
+ Common.union_set [name]
+ !Iteration.parsed_virtual_identifiers;
+ let name = ("virtual",name) in
+ let tok = check_meta(Ast.MetaIdDecl(arity,name)) in
+ !Data.add_virt_id_meta_not_found name pure; tok in
+ (idfn,virtfn) )
+# 21430 "parser_cocci_menhir.ml"
+
+ in
+
+# 350 "parser_cocci_menhir.mly"
+ ( let (normal,virt) = Common.partition_either (fun x -> x) ids in
+ let (idfn,virtfn) = kindfn in
+ function cr ->
+ (P.create_metadec_with_constraints ar ispure idfn normal cr) @
+ (P.create_metadec_virt ar ispure virtfn virt cr) )
+# 21440 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_mzl_eexpr__ =
-# 114 "standard.mly"
- ( [] )
-# 17384 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 490 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ let tok = check_meta(Ast.MetaFuncDecl(arity,name)) in
+ !Data.add_func_meta name constraints pure; tok) )
+# 21487 "parser_cocci_menhir.ml"
+
+ in
+
+# 359 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 21493 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
};
- } = _menhir_stack in
- let xs : 'tv_list_mzl_eexpr__ = Obj.magic xs in
- let x : 'tv_mzl_eexpr_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_mzl_eexpr__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17414 "parser_cocci_menhir.ml"
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__6_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 494 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ let tok = check_meta(Ast.MetaLocalFuncDecl(arity,name)) in
+ !Data.add_local_func_meta name constraints pure;
+ tok) )
+# 21545 "parser_cocci_menhir.ml"
+
+ in
+
+# 359 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 21551 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_mzl_fun_after_dots_or__ =
-# 114 "standard.mly"
- ( [] )
-# 17431 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 499 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ let tok = check_meta(Ast.MetaDeclarerDecl(arity,name)) in
+ !Data.add_declarer_meta name constraints pure; tok) )
+# 21598 "parser_cocci_menhir.ml"
+
+ in
+
+# 359 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 21604 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_mzl_fun_after_dots_or__ = Obj.magic xs in
- let x : 'tv_mzl_fun_after_dots_or_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_mzl_fun_after_dots_or__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17461 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 503 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ let tok = check_meta(Ast.MetaIteratorDecl(arity,name)) in
+ !Data.add_iterator_meta name constraints pure; tok) )
+# 21651 "parser_cocci_menhir.ml"
+
+ in
+
+# 359 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 21657 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_mzl_fun_start__ =
-# 114 "standard.mly"
- ( [] )
-# 17478 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+
+# 509 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ let tok = check_meta(Ast.MetaErrDecl(arity,name)) in
+ !Data.add_err_meta name constraints pure; tok) )
+# 21704 "parser_cocci_menhir.ml"
+
+ in
+
+# 364 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 21710 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l0;
+ MenhirLib.EngineTypes.startp = _startpos_l0_;
+ MenhirLib.EngineTypes.endp = _endpos_l0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_mzl_fun_start__ = Obj.magic xs in
- let x : 'tv_mzl_fun_start_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_mzl_fun_start__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17508 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
+ let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__6_ in
+ let _v : 'tv_metadec = let kindfn =
+ let l = l0 in
+ let ty =
+
+# 39 "standard.mly"
+ ( None )
+# 21763 "parser_cocci_menhir.ml"
+
+ in
+
+# 513 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ match l with
+ None ->
+ !Data.add_idexp_meta ty name constraints pure;
+ check_meta(Ast.MetaIdExpDecl(arity,name,ty))
+ | Some _ ->
+ !Data.add_local_idexp_meta ty name constraints pure;
+ check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
+# 21776 "parser_cocci_menhir.ml"
+
+ in
+
+# 364 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 21782 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_mzl_rule_elem_statement__ =
-# 114 "standard.mly"
- ( [] )
-# 17525 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__7_;
+ MenhirLib.EngineTypes.endp = _endpos__7_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = x00;
+ MenhirLib.EngineTypes.startp = _startpos_x00_;
+ MenhirLib.EngineTypes.endp = _endpos_x00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l0;
+ MenhirLib.EngineTypes.startp = _startpos_l0_;
+ MenhirLib.EngineTypes.endp = _endpos_l0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
+ let x00 : 'tv_meta_exp_type = Obj.magic x00 in
+ let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__7_ in
+ let _v : 'tv_metadec = let kindfn =
+ let x0 = x00 in
+ let l = l0 in
+ let ty =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 21843 "parser_cocci_menhir.ml"
+
+ in
+
+# 513 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ match l with
+ None ->
+ !Data.add_idexp_meta ty name constraints pure;
+ check_meta(Ast.MetaIdExpDecl(arity,name,ty))
+ | Some _ ->
+ !Data.add_local_idexp_meta ty name constraints pure;
+ check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
+# 21856 "parser_cocci_menhir.ml"
+
+ in
+
+# 364 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 21862 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__7_;
+ MenhirLib.EngineTypes.endp = _endpos__7_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = m0;
+ MenhirLib.EngineTypes.startp = _startpos_m0_;
+ MenhirLib.EngineTypes.endp = _endpos_m0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l0;
+ MenhirLib.EngineTypes.startp = _startpos_l0_;
+ MenhirLib.EngineTypes.endp = _endpos_l0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_mzl_rule_elem_statement__ = Obj.magic xs in
- let x : 'tv_mzl_rule_elem_statement_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_mzl_rule_elem_statement__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17555 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
+ let m0 : 'tv_nonempty_list_TMul_ = Obj.magic m0 in
+ let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__7_ in
+ let _v : 'tv_metadec = let kindfn =
+ let m = m0 in
+ let l = l0 in
+
+# 522 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ let ty = Some [P.ty_pointerify Type_cocci.Unknown m] in
+ match l with
+ None ->
+ !Data.add_idexp_meta ty name constraints pure;
+ check_meta(Ast.MetaIdExpDecl(arity,name,ty))
+ | Some _ ->
+ !Data.add_local_idexp_meta ty name constraints pure;
+ check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
+# 21929 "parser_cocci_menhir.ml"
+
+ in
+
+# 364 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 21935 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_mzl_statement__ =
-# 114 "standard.mly"
- ( [] )
-# 17572 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ty0;
+ MenhirLib.EngineTypes.startp = _startpos_ty0_;
+ MenhirLib.EngineTypes.endp = _endpos_ty0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
+ let ty0 : 'tv_expression_type = Obj.magic ty0 in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__6_ in
+ let _v : 'tv_metadec = let kindfn =
+ let ty = ty0 in
+
+# 532 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ let ty = Some [ty] in
+ let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
+ !Data.add_exp_meta ty name constraints pure; tok) )
+# 21990 "parser_cocci_menhir.ml"
+
+ in
+
+# 364 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 21996 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_mzl_statement__ = Obj.magic xs in
- let x : 'tv_mzl_statement_ = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_mzl_statement__ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17602 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+ let ty =
+
+# 39 "standard.mly"
+ ( None )
+# 22042 "parser_cocci_menhir.ml"
+
+ in
+
+# 537 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ let tok = check_meta(Ast.MetaConstDecl(arity,name,ty)) in
+ !Data.add_const_meta ty name constraints pure; tok) )
+# 22050 "parser_cocci_menhir.ml"
+
+ in
+
+# 364 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 22056 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ =
-# 114 "standard.mly"
- ( [] )
-# 17619 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = x00;
+ MenhirLib.EngineTypes.startp = _startpos_x00_;
+ MenhirLib.EngineTypes.endp = _endpos_x00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic ids in
+ let x00 : 'tv_meta_exp_type = Obj.magic x00 in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__6_ in
+ let _v : 'tv_metadec = let kindfn =
+ let x0 = x00 in
+ let ty =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 22110 "parser_cocci_menhir.ml"
+
+ in
+
+# 537 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ let tok = check_meta(Ast.MetaConstDecl(arity,name,ty)) in
+ !Data.add_const_meta ty name constraints pure; tok) )
+# 22118 "parser_cocci_menhir.ml"
+
+ in
+
+# 364 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 22124 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = y0;
- MenhirLib.EngineTypes.startp = _startpos_y0_;
- MenhirLib.EngineTypes.endp = _endpos_y0_;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
};
};
} = _menhir_stack in
- let xs : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = Obj.magic xs in
- let y0 : 'tv_dexpr = Obj.magic y0 in
- let x0 : 'tv_edots_when_TEllipsis_eexpr_ = Obj.magic x0 in
- let _startpos = _startpos_x0_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = let x =
- let y = y0 in
- let x = x0 in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ = Obj.magic ids in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
-# 70 "standard.mly"
- ( (x, y) )
-# 17658 "parser_cocci_menhir.ml"
+# 554 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ let tok = check_meta(Ast.MetaExpDecl(arity,name,None)) in
+ !Data.add_exp_meta None name constraints pure; tok) )
+# 22171 "parser_cocci_menhir.ml"
in
-# 116 "standard.mly"
- ( x :: xs )
-# 17664 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_list_whenppdecs_ =
-# 114 "standard.mly"
- ( [] )
-# 17681 "parser_cocci_menhir.ml"
+# 369 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 22177 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = vl0;
+ MenhirLib.EngineTypes.startp = _startpos_vl0_;
+ MenhirLib.EngineTypes.endp = _endpos_vl0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
};
} = _menhir_stack in
- let xs : 'tv_list_whenppdecs_ = Obj.magic xs in
- let x : 'tv_whenppdecs = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_list_whenppdecs_ =
-# 116 "standard.mly"
- ( x :: xs )
-# 17711 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ = Obj.magic ids in
+ let vl0 : 'tv_meta_exp_type = Obj.magic vl0 in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec = let kindfn =
+ let vl = vl0 in
+
+# 558 "parser_cocci_menhir.mly"
+ ( (fun arity name pure check_meta constraints ->
+ let ty = Some vl in
+ (match constraints with
+ Ast0.NotExpCstrt constraints ->
+ List.iter
+ (function c ->
+ match Ast0.unwrap c with
+ Ast0.Constant(_) ->
+ if not
+ (List.exists
+ (function
+ Type_cocci.BaseType(Type_cocci.IntType) -> true
+ | Type_cocci.BaseType(Type_cocci.ShortType) -> true
+ | Type_cocci.BaseType(Type_cocci.LongType) -> true
+ | _ -> false)
+ vl)
+ then
+ failwith "metavariable with int constraint must be an int"
+ | _ -> ())
+ constraints
+ | _ -> ());
+ let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
+ !Data.add_exp_meta ty name constraints pure; tok)
+ )
+# 22248 "parser_cocci_menhir.ml"
+
+ in
+
+# 369 "parser_cocci_menhir.mly"
+ ( P.create_metadec_with_constraints ar ispure kindfn ids )
+# 22254 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_loption_choose_iso_ =
-# 57 "standard.mly"
- ( [] )
-# 17728 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_x_eq_not_pos__ = Obj.magic ids in
+ let a : 'tv_option_TPosAny_ = Obj.magic a in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__5_ in
+ let _v : 'tv_metadec =
+# 375 "parser_cocci_menhir.mly"
+ ( (if !Data.in_generating
+ then failwith "position variables not allowed in a generated rule file");
+ let kindfn arity name pure check_meta constraints =
+ let tok = check_meta(Ast.MetaPosDecl(arity,name)) in
+ let any = match a with None -> Ast.PER | Some _ -> Ast.ALL in
+ !Data.add_pos_meta name constraints any; tok in
+ P.create_metadec_with_constraints ar false kindfn ids )
+# 22304 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__9_;
+ MenhirLib.EngineTypes.endp = _endpos__9_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__7_;
+ MenhirLib.EngineTypes.endp = _endpos__7_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = len;
+ MenhirLib.EngineTypes.startp = _startpos_len_;
+ MenhirLib.EngineTypes.endp = _endpos_len_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ };
+ };
+ };
} = _menhir_stack in
- let x : 'tv_choose_iso = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_x_ in
- let _v : 'tv_loption_choose_iso_ =
-# 59 "standard.mly"
- ( x )
-# 17752 "parser_cocci_menhir.ml"
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let len : 'tv_list_len = Obj.magic len in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__9_ in
+ let _v : 'tv_metadec =
+# 385 "parser_cocci_menhir.mly"
+ ( P.create_len_metadec ar ispure
+ (fun lenname arity name pure check_meta ->
+ let tok = check_meta(Ast.MetaParamListDecl(arity,name,lenname)) in
+ !Data.add_paramlist_meta name lenname pure; tok)
+ len ids )
+# 22370 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_loption_disable_ =
-# 57 "standard.mly"
- ( [] )
-# 17769 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__9_;
+ MenhirLib.EngineTypes.endp = _endpos__9_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids;
+ MenhirLib.EngineTypes.startp = _startpos_ids_;
+ MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__7_;
+ MenhirLib.EngineTypes.endp = _endpos__7_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = len;
+ MenhirLib.EngineTypes.startp = _startpos_len_;
+ MenhirLib.EngineTypes.endp = _endpos_len_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ispure;
+ MenhirLib.EngineTypes.startp = _startpos_ispure_;
+ MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ar;
+ MenhirLib.EngineTypes.startp = _startpos_ar_;
+ MenhirLib.EngineTypes.endp = _endpos_ar_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
+ let len : 'tv_list_len = Obj.magic len in
+ let ispure : 'tv_pure = Obj.magic ispure in
+ let ar : 'tv_arity = Obj.magic ar in
+ let _startpos = _startpos_ar_ in
+ let _endpos = _endpos__9_ in
+ let _v : 'tv_metadec =
+# 393 "parser_cocci_menhir.mly"
+ ( P.create_len_metadec ar ispure
+ (fun lenname arity name pure check_meta ->
+ let tok = check_meta(Ast.MetaExpListDecl(arity,name,lenname)) in
+ !Data.add_explist_meta name lenname pure; tok)
+ len ids )
+# 22436 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let x : 'tv_disable = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_x_ in
- let _v : 'tv_loption_disable_ =
-# 59 "standard.mly"
- ( x )
-# 17793 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_loption_filespec_ =
-# 57 "standard.mly"
- ( [] )
-# 17810 "parser_cocci_menhir.ml"
+ let _1 : 'tv_pure_ident = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_mident =
+# 1875 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
+# 22460 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let x : 'tv_filespec = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_x_ in
- let _v : 'tv_loption_filespec_ =
-# 59 "standard.mly"
- ( x )
-# 17834 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_loption_minus_start_ =
-# 57 "standard.mly"
- ( [] )
-# 17851 "parser_cocci_menhir.ml"
+ let _1 : (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 22481 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_mident =
+# 1876 "parser_cocci_menhir.mly"
+ ( tmeta_to_ident _1 )
+# 22488 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let x : 'tv_minus_start = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_x_ in
- let _v : 'tv_loption_minus_start_ =
-# 59 "standard.mly"
- ( x )
-# 17875 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_loption_not_ceq_ =
-# 57 "standard.mly"
- ( [] )
-# 17892 "parser_cocci_menhir.ml"
+ let _1 : (
+# 128 "parser_cocci_menhir.mly"
+ (Parse_aux.idinfo)
+# 22509 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_mident =
+# 1878 "parser_cocci_menhir.mly"
+ ( let (nm,constraints,pure,clt) = _1 in
+ Ast0.wrap(Ast0.MetaId(P.clt2mcode nm clt,constraints,pure)) )
+# 22517 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let x : 'tv_not_ceq = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_x_ in
- let _v : 'tv_loption_not_ceq_ =
-# 59 "standard.mly"
- ( x )
-# 17916 "parser_cocci_menhir.ml"
+ let b : 'tv_list_mzl_ctype__ = Obj.magic b in
+ let a : 'tv_ctype = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_midzero_list_ctype_ctype_ =
+# 2191 "parser_cocci_menhir.mly"
+ ( let (mids,code) = List.split b in (mids,(a::code)) )
+# 22547 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_loption_not_eq_ =
-# 57 "standard.mly"
- ( [] )
-# 17933 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let b : 'tv_list_mzl_eexpr__ = Obj.magic b in
+ let a : 'tv_eexpr = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_midzero_list_eexpr_eexpr_ =
+# 2191 "parser_cocci_menhir.mly"
+ ( let (mids,code) = List.split b in (mids,(a::code)) )
+# 22577 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let x : 'tv_not_eq = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_x_ in
- let _v : 'tv_loption_not_eq_ =
-# 59 "standard.mly"
- ( x )
-# 17957 "parser_cocci_menhir.ml"
+ let b : 'tv_list_mzl_eexpr__ = Obj.magic b in
+ let a : 'tv_expr = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_midzero_list_expr_eexpr_ =
+# 2191 "parser_cocci_menhir.mly"
+ ( let (mids,code) = List.split b in (mids,(a::code)) )
+# 22607 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_loption_not_eqe_ =
-# 57 "standard.mly"
- ( [] )
-# 17974 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let b : 'tv_list_mzl_fun_after_dots_or__ = Obj.magic b in
+ let a : 'tv_fun_after_stm = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_midzero_list_fun_after_stm_fun_after_dots_or_ =
+# 2191 "parser_cocci_menhir.mly"
+ ( let (mids,code) = List.split b in (mids,(a::code)) )
+# 22637 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let x : 'tv_not_eqe = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_x_ in
- let _v : 'tv_loption_not_eqe_ =
-# 59 "standard.mly"
- ( x )
-# 17998 "parser_cocci_menhir.ml"
+ let b : 'tv_list_mzl_fun_start__ = Obj.magic b in
+ let a : 'tv_fun_start = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_midzero_list_fun_start_fun_start_ =
+# 2191 "parser_cocci_menhir.mly"
+ ( let (mids,code) = List.split b in (mids,(a::code)) )
+# 22667 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_loption_not_pos_ =
-# 57 "standard.mly"
- ( [] )
-# 18015 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let b : 'tv_list_mzl_mctype__ = Obj.magic b in
+ let a : 'tv_mctype = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_midzero_list_mctype_mctype_ =
+# 2191 "parser_cocci_menhir.mly"
+ ( let (mids,code) = List.split b in (mids,(a::code)) )
+# 22697 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let x : 'tv_not_pos = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_x_ in
- let _v : 'tv_loption_not_pos_ =
-# 59 "standard.mly"
- ( x )
-# 18039 "parser_cocci_menhir.ml"
+ let b : 'tv_list_mzl_rule_elem_statement__ = Obj.magic b in
+ let a : 'tv_rule_elem_statement = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_midzero_list_rule_elem_statement_rule_elem_statement_ =
+# 2191 "parser_cocci_menhir.mly"
+ ( let (mids,code) = List.split b in (mids,(a::code)) )
+# 22727 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_loption_plus_start_ =
-# 57 "standard.mly"
- ( [] )
-# 18056 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let b : 'tv_list_mzl_statement__ = Obj.magic b in
+ let a : 'tv_statement = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_midzero_list_statement_statement_ =
+# 2191 "parser_cocci_menhir.mly"
+ ( let (mids,code) = List.split b in (mids,(a::code)) )
+# 22757 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = f;
+ MenhirLib.EngineTypes.startp = _startpos_f_;
+ MenhirLib.EngineTypes.endp = _endpos_f_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let x : 'tv_plus_start = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_x_ in
- let _v : 'tv_loption_plus_start_ =
-# 59 "standard.mly"
- ( x )
-# 18080 "parser_cocci_menhir.ml"
+ let b : 'tv_loption_minus_start_ = Obj.magic b in
+ let f : 'tv_loption_filespec_ = Obj.magic f in
+ let _startpos = _startpos_f_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_minus_body =
+# 787 "parser_cocci_menhir.mly"
+ ( match f@b(*@ew*) with
+ [] -> raise (Semantic_cocci.Semantic "minus slice can't be empty")
+ | code -> Top_level.top_level code )
+# 22789 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = f;
+ MenhirLib.EngineTypes.startp = _startpos_f_;
+ MenhirLib.EngineTypes.endp = _endpos_f_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let t : 'tv_typedef_ctype = Obj.magic t in
- let _startpos = _startpos_t_ in
- let _endpos = _endpos_t_ in
- let _v : 'tv_meta_exp_type =
-# 453 "parser_cocci_menhir.mly"
- ( [Ast0_cocci.ast0_type_to_type t] )
-# 18104 "parser_cocci_menhir.ml"
+ let b : 'tv_top_eexpr = Obj.magic b in
+ let f : 'tv_loption_filespec_ = Obj.magic f in
+ let _startpos = _startpos_f_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_minus_exp_body =
+# 801 "parser_cocci_menhir.mly"
+ ( match f@[b](*@ew*) with
+ [] -> raise (Semantic_cocci.Semantic "minus slice can't be empty")
+ | code -> Top_level.top_level code )
+# 22821 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
- let t : 'tv_comma_list_ctype_ = Obj.magic t in
+ let _1 : 'tv_minus_exp_body = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos_m_ in
- let _v : 'tv_meta_exp_type =
-# 455 "parser_cocci_menhir.mly"
- ( List.map
- (function x -> P.ty_pointerify (Ast0_cocci.ast0_type_to_type x) m)
- t )
-# 18144 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : (
+# 206 "parser_cocci_menhir.mly"
+ (Ast0_cocci.rule)
+# 22849 "parser_cocci_menhir.ml"
+ ) =
+# 246 "parser_cocci_menhir.mly"
+ ( _1 )
+# 22853 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _3 : 'tv_pure_ident = Obj.magic _3 in
- let _1 : (
-# 47 "parser_cocci_menhir.mly"
- (string)
-# 18175 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_meta_ident =
-# 1379 "parser_cocci_menhir.mly"
- ( (Some _1,P.id2name _3) )
-# 18182 "parser_cocci_menhir.ml"
+ let m : 'tv_minus_exp_body = Obj.magic m in
+ let _startpos = _startpos_m_ in
+ let _endpos = _endpos__2_ in
+ let _v : (
+# 206 "parser_cocci_menhir.mly"
+ (Ast0_cocci.rule)
+# 22881 "parser_cocci_menhir.ml"
+ ) =
+# 246 "parser_cocci_menhir.mly"
+ ( m )
+# 22885 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let m : 'tv_metadec = Obj.magic m in
+ let m : 'tv_minus_exp_body = Obj.magic m in
let _startpos = _startpos_m_ in
- let _endpos = _endpos_m_ in
+ let _endpos = _endpos__2_ in
let _v : (
-# 157 "parser_cocci_menhir.mly"
- ((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
-# 18206 "parser_cocci_menhir.ml"
+# 206 "parser_cocci_menhir.mly"
+ (Ast0_cocci.rule)
+# 22913 "parser_cocci_menhir.ml"
) =
-# 181 "parser_cocci_menhir.mly"
- ( m (!Ast0.rule_name) )
-# 18210 "parser_cocci_menhir.ml"
+# 247 "parser_cocci_menhir.mly"
+ ( m )
+# 22917 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 318 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta ->
- let tok = check_meta(Ast.MetaParamDecl(arity,name)) in
- !Data.add_param_meta name pure; tok) )
-# 18257 "parser_cocci_menhir.ml"
-
- in
-
-# 263 "parser_cocci_menhir.mly"
- ( P.create_metadec ar ispure kindfn ids )
-# 18263 "parser_cocci_menhir.ml"
+ let _1 : 'tv_minus_body = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : (
+# 203 "parser_cocci_menhir.mly"
+ (Ast0_cocci.rule)
+# 22945 "parser_cocci_menhir.ml"
+ ) =
+# 242 "parser_cocci_menhir.mly"
+ ( _1 )
+# 22949 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__6_;
- MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__6_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 322 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta ->
- let tok = check_meta(Ast.MetaParamListDecl(arity,name,None)) in
- !Data.add_paramlist_meta name None pure; tok) )
-# 18314 "parser_cocci_menhir.ml"
-
- in
-
-# 263 "parser_cocci_menhir.mly"
- ( P.create_metadec ar ispure kindfn ids )
-# 18320 "parser_cocci_menhir.ml"
+ let m : 'tv_minus_body = Obj.magic m in
+ let _startpos = _startpos_m_ in
+ let _endpos = _endpos__2_ in
+ let _v : (
+# 203 "parser_cocci_menhir.mly"
+ (Ast0_cocci.rule)
+# 22977 "parser_cocci_menhir.ml"
+ ) =
+# 242 "parser_cocci_menhir.mly"
+ ( m )
+# 22981 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__6_;
- MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__6_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 326 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta ->
- let tok = check_meta(Ast.MetaExpListDecl(arity,name,None)) in
- !Data.add_explist_meta name None pure; tok) )
-# 18371 "parser_cocci_menhir.ml"
-
- in
-
-# 263 "parser_cocci_menhir.mly"
- ( P.create_metadec ar ispure kindfn ids )
-# 18377 "parser_cocci_menhir.ml"
+ let m : 'tv_minus_body = Obj.magic m in
+ let _startpos = _startpos_m_ in
+ let _endpos = _endpos__2_ in
+ let _v : (
+# 203 "parser_cocci_menhir.mly"
+ (Ast0_cocci.rule)
+# 23009 "parser_cocci_menhir.ml"
+ ) =
+# 243 "parser_cocci_menhir.mly"
+ ( m )
+# 23013 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 330 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta ->
- let tok = check_meta(Ast.MetaTypeDecl(arity,name)) in
- !Data.add_type_meta name pure; tok) )
-# 18424 "parser_cocci_menhir.ml"
-
- in
-
-# 263 "parser_cocci_menhir.mly"
- ( P.create_metadec ar ispure kindfn ids )
-# 18430 "parser_cocci_menhir.ml"
+ let _1 : 'tv_fundecl = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_minus_start =
+# 2016 "parser_cocci_menhir.mly"
+ ( [Ast0.wrap(Ast0.DECL(_1))] )
+# 23037 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 334 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta ->
- let tok = check_meta(Ast.MetaInitDecl(arity,name)) in
- !Data.add_init_meta name pure; tok) )
-# 18477 "parser_cocci_menhir.ml"
-
- in
-
-# 263 "parser_cocci_menhir.mly"
- ( P.create_metadec ar ispure kindfn ids )
-# 18483 "parser_cocci_menhir.ml"
+ let _1 : 'tv_ctype = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_minus_start =
+# 2017 "parser_cocci_menhir.mly"
+ ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] )
+# 23061 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 338 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta ->
- let tok = check_meta(Ast.MetaStmDecl(arity,name)) in
- !Data.add_stm_meta name pure; tok) )
-# 18530 "parser_cocci_menhir.ml"
-
- in
-
-# 263 "parser_cocci_menhir.mly"
- ( P.create_metadec ar ispure kindfn ids )
-# 18536 "parser_cocci_menhir.ml"
+ let _1 : 'tv_top_init = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_minus_start =
+# 2018 "parser_cocci_menhir.mly"
+ ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.TopInit(_1))))] )
+# 23085 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_minus_start =
+# 2020 "parser_cocci_menhir.mly"
+ ( List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1 )
+# 23109 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__6_;
- MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__6_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 342 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta ->
- let tok = check_meta(Ast.MetaStmListDecl(arity,name)) in
- !Data.add_stmlist_meta name pure; tok) )
-# 18587 "parser_cocci_menhir.ml"
-
- in
-
-# 263 "parser_cocci_menhir.mly"
- ( P.create_metadec ar ispure kindfn ids )
-# 18593 "parser_cocci_menhir.ml"
+ let b : 'tv_ctype = Obj.magic b in
+ let a : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23136 "parser_cocci_menhir.ml"
+ ) = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_mzl_ctype_ =
+# 2194 "parser_cocci_menhir.mly"
+ ( (P.clt2mcode "|" a, b) )
+# 23143 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 346 "parser_cocci_menhir.mly"
- ( (fun arity (_,name) pure check_meta ->
- if arity = Ast.NONE && pure = Ast0.Impure
- then (!Data.add_type_name name; [])
- else raise (Semantic_cocci.Semantic "bad typedef")) )
-# 18641 "parser_cocci_menhir.ml"
-
- in
-
-# 263 "parser_cocci_menhir.mly"
- ( P.create_metadec ar ispure kindfn ids )
-# 18647 "parser_cocci_menhir.ml"
+ let b : 'tv_eexpr = Obj.magic b in
+ let a : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23170 "parser_cocci_menhir.ml"
+ ) = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_mzl_eexpr_ =
+# 2194 "parser_cocci_menhir.mly"
+ ( (P.clt2mcode "|" a, b) )
+# 23177 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__6_;
- MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__6_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 351 "parser_cocci_menhir.mly"
- ( (fun arity (_,name) pure check_meta ->
- if arity = Ast.NONE && pure = Ast0.Impure
- then (!Data.add_declarer_name name; [])
- else raise (Semantic_cocci.Semantic "bad declarer")) )
-# 18699 "parser_cocci_menhir.ml"
-
- in
-
-# 263 "parser_cocci_menhir.mly"
- ( P.create_metadec ar ispure kindfn ids )
-# 18705 "parser_cocci_menhir.ml"
+ let b : 'tv_fun_after_dots_or = Obj.magic b in
+ let a : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23204 "parser_cocci_menhir.ml"
+ ) = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_mzl_fun_after_dots_or_ =
+# 2194 "parser_cocci_menhir.mly"
+ ( (P.clt2mcode "|" a, b) )
+# 23211 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__6_;
- MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__6_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 356 "parser_cocci_menhir.mly"
- ( (fun arity (_,name) pure check_meta ->
- if arity = Ast.NONE && pure = Ast0.Impure
- then (!Data.add_iterator_name name; [])
- else raise (Semantic_cocci.Semantic "bad iterator")) )
-# 18757 "parser_cocci_menhir.ml"
-
- in
-
-# 263 "parser_cocci_menhir.mly"
- ( P.create_metadec ar ispure kindfn ids )
-# 18763 "parser_cocci_menhir.ml"
+ let b : 'tv_fun_start = Obj.magic b in
+ let a : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23238 "parser_cocci_menhir.ml"
+ ) = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_mzl_fun_start_ =
+# 2194 "parser_cocci_menhir.mly"
+ ( (P.clt2mcode "|" a, b) )
+# 23245 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_seed_ = Obj.magic ids in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__4_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 312 "parser_cocci_menhir.mly"
- ( (fun name check_meta seed ->
- let tok = check_meta(Ast.MetaFreshIdDecl(name,seed)) in
- !Data.add_fresh_id_meta name; tok) )
-# 18802 "parser_cocci_menhir.ml"
-
- in
-
-# 266 "parser_cocci_menhir.mly"
- ( P.create_fresh_metadec kindfn ids )
-# 18808 "parser_cocci_menhir.ml"
+ let b : 'tv_mctype = Obj.magic b in
+ let a : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23272 "parser_cocci_menhir.ml"
+ ) = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_mzl_mctype_ =
+# 2194 "parser_cocci_menhir.mly"
+ ( (P.clt2mcode "|" a, b) )
+# 23279 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 364 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let tok = check_meta(Ast.MetaIdDecl(arity,name)) in
- !Data.add_id_meta name constraints pure; tok) )
-# 18855 "parser_cocci_menhir.ml"
-
- in
-
-# 270 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 18861 "parser_cocci_menhir.ml"
+ let b : 'tv_rule_elem_statement = Obj.magic b in
+ let a : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23306 "parser_cocci_menhir.ml"
+ ) = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_mzl_rule_elem_statement_ =
+# 2194 "parser_cocci_menhir.mly"
+ ( (P.clt2mcode "|" a, b) )
+# 23313 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.semv = b;
+ MenhirLib.EngineTypes.startp = _startpos_b_;
+ MenhirLib.EngineTypes.endp = _endpos_b_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = a;
+ MenhirLib.EngineTypes.startp = _startpos_a_;
+ MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 368 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let tok = check_meta(Ast.MetaFuncDecl(arity,name)) in
- !Data.add_func_meta name constraints pure; tok) )
-# 18908 "parser_cocci_menhir.ml"
-
- in
-
-# 270 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 18914 "parser_cocci_menhir.ml"
+ let b : 'tv_statement = Obj.magic b in
+ let a : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23340 "parser_cocci_menhir.ml"
+ ) = Obj.magic a in
+ let _startpos = _startpos_a_ in
+ let _endpos = _endpos_b_ in
+ let _v : 'tv_mzl_statement_ =
+# 2194 "parser_cocci_menhir.mly"
+ ( (P.clt2mcode "|" a, b) )
+# 23347 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__6_;
- MenhirLib.EngineTypes.endp = _endpos__6_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__6_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 372 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let tok = check_meta(Ast.MetaLocalFuncDecl(arity,name)) in
- !Data.add_local_func_meta name constraints pure;
- tok) )
-# 18966 "parser_cocci_menhir.ml"
-
- in
-
-# 270 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 18972 "parser_cocci_menhir.ml"
+ let _1 : 'tv_decl = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_name_opt_decl =
+# 1009 "parser_cocci_menhir.mly"
+ ( _1 )
+# 23371 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.semv = rp1;
+ MenhirLib.EngineTypes.startp = _startpos_rp1_;
+ MenhirLib.EngineTypes.endp = _endpos_rp1_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = lp1;
+ MenhirLib.EngineTypes.startp = _startpos_lp1_;
+ MenhirLib.EngineTypes.endp = _endpos_lp1_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
+ MenhirLib.EngineTypes.semv = rp;
+ MenhirLib.EngineTypes.startp = _startpos_rp_;
+ MenhirLib.EngineTypes.endp = _endpos_rp_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = s;
+ MenhirLib.EngineTypes.startp = _startpos_s_;
+ MenhirLib.EngineTypes.endp = _endpos_s_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = lp;
+ MenhirLib.EngineTypes.startp = _startpos_lp_;
+ MenhirLib.EngineTypes.endp = _endpos_lp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
};
};
};
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 377 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let tok = check_meta(Ast.MetaDeclarerDecl(arity,name)) in
- !Data.add_declarer_meta name constraints pure; tok) )
-# 19019 "parser_cocci_menhir.ml"
-
- in
-
-# 270 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19025 "parser_cocci_menhir.ml"
+ let rp1 : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23422 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp1 in
+ let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
+ let lp1 : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23428 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp1 in
+ let rp : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23433 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp in
+ let s : (
+# 166 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23438 "parser_cocci_menhir.ml"
+ ) = Obj.magic s in
+ let lp : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23443 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp in
+ let t : 'tv_ctype = Obj.magic t in
+ let _startpos = _startpos_t_ in
+ let _endpos = _endpos_rp1_ in
+ let _v : 'tv_name_opt_decl =
+# 1012 "parser_cocci_menhir.mly"
+ ( let fnptr =
+ Ast0.wrap
+ (Ast0.FunctionPointer
+ (t,P.clt2mcode "(" lp,P.clt2mcode "*" s,P.clt2mcode ")" rp,
+ P.clt2mcode "(" lp1,d,P.clt2mcode ")" rp1)) in
+ Ast0.wrap(Ast0.Param(fnptr, None)) )
+# 23456 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 381 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let tok = check_meta(Ast.MetaIteratorDecl(arity,name)) in
- !Data.add_iterator_meta name constraints pure; tok) )
-# 19072 "parser_cocci_menhir.ml"
-
- in
-
-# 270 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19078 "parser_cocci_menhir.ml"
+ let _2 : 'tv_nest_after_stm = Obj.magic _2 in
+ let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nest_after_dots =
+# 2136 "parser_cocci_menhir.mly"
+ (_1@_2)
+# 23486 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 387 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let tok = check_meta(Ast.MetaErrDecl(arity,name)) in
- !Data.add_err_meta name constraints pure; tok) )
-# 19125 "parser_cocci_menhir.ml"
-
- in
-
-# 274 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19131 "parser_cocci_menhir.ml"
+ let _2 : 'tv_nest_after_exp = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nest_after_dots =
+# 2137 "parser_cocci_menhir.mly"
+ (_2)
+# 23514 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__6_;
- MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = l0;
- MenhirLib.EngineTypes.startp = _startpos_l0_;
- MenhirLib.EngineTypes.endp = _endpos_l0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
- let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__6_ in
- let _v : 'tv_metadec = let kindfn =
- let l = l0 in
- let ty =
-
-# 39 "standard.mly"
- ( None )
-# 19184 "parser_cocci_menhir.ml"
-
- in
-
-# 391 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- match l with
- None ->
- !Data.add_idexp_meta ty name constraints pure;
- check_meta(Ast.MetaIdExpDecl(arity,name,ty))
- | Some _ ->
- !Data.add_local_idexp_meta ty name constraints pure;
- check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
-# 19197 "parser_cocci_menhir.ml"
-
- in
-
-# 274 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19203 "parser_cocci_menhir.ml"
+ let _2 : 'tv_nest_after_exp = Obj.magic _2 in
+ let _1 : 'tv_expr = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nest_after_dots =
+# 2138 "parser_cocci_menhir.mly"
+ ((Ast0.wrap(Ast0.Exp(_1)))::_2)
+# 23544 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.startp = _startpos__7_;
- MenhirLib.EngineTypes.endp = _endpos__7_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = x00;
- MenhirLib.EngineTypes.startp = _startpos_x00_;
- MenhirLib.EngineTypes.endp = _endpos_x00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = l0;
- MenhirLib.EngineTypes.startp = _startpos_l0_;
- MenhirLib.EngineTypes.endp = _endpos_l0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
- };
- };
- } = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
- let x00 : 'tv_meta_exp_type = Obj.magic x00 in
- let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__7_ in
- let _v : 'tv_metadec = let kindfn =
- let x0 = x00 in
- let l = l0 in
- let ty =
- let x = x0 in
-
-# 41 "standard.mly"
- ( Some x )
-# 19264 "parser_cocci_menhir.ml"
-
- in
-
-# 391 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- match l with
- None ->
- !Data.add_idexp_meta ty name constraints pure;
- check_meta(Ast.MetaIdExpDecl(arity,name,ty))
- | Some _ ->
- !Data.add_local_idexp_meta ty name constraints pure;
- check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
-# 19277 "parser_cocci_menhir.ml"
-
- in
-
-# 274 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19283 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_nest_after_exp =
+# 2146 "parser_cocci_menhir.mly"
+ ([])
+# 23561 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__7_;
- MenhirLib.EngineTypes.endp = _endpos__7_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = m0;
- MenhirLib.EngineTypes.startp = _startpos_m0_;
- MenhirLib.EngineTypes.endp = _endpos_m0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = l0;
- MenhirLib.EngineTypes.startp = _startpos_l0_;
- MenhirLib.EngineTypes.endp = _endpos_l0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
- let m0 : 'tv_nonempty_list_TMul_ = Obj.magic m0 in
- let l0 : 'tv_option_TLocal_ = Obj.magic l0 in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__7_ in
- let _v : 'tv_metadec = let kindfn =
- let m = m0 in
- let l = l0 in
-
-# 400 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let ty = Some [P.ty_pointerify Type_cocci.Unknown m] in
- match l with
- None ->
- !Data.add_idexp_meta ty name constraints pure;
- check_meta(Ast.MetaIdExpDecl(arity,name,ty))
- | Some _ ->
- !Data.add_local_idexp_meta ty name constraints pure;
- check_meta(Ast.MetaLocalIdExpDecl(arity,name,ty))) )
-# 19350 "parser_cocci_menhir.ml"
-
- in
-
-# 274 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19356 "parser_cocci_menhir.ml"
+ let _2 : 'tv_nest_after_dots = Obj.magic _2 in
+ let _1 : 'tv_stm_dots = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nest_after_exp =
+# 2147 "parser_cocci_menhir.mly"
+ (_1::_2)
+# 23591 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.startp = _startpos__6_;
- MenhirLib.EngineTypes.endp = _endpos__6_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = m0;
- MenhirLib.EngineTypes.startp = _startpos_m0_;
- MenhirLib.EngineTypes.endp = _endpos_m0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
- };
- } = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
- let m0 : 'tv_nonempty_list_TMul_ = Obj.magic m0 in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__6_ in
- let _v : 'tv_metadec = let kindfn =
- let m = m0 in
-
-# 410 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let ty = Some [P.ty_pointerify Type_cocci.Unknown m] in
- let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
- !Data.add_exp_meta ty name constraints pure; tok) )
-# 19411 "parser_cocci_menhir.ml"
-
- in
-
-# 274 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19417 "parser_cocci_menhir.ml"
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_nest_after_stm =
+# 2141 "parser_cocci_menhir.mly"
+ ([])
+# 23608 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__7_;
- MenhirLib.EngineTypes.endp = _endpos__7_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = vl0;
- MenhirLib.EngineTypes.startp = _startpos_vl0_;
- MenhirLib.EngineTypes.endp = _endpos_vl0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
- let vl0 : 'tv_meta_exp_type = Obj.magic vl0 in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__7_ in
- let _v : 'tv_metadec = let kindfn =
- let vl = vl0 in
-
-# 415 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let ty = Some (List.map (function x -> Type_cocci.Array x) vl) in
- let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
- !Data.add_exp_meta ty name constraints pure; tok) )
-# 19476 "parser_cocci_menhir.ml"
-
- in
-
-# 274 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19482 "parser_cocci_menhir.ml"
+ let _2 : 'tv_nest_after_dots = Obj.magic _2 in
+ let _1 : 'tv_stm_dots = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nest_after_stm =
+# 2142 "parser_cocci_menhir.mly"
+ (_1::_2)
+# 23638 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
- let ty =
-
-# 39 "standard.mly"
- ( None )
-# 19528 "parser_cocci_menhir.ml"
-
- in
-
-# 420 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let tok = check_meta(Ast.MetaConstDecl(arity,name,ty)) in
- !Data.add_const_meta ty name constraints pure; tok) )
-# 19536 "parser_cocci_menhir.ml"
-
- in
-
-# 274 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19542 "parser_cocci_menhir.ml"
+ let _2 : 'tv_nest_after_stm = Obj.magic _2 in
+ let _1 : 'tv_decl_statement = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nest_after_stm =
+# 2143 "parser_cocci_menhir.mly"
+ (_1@_2)
+# 23668 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__6_;
- MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.semv = c;
+ MenhirLib.EngineTypes.startp = _startpos_c_;
+ MenhirLib.EngineTypes.endp = _endpos_c_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = x00;
- MenhirLib.EngineTypes.startp = _startpos_x00_;
- MenhirLib.EngineTypes.endp = _endpos_x00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
- };
- } = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic ids in
- let x00 : 'tv_meta_exp_type = Obj.magic x00 in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__6_ in
- let _v : 'tv_metadec = let kindfn =
- let x0 = x00 in
- let ty =
- let x = x0 in
-
-# 41 "standard.mly"
- ( Some x )
-# 19596 "parser_cocci_menhir.ml"
-
- in
-
-# 420 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let tok = check_meta(Ast.MetaConstDecl(arity,name,ty)) in
- !Data.add_const_meta ty name constraints pure; tok) )
-# 19604 "parser_cocci_menhir.ml"
-
- in
-
-# 274 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19610 "parser_cocci_menhir.ml"
+ MenhirLib.EngineTypes.semv = e;
+ MenhirLib.EngineTypes.startp = _startpos_e_;
+ MenhirLib.EngineTypes.endp = _endpos_e_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let c : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23699 "parser_cocci_menhir.ml"
+ ) = Obj.magic c in
+ let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
+ let _1 : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23705 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_c_ in
+ let _v : 'tv_nest_expressions =
+# 1383 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<..." _1,
+ Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
+ P.clt2mcode "...>" c, None, false)) )
+# 23714 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.semv = c;
+ MenhirLib.EngineTypes.startp = _startpos_c_;
+ MenhirLib.EngineTypes.endp = _endpos_c_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
+ MenhirLib.EngineTypes.semv = e;
+ MenhirLib.EngineTypes.startp = _startpos_e_;
+ MenhirLib.EngineTypes.endp = _endpos_e_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_ceq__ = Obj.magic ids in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
-
-# 426 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let tok = check_meta(Ast.MetaExpDecl(arity,name,None)) in
- !Data.add_exp_meta None name constraints pure; tok) )
-# 19657 "parser_cocci_menhir.ml"
-
- in
-
-# 278 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19663 "parser_cocci_menhir.ml"
+ let c : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23745 "parser_cocci_menhir.ml"
+ ) = Obj.magic c in
+ let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
+ let _1 : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23751 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_c_ in
+ let _v : 'tv_nest_expressions =
+# 1387 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<+..." _1,
+ Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
+ P.clt2mcode "...+>" c, None, true)) )
+# 23760 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = vl0;
- MenhirLib.EngineTypes.startp = _startpos_vl0_;
- MenhirLib.EngineTypes.endp = _endpos_vl0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_ceq__ = Obj.magic ids in
- let vl0 : 'tv_meta_exp_type = Obj.magic vl0 in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec = let kindfn =
- let vl = vl0 in
-
-# 430 "parser_cocci_menhir.mly"
- ( (fun arity name pure check_meta constraints ->
- let ty = Some vl in
- List.iter
- (function c ->
- match Ast0.unwrap c with
- Ast0.Constant(_) ->
- if not
- (List.exists
- (function
- Type_cocci.BaseType(Type_cocci.IntType) -> true
- | Type_cocci.BaseType(Type_cocci.ShortType) -> true
- | Type_cocci.BaseType(Type_cocci.LongType) -> true
- | _ -> false)
- vl)
- then failwith "metavariable with int constraint must be an int"
- | _ -> ())
- constraints;
- let tok = check_meta(Ast.MetaExpDecl(arity,name,ty)) in
- !Data.add_exp_meta ty name constraints pure; tok) )
-# 19729 "parser_cocci_menhir.ml"
-
- in
-
-# 278 "parser_cocci_menhir.mly"
- ( P.create_metadec_ne ar ispure kindfn ids )
-# 19735 "parser_cocci_menhir.ml"
+ let _1 : (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 23781 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_nest_expressions =
+# 1390 "parser_cocci_menhir.mly"
+ ( tmeta_to_exp _1 )
+# 23788 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_with_not_eq_not_pos__ = Obj.magic ids in
- let a : 'tv_option_TPosAny_ = Obj.magic a in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__5_ in
- let _v : 'tv_metadec =
-# 284 "parser_cocci_menhir.mly"
- ( (if !Data.in_generating
- then failwith "position variables not allowed in a generated rule file");
- let kindfn arity name pure check_meta constraints =
- let tok = check_meta(Ast.MetaPosDecl(arity,name)) in
- let any = match a with None -> Ast.PER | Some _ -> Ast.ALL in
- !Data.add_pos_meta name constraints any; tok in
- P.create_metadec_ne ar false kindfn ids )
-# 19785 "parser_cocci_menhir.ml"
+ let _1 : 'tv_nest_after_dots = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_nest_start =
+# 2133 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.DOTS(_1)) )
+# 23812 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__9_;
- MenhirLib.EngineTypes.endp = _endpos__9_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__7_;
- MenhirLib.EngineTypes.endp = _endpos__7_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = id;
- MenhirLib.EngineTypes.startp = _startpos_id_;
- MenhirLib.EngineTypes.endp = _endpos_id_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let id : 'tv_pure_ident_or_meta_ident = Obj.magic id in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__9_ in
- let _v : 'tv_metadec =
-# 294 "parser_cocci_menhir.mly"
- ( P.create_len_metadec ar ispure
- (fun lenname arity name pure check_meta ->
- let tok =
- check_meta(Ast.MetaParamListDecl(arity,name,Some lenname)) in
- !Data.add_paramlist_meta name (Some lenname) pure; tok)
- id ids )
-# 19852 "parser_cocci_menhir.ml"
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : (
+# 237 "parser_cocci_menhir.mly"
+ (unit)
+# 23834 "parser_cocci_menhir.ml"
+ ) =
+# 2261 "parser_cocci_menhir.mly"
+ ( () )
+# 23838 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__9_;
- MenhirLib.EngineTypes.endp = _endpos__9_;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ids;
- MenhirLib.EngineTypes.startp = _startpos_ids_;
- MenhirLib.EngineTypes.endp = _endpos_ids_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__7_;
- MenhirLib.EngineTypes.endp = _endpos__7_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = id;
- MenhirLib.EngineTypes.startp = _startpos_id_;
- MenhirLib.EngineTypes.endp = _endpos_id_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ispure;
- MenhirLib.EngineTypes.startp = _startpos_ispure_;
- MenhirLib.EngineTypes.endp = _endpos_ispure_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = ar;
- MenhirLib.EngineTypes.startp = _startpos_ar_;
- MenhirLib.EngineTypes.endp = _endpos_ar_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
- };
- };
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let ids : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic ids in
- let id : 'tv_pure_ident_or_meta_ident = Obj.magic id in
- let ispure : 'tv_pure = Obj.magic ispure in
- let ar : 'tv_arity = Obj.magic ar in
- let _startpos = _startpos_ar_ in
- let _endpos = _endpos__9_ in
- let _v : 'tv_metadec =
-# 303 "parser_cocci_menhir.mly"
- ( P.create_len_metadec ar ispure
- (fun lenname arity name pure check_meta ->
- let tok =
- check_meta(Ast.MetaExpListDecl(arity,name,Some lenname)) in
- !Data.add_explist_meta name (Some lenname) pure; tok)
- id ids )
-# 19919 "parser_cocci_menhir.ml"
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : (
+# 237 "parser_cocci_menhir.mly"
+ (unit)
+# 23864 "parser_cocci_menhir.ml"
+ ) =
+# 2262 "parser_cocci_menhir.mly"
+ ( () )
+# 23868 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let b : 'tv_list_mzl_ctype__ = Obj.magic b in
- let a : 'tv_ctype = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_midzero_list_ctype_ctype_ =
-# 1819 "parser_cocci_menhir.mly"
- ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 19949 "parser_cocci_menhir.ml"
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : (
+# 237 "parser_cocci_menhir.mly"
+ (unit)
+# 23890 "parser_cocci_menhir.ml"
+ ) =
+# 2263 "parser_cocci_menhir.mly"
+ ( () )
+# 23894 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.semv = dg;
+ MenhirLib.EngineTypes.startp = _startpos_dg_;
+ MenhirLib.EngineTypes.endp = _endpos_dg_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.semv = g;
+ MenhirLib.EngineTypes.startp = _startpos_g_;
+ MenhirLib.EngineTypes.endp = _endpos_g_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let b : 'tv_list_mzl_eexpr__ = Obj.magic b in
- let a : 'tv_eexpr = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_midzero_list_eexpr_eexpr_ =
-# 1819 "parser_cocci_menhir.mly"
- ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 19979 "parser_cocci_menhir.ml"
+ let dg : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = Obj.magic dg in
+ let g : 'tv_dexpr = Obj.magic g in
+ let _startpos = _startpos_g_ in
+ let _endpos = _endpos_dg_ in
+ let _v : 'tv_no_dot_start_end_dexpr_edots_when_TEllipsis_eexpr__ =
+# 1606 "parser_cocci_menhir.mly"
+ ( function dot_builder ->
+ g :: (List.concat(List.map (function (d,g) -> [dot_builder d;g]) dg)) )
+# 23925 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let b : 'tv_list_mzl_eexpr__ = Obj.magic b in
- let a : 'tv_expr = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_midzero_list_expr_eexpr_ =
-# 1819 "parser_cocci_menhir.mly"
- ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20009 "parser_cocci_menhir.ml"
+ let x : (
+# 166 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23946 "parser_cocci_menhir.ml"
+ ) = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_x_ in
+ let _v : 'tv_nonempty_list_TMul_ =
+# 124 "standard.mly"
+ ( [ x ] )
+# 23953 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let b : 'tv_list_mzl_fun_after_dots_or__ = Obj.magic b in
- let a : 'tv_fun_after_stm = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_midzero_list_fun_after_stm_fun_after_dots_or_ =
-# 1819 "parser_cocci_menhir.mly"
- ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20039 "parser_cocci_menhir.ml"
+ let xs : 'tv_nonempty_list_TMul_ = Obj.magic xs in
+ let x : (
+# 166 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 23980 "parser_cocci_menhir.ml"
+ ) = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_nonempty_list_TMul_ =
+# 126 "standard.mly"
+ ( x :: xs )
+# 23987 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let b : 'tv_list_mzl_fun_start__ = Obj.magic b in
- let a : 'tv_fun_start = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_midzero_list_fun_start_fun_start_ =
-# 1819 "parser_cocci_menhir.mly"
- ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20069 "parser_cocci_menhir.ml"
+ let _1 : 'tv_aexpr = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
+# 1943 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 24011 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let b : 'tv_list_mzl_rule_elem_statement__ = Obj.magic b in
- let a : 'tv_rule_elem_statement = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_midzero_list_rule_elem_statement_rule_elem_statement_ =
-# 1819 "parser_cocci_menhir.mly"
- ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20099 "parser_cocci_menhir.ml"
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24037 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_aexpr = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
+# 1945 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 24046 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let b : 'tv_list_mzl_statement__ = Obj.magic b in
- let a : 'tv_statement = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_midzero_list_statement_statement_ =
-# 1819 "parser_cocci_menhir.mly"
- ( let (mids,code) = List.split b in (mids,(a::code)) )
-# 20129 "parser_cocci_menhir.ml"
+ let _3 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24078 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_aexpr = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
+# 1948 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 24088 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = f;
- MenhirLib.EngineTypes.startp = _startpos_f_;
- MenhirLib.EngineTypes.endp = _endpos_f_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- } = _menhir_stack in
- let b : 'tv_loption_minus_start_ = Obj.magic b in
- let f : 'tv_loption_filespec_ = Obj.magic f in
- let _startpos = _startpos_f_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_minus_body =
-# 597 "parser_cocci_menhir.mly"
- ( match f@b(*@ew*) with
- [] -> raise (Semantic_cocci.Semantic "minus slice can't be empty")
- | code -> Top_level.top_level code )
-# 20161 "parser_cocci_menhir.ml"
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_nonempty_list_start_aexpr_TEllipsis_ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
+# 1951 "parser_cocci_menhir.mly"
+ ( _2 )
+# 24116 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = f;
- MenhirLib.EngineTypes.startp = _startpos_f_;
- MenhirLib.EngineTypes.endp = _endpos_f_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let b : 'tv_top_eexpr = Obj.magic b in
- let f : 'tv_loption_filespec_ = Obj.magic f in
- let _startpos = _startpos_f_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_minus_exp_body =
-# 611 "parser_cocci_menhir.mly"
- ( match f@[b](*@ew*) with
- [] -> raise (Semantic_cocci.Semantic "minus slice can't be empty")
- | code -> Top_level.top_level code )
-# 20193 "parser_cocci_menhir.ml"
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24137 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_d_ in
+ let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
+# 1952 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [(build_dots "..." d)] )
+# 24144 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
+ MenhirLib.EngineTypes.semv = _2;
MenhirLib.EngineTypes.startp = _startpos__2_;
MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _1 : 'tv_minus_exp_body = Obj.magic _1 in
- let _startpos = _startpos__1_ in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24170 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24175 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
let _endpos = _endpos__2_ in
- let _v : (
-# 137 "parser_cocci_menhir.mly"
- (Ast0_cocci.rule)
-# 20221 "parser_cocci_menhir.ml"
- ) =
-# 177 "parser_cocci_menhir.mly"
- ( _1 )
-# 20225 "parser_cocci_menhir.ml"
+ let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
+# 1954 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 24183 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let m : 'tv_minus_exp_body = Obj.magic m in
- let _startpos = _startpos_m_ in
- let _endpos = _endpos__2_ in
- let _v : (
-# 137 "parser_cocci_menhir.mly"
- (Ast0_cocci.rule)
-# 20253 "parser_cocci_menhir.ml"
- ) =
-# 177 "parser_cocci_menhir.mly"
- ( m )
-# 20257 "parser_cocci_menhir.ml"
+ let r : 'tv_continue_list_aexpr_TEllipsis_ = Obj.magic r in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24215 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24220 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_nonempty_list_start_aexpr_TEllipsis_ =
+# 1957 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ (build_dots "..." d)::
+ (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (r build_dots build_comma) )
+# 24230 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let m : 'tv_minus_exp_body = Obj.magic m in
- let _startpos = _startpos_m_ in
- let _endpos = _endpos__2_ in
- let _v : (
-# 137 "parser_cocci_menhir.mly"
- (Ast0_cocci.rule)
-# 20285 "parser_cocci_menhir.ml"
- ) =
-# 178 "parser_cocci_menhir.mly"
- ( m )
-# 20289 "parser_cocci_menhir.ml"
+ let _1 : 'tv_dparam = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
+# 1943 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 24254 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
+ MenhirLib.EngineTypes.semv = _2;
MenhirLib.EngineTypes.startp = _startpos__2_;
MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _1 : 'tv_minus_body = Obj.magic _1 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24280 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_dparam = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : (
-# 134 "parser_cocci_menhir.mly"
- (Ast0_cocci.rule)
-# 20317 "parser_cocci_menhir.ml"
- ) =
-# 173 "parser_cocci_menhir.mly"
- ( _1 )
-# 20321 "parser_cocci_menhir.ml"
+ let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
+# 1945 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 24289 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let m : 'tv_minus_body = Obj.magic m in
- let _startpos = _startpos_m_ in
- let _endpos = _endpos__2_ in
- let _v : (
-# 134 "parser_cocci_menhir.mly"
- (Ast0_cocci.rule)
-# 20349 "parser_cocci_menhir.ml"
- ) =
-# 173 "parser_cocci_menhir.mly"
- ( m )
-# 20353 "parser_cocci_menhir.ml"
+ let _3 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24321 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_dparam = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
+# 1948 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 24331 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
+ MenhirLib.EngineTypes.semv = _2;
MenhirLib.EngineTypes.startp = _startpos__2_;
MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let m : 'tv_minus_body = Obj.magic m in
- let _startpos = _startpos_m_ in
+ let _2 : 'tv_nonempty_list_start_dparam_TEllipsis_ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : (
-# 134 "parser_cocci_menhir.mly"
- (Ast0_cocci.rule)
-# 20381 "parser_cocci_menhir.ml"
- ) =
-# 174 "parser_cocci_menhir.mly"
- ( m )
-# 20385 "parser_cocci_menhir.ml"
+ let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
+# 1951 "parser_cocci_menhir.mly"
+ ( _2 )
+# 24359 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_fundecl = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_minus_start =
-# 1628 "parser_cocci_menhir.mly"
- ( [Ast0.wrap(Ast0.DECL(_1))] )
-# 20409 "parser_cocci_menhir.ml"
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24380 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_d_ in
+ let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
+# 1952 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [(build_dots "..." d)] )
+# 24387 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
} = _menhir_stack in
- let _1 : 'tv_ctype = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_minus_start =
-# 1629 "parser_cocci_menhir.mly"
- ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] )
-# 20433 "parser_cocci_menhir.ml"
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24413 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24418 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
+# 1954 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 24426 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
} = _menhir_stack in
- let _1 : 'tv_top_init = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_minus_start =
-# 1630 "parser_cocci_menhir.mly"
- ( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.TopInit(_1))))] )
-# 20457 "parser_cocci_menhir.ml"
+ let r : 'tv_continue_list_dparam_TEllipsis_ = Obj.magic r in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24458 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24463 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_nonempty_list_start_dparam_TEllipsis_ =
+# 1957 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ (build_dots "..." d)::
+ (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (r build_dots build_comma) )
+# 24473 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ = Obj.magic _1 in
+ let _1 : 'tv_enum_decl_one = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_minus_start =
-# 1632 "parser_cocci_menhir.mly"
- ( List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1 )
-# 20481 "parser_cocci_menhir.ml"
+ let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
+# 1943 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 24497 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let b : 'tv_ctype = Obj.magic b in
- let a : (
-# 77 "parser_cocci_menhir.mly"
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 20508 "parser_cocci_menhir.ml"
- ) = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_mzl_ctype_ =
-# 1822 "parser_cocci_menhir.mly"
- ( (P.clt2mcode "|" a, b) )
-# 20515 "parser_cocci_menhir.ml"
+# 24523 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_enum_decl_one = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
+# 1945 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 24532 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let b : 'tv_eexpr = Obj.magic b in
- let a : (
-# 77 "parser_cocci_menhir.mly"
+ let _3 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 20542 "parser_cocci_menhir.ml"
- ) = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_mzl_eexpr_ =
-# 1822 "parser_cocci_menhir.mly"
- ( (P.clt2mcode "|" a, b) )
-# 20549 "parser_cocci_menhir.ml"
+# 24564 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_enum_decl_one = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
+# 1948 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 24574 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let b : 'tv_fun_after_dots_or = Obj.magic b in
- let a : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 20576 "parser_cocci_menhir.ml"
- ) = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_mzl_fun_after_dots_or_ =
-# 1822 "parser_cocci_menhir.mly"
- ( (P.clt2mcode "|" a, b) )
-# 20583 "parser_cocci_menhir.ml"
+ let _2 : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
+# 1951 "parser_cocci_menhir.mly"
+ ( _2 )
+# 24602 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let b : 'tv_fun_start = Obj.magic b in
- let a : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 20610 "parser_cocci_menhir.ml"
- ) = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_mzl_fun_start_ =
-# 1822 "parser_cocci_menhir.mly"
- ( (P.clt2mcode "|" a, b) )
-# 20617 "parser_cocci_menhir.ml"
+ let d : 'tv_edots_when_TEllipsis_enum_decl_one_ = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_d_ in
+ let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
+# 1952 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [(build_dots "..." d)] )
+# 24626 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let b : 'tv_rule_elem_statement = Obj.magic b in
- let a : (
-# 77 "parser_cocci_menhir.mly"
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 20644 "parser_cocci_menhir.ml"
- ) = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_mzl_rule_elem_statement_ =
-# 1822 "parser_cocci_menhir.mly"
- ( (P.clt2mcode "|" a, b) )
-# 20651 "parser_cocci_menhir.ml"
+# 24652 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : 'tv_edots_when_TEllipsis_enum_decl_one_ = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
+# 1954 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 24661 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = b;
- MenhirLib.EngineTypes.startp = _startpos_b_;
- MenhirLib.EngineTypes.endp = _endpos_b_;
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = a;
- MenhirLib.EngineTypes.startp = _startpos_a_;
- MenhirLib.EngineTypes.endp = _endpos_a_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let b : 'tv_statement = Obj.magic b in
- let a : (
-# 77 "parser_cocci_menhir.mly"
+ let r : 'tv_continue_list_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ = Obj.magic r in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 20678 "parser_cocci_menhir.ml"
- ) = Obj.magic a in
- let _startpos = _startpos_a_ in
- let _endpos = _endpos_b_ in
- let _v : 'tv_mzl_statement_ =
-# 1822 "parser_cocci_menhir.mly"
- ( (P.clt2mcode "|" a, b) )
-# 20685 "parser_cocci_menhir.ml"
+# 24693 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : 'tv_edots_when_TEllipsis_enum_decl_one_ = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_nonempty_list_start_enum_decl_one_edots_when_TEllipsis_enum_decl_one__ =
+# 1957 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ (build_dots "..." d)::
+ (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (r build_dots build_comma) )
+# 24704 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_decl = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_name_opt_decl =
-# 818 "parser_cocci_menhir.mly"
- ( _1 )
-# 20709 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = rp1;
- MenhirLib.EngineTypes.startp = _startpos_rp1_;
- MenhirLib.EngineTypes.endp = _endpos_rp1_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = lp1;
- MenhirLib.EngineTypes.startp = _startpos_lp1_;
- MenhirLib.EngineTypes.endp = _endpos_lp1_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = rp;
- MenhirLib.EngineTypes.startp = _startpos_rp_;
- MenhirLib.EngineTypes.endp = _endpos_rp_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = s;
- MenhirLib.EngineTypes.startp = _startpos_s_;
- MenhirLib.EngineTypes.endp = _endpos_s_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = lp;
- MenhirLib.EngineTypes.startp = _startpos_lp_;
- MenhirLib.EngineTypes.endp = _endpos_lp_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = t;
- MenhirLib.EngineTypes.startp = _startpos_t_;
- MenhirLib.EngineTypes.endp = _endpos_t_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- };
- };
- };
- } = _menhir_stack in
- let rp1 : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 20760 "parser_cocci_menhir.ml"
- ) = Obj.magic rp1 in
- let d : 'tv_decl_list_name_opt_decl_ = Obj.magic d in
- let lp1 : (
-# 76 "parser_cocci_menhir.mly"
- (Data.clt)
-# 20766 "parser_cocci_menhir.ml"
- ) = Obj.magic lp1 in
- let rp : (
-# 77 "parser_cocci_menhir.mly"
- (Data.clt)
-# 20771 "parser_cocci_menhir.ml"
- ) = Obj.magic rp in
- let s : (
-# 99 "parser_cocci_menhir.mly"
- (Data.clt)
-# 20776 "parser_cocci_menhir.ml"
- ) = Obj.magic s in
- let lp : (
-# 76 "parser_cocci_menhir.mly"
- (Data.clt)
-# 20781 "parser_cocci_menhir.ml"
- ) = Obj.magic lp in
- let t : 'tv_ctype = Obj.magic t in
- let _startpos = _startpos_t_ in
- let _endpos = _endpos_rp1_ in
- let _v : 'tv_name_opt_decl =
-# 821 "parser_cocci_menhir.mly"
- ( let fnptr =
- Ast0.wrap
- (Ast0.FunctionPointer
- (t,P.clt2mcode "(" lp,P.clt2mcode "*" s,P.clt2mcode ")" rp,
- P.clt2mcode "(" lp1,d,P.clt2mcode ")" rp1)) in
- Ast0.wrap(Ast0.Param(fnptr, None)) )
-# 20794 "parser_cocci_menhir.ml"
+ let _1 : 'tv_initialize2 = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
+# 1943 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 24728 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_nest_after_stm = Obj.magic _2 in
- let _1 : 'tv_decl_statement_expr = Obj.magic _1 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24754 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_initialize2 = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : 'tv_nest_after_dots =
-# 1743 "parser_cocci_menhir.mly"
- (_1@_2)
-# 20824 "parser_cocci_menhir.ml"
+ let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
+# 1945 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 24763 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
} = _menhir_stack in
- let _2 : 'tv_nest_after_exp = Obj.magic _2 in
+ let _3 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24795 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_initialize2 = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_nest_after_dots =
-# 1744 "parser_cocci_menhir.mly"
- (_2)
-# 20852 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
+# 1948 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 24805 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_nest_after_exp = Obj.magic _2 in
- let _1 : 'tv_expr = Obj.magic _1 in
+ let _2 : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic _2 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : 'tv_nest_after_dots =
-# 1745 "parser_cocci_menhir.mly"
- ((Ast0.wrap(Ast0.Exp(_1)))::_2)
-# 20882 "parser_cocci_menhir.ml"
+ let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
+# 1951 "parser_cocci_menhir.mly"
+ ( _2 )
+# 24833 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_nest_after_exp =
-# 1753 "parser_cocci_menhir.mly"
- ([])
-# 20899 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_d_ in
+ let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
+# 1952 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [(build_dots "..." d)] )
+# 24857 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_nest_after_dots = Obj.magic _2 in
- let _1 : 'tv_stm_dots = Obj.magic _1 in
- let _startpos = _startpos__1_ in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24883 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in
+ let _startpos = _startpos_d_ in
let _endpos = _endpos__2_ in
- let _v : 'tv_nest_after_exp =
-# 1754 "parser_cocci_menhir.mly"
- (_1::_2)
-# 20929 "parser_cocci_menhir.ml"
+ let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
+# 1954 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 24892 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
});
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
- let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
- let _endpos = _startpos in
- let _v : 'tv_nest_after_stm =
-# 1748 "parser_cocci_menhir.mly"
- ([])
-# 20946 "parser_cocci_menhir.ml"
+ let {
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let r : 'tv_continue_list_initialize2_edots_when_TEllipsis_initialize__ = Obj.magic r in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24924 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : 'tv_edots_when_TEllipsis_initialize_ = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_nonempty_list_start_initialize2_edots_when_TEllipsis_initialize__ =
+# 1957 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ (build_dots "..." d)::
+ (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (r build_dots build_comma) )
+# 24935 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _2 : 'tv_nest_after_dots = Obj.magic _2 in
- let _1 : 'tv_stm_dots = Obj.magic _1 in
+ let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_nest_after_stm =
-# 1749 "parser_cocci_menhir.mly"
- (_1::_2)
-# 20976 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
+# 1943 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 24959 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_nest_after_stm = Obj.magic _2 in
- let _1 : 'tv_decl_statement = Obj.magic _1 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 24985 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : 'tv_nest_after_stm =
-# 1750 "parser_cocci_menhir.mly"
- (_1@_2)
-# 21006 "parser_cocci_menhir.ml"
+ let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
+# 1945 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 24994 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = c;
- MenhirLib.EngineTypes.startp = _startpos_c_;
- MenhirLib.EngineTypes.endp = _endpos_c_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = e;
- MenhirLib.EngineTypes.startp = _startpos_e_;
- MenhirLib.EngineTypes.endp = _endpos_e_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = _1;
};
};
} = _menhir_stack in
- let c : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 21037 "parser_cocci_menhir.ml"
- ) = Obj.magic c in
- let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
- let _1 : (
-# 73 "parser_cocci_menhir.mly"
+ let _3 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 21043 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+# 25026 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_one_dec_decl_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos_c_ in
- let _v : 'tv_nest_expressions =
-# 1202 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<..." _1,
- Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
- P.clt2mcode "...>" c, None, false)) )
-# 21052 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
+# 1948 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 25036 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = c;
- MenhirLib.EngineTypes.startp = _startpos_c_;
- MenhirLib.EngineTypes.endp = _endpos_c_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = e;
- MenhirLib.EngineTypes.startp = _startpos_e_;
- MenhirLib.EngineTypes.endp = _endpos_e_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let c : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 21083 "parser_cocci_menhir.ml"
- ) = Obj.magic c in
- let e : 'tv_expr_dots_TEllipsis_ = Obj.magic e in
- let _1 : (
-# 73 "parser_cocci_menhir.mly"
- (Data.clt)
-# 21089 "parser_cocci_menhir.ml"
- ) = Obj.magic _1 in
+ let _2 : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ = Obj.magic _2 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos_c_ in
- let _v : 'tv_nest_expressions =
-# 1206 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.NestExpr(P.clt2mcode "<+..." _1,
- Ast0.wrap(Ast0.DOTS(e (P.mkedots "..."))),
- P.clt2mcode "...+>" c, None, true)) )
-# 21098 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
+# 1951 "parser_cocci_menhir.mly"
+ ( _2 )
+# 25064 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_nest_after_dots = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_nest_start =
-# 1740 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.DOTS(_1)) )
-# 21122 "parser_cocci_menhir.ml"
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 25085 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_d_ in
+ let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
+# 1952 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [(build_dots "..." d)] )
+# 25092 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 25118 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 25123 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
+# 1954 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 25131 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let r : 'tv_continue_list_one_dec_decl__TEllipsis_ = Obj.magic r in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 25163 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 25168 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_nonempty_list_start_one_dec_decl__TEllipsis_ =
+# 1957 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ (build_dots "..." d)::
+ (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (r build_dots build_comma) )
+# 25178 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
+ let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : (
-# 168 "parser_cocci_menhir.mly"
- (unit)
-# 21144 "parser_cocci_menhir.ml"
- ) =
-# 1885 "parser_cocci_menhir.mly"
- ( () )
-# 21148 "parser_cocci_menhir.ml"
+ let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
+# 1943 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [_1] )
+# 25202 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
+ MenhirLib.EngineTypes.semv = _2;
MenhirLib.EngineTypes.startp = _startpos__2_;
MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 25228 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
- let _v : (
-# 168 "parser_cocci_menhir.mly"
- (unit)
-# 21174 "parser_cocci_menhir.ml"
- ) =
-# 1886 "parser_cocci_menhir.mly"
- ( () )
-# 21178 "parser_cocci_menhir.ml"
+ let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
+# 1945 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::[Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 25237 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
} = _menhir_stack in
+ let _3 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _3 in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 25269 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _1 : 'tv_one_dec_name_opt_decl_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : (
-# 168 "parser_cocci_menhir.mly"
- (unit)
-# 21200 "parser_cocci_menhir.ml"
- ) =
-# 1887 "parser_cocci_menhir.mly"
- ( () )
-# 21204 "parser_cocci_menhir.ml"
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
+# 1948 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ _1::(Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (_3 build_dots build_comma) )
+# 25279 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = dg;
- MenhirLib.EngineTypes.startp = _startpos_dg_;
- MenhirLib.EngineTypes.endp = _endpos_dg_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = g;
- MenhirLib.EngineTypes.startp = _startpos_g_;
- MenhirLib.EngineTypes.endp = _endpos_g_;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let dg : 'tv_list_pair_edots_when_TEllipsis_eexpr__dexpr__ = Obj.magic dg in
- let g : 'tv_dexpr = Obj.magic g in
- let _startpos = _startpos_g_ in
- let _endpos = _endpos_dg_ in
- let _v : 'tv_no_dot_start_end_dexpr_edots_when_TEllipsis_eexpr__ =
-# 1370 "parser_cocci_menhir.mly"
- ( function dot_builder ->
- g :: (List.concat(List.map (function (d,g) -> [dot_builder d;g]) dg)) )
-# 21235 "parser_cocci_menhir.ml"
+ let _2 : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
+# 1951 "parser_cocci_menhir.mly"
+ ( _2 )
+# 25307 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let x : (
-# 99 "parser_cocci_menhir.mly"
+ let d : (
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 21256 "parser_cocci_menhir.ml"
- ) = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_x_ in
- let _v : 'tv_nonempty_list_TMul_ =
-# 124 "standard.mly"
- ( [ x ] )
-# 21263 "parser_cocci_menhir.ml"
+# 25328 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_d_ in
+ let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
+# 1952 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma -> [(build_dots "..." d)] )
+# 25335 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = xs;
- MenhirLib.EngineTypes.startp = _startpos_xs_;
- MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x;
- MenhirLib.EngineTypes.startp = _startpos_x_;
- MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let xs : 'tv_nonempty_list_TMul_ = Obj.magic xs in
- let x : (
-# 99 "parser_cocci_menhir.mly"
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 21290 "parser_cocci_menhir.ml"
- ) = Obj.magic x in
- let _startpos = _startpos_x_ in
- let _endpos = _endpos_xs_ in
- let _v : 'tv_nonempty_list_TMul_ =
-# 126 "standard.mly"
- ( x :: xs )
-# 21297 "parser_cocci_menhir.ml"
+# 25361 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 25366 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
+# 1954 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ [(build_dots "..." d);Ast0.wrap(build_comma(P.clt2mcode "," _2))] )
+# 25374 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let r : 'tv_continue_list_one_dec_name_opt_decl__TEllipsis_ = Obj.magic r in
+ let _2 : (
+# 174 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 25406 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let d : (
+# 140 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 25411 "parser_cocci_menhir.ml"
+ ) = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_nonempty_list_start_one_dec_name_opt_decl__TEllipsis_ =
+# 1957 "parser_cocci_menhir.mly"
+ ( fun build_dots build_comma ->
+ (build_dots "..." d)::
+ (Ast0.wrap(build_comma(P.clt2mcode "," _2)))::
+ (r build_dots build_comma) )
+# 25421 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos_i_ in
let _v : 'tv_not_ceq =
-# 1461 "parser_cocci_menhir.mly"
+# 1787 "parser_cocci_menhir.mly"
( (if !Data.in_iso
then failwith "constraints not allowed in iso file");
(if !Data.in_generating
then failwith "constraints not allowed in a generated rule file");
[i] )
-# 21329 "parser_cocci_menhir.ml"
+# 25453 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_not_ceq =
-# 1467 "parser_cocci_menhir.mly"
+# 1793 "parser_cocci_menhir.mly"
( (if !Data.in_iso
then failwith "constraints not allowed in iso file");
(if !Data.in_generating
then failwith "constraints not allowed in a generated rule file");
l )
-# 21369 "parser_cocci_menhir.ml"
+# 25493 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ceq;
+ MenhirLib.EngineTypes.startp = _startpos_ceq_;
+ MenhirLib.EngineTypes.endp = _endpos_ceq_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let ceq : 'tv_not_ceq = Obj.magic ceq in
+ let _startpos = _startpos_ceq_ in
+ let _endpos = _endpos_ceq_ in
+ let _v : 'tv_not_ceq_or_sub =
+# 1763 "parser_cocci_menhir.mly"
+ (Ast0.NotExpCstrt ceq)
+# 25517 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = s;
+ MenhirLib.EngineTypes.startp = _startpos_s_;
+ MenhirLib.EngineTypes.endp = _endpos_s_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let s : 'tv_sub = Obj.magic s in
+ let _startpos = _startpos_s_ in
+ let _endpos = _endpos_s_ in
+ let _v : 'tv_not_ceq_or_sub =
+# 1764 "parser_cocci_menhir.mly"
+ (Ast0.SubExpCstrt s)
+# 25541 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let i : 'tv_pure_ident = Obj.magic i in
let _startpos = _startpos__1_ in
let _endpos = _endpos_i_ in
- let _v : 'tv_not_eq =
-# 1428 "parser_cocci_menhir.mly"
+ let _v : 'tv_not_eqe =
+# 1768 "parser_cocci_menhir.mly"
( (if !Data.in_iso
then failwith "constraints not allowed in iso file");
(if !Data.in_generating
- (* pb: constraints not stored with metavars; too lazy to search for
- them in the pattern *)
then failwith "constraints not allowed in a generated rule file");
- [Ast0.wrap(Ast0.Id(P.id2mcode i))] )
-# 21403 "parser_cocci_menhir.ml"
+ [Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i))))]
+ )
+# 25574 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let l : 'tv_comma_list_pure_ident_ = Obj.magic l in
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
- let _v : 'tv_not_eq =
-# 1436 "parser_cocci_menhir.mly"
+ let _v : 'tv_not_eqe =
+# 1775 "parser_cocci_menhir.mly"
( (if !Data.in_iso
then failwith "constraints not allowed in iso file");
(if !Data.in_generating
then failwith "constraints not allowed in a generated rule file");
- List.map (function i -> Ast0.wrap(Ast0.Id(P.id2mcode i))) l )
-# 21443 "parser_cocci_menhir.ml"
+ List.map
+ (function i ->
+ Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))))
+ l
+ )
+# 25618 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let i : 'tv_pure_ident = Obj.magic i in
+ let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
let _startpos = _startpos__1_ in
let _endpos = _endpos_i_ in
- let _v : 'tv_not_eqe =
-# 1444 "parser_cocci_menhir.mly"
+ let _v : 'tv_not_eqid =
+# 1725 "parser_cocci_menhir.mly"
( (if !Data.in_iso
then failwith "constraints not allowed in iso file");
(if !Data.in_generating
+ (* pb: constraints not stored with metavars; too lazy to search for
+ them in the pattern *)
then failwith "constraints not allowed in a generated rule file");
- [Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i))))] )
-# 21475 "parser_cocci_menhir.ml"
+ (match i with
+ (Some rn,id) ->
+ let i =
+ P.check_inherited_constraint i
+ (function mv -> Ast.MetaIdDecl(Ast.NONE,mv)) in
+ Ast.IdNegIdSet([],[i])
+ | (None,i) -> Ast.IdNegIdSet([i],[])) )
+# 25658 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let l : 'tv_comma_list_pure_ident_ = Obj.magic l in
+ let l : 'tv_comma_list_pure_ident_or_meta_ident_ = Obj.magic l in
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
- let _v : 'tv_not_eqe =
-# 1450 "parser_cocci_menhir.mly"
+ let _v : 'tv_not_eqid =
+# 1739 "parser_cocci_menhir.mly"
( (if !Data.in_iso
then failwith "constraints not allowed in iso file");
(if !Data.in_generating
then failwith "constraints not allowed in a generated rule file");
- List.map
- (function i ->
- Ast0.wrap(Ast0.Ident(Ast0.wrap(Ast0.Id(P.id2mcode i)))))
- l )
-# 21518 "parser_cocci_menhir.ml"
+ let (str,meta) =
+ List.fold_left
+ (function (str,meta) ->
+ function
+ (Some rn,id) as i ->
+ let i =
+ P.check_inherited_constraint i
+ (function mv -> Ast.MetaIdDecl(Ast.NONE,mv)) in
+ (str,i::meta)
+ | (None,i) -> (i::str,meta))
+ ([],[]) l in
+ Ast.IdNegIdSet(str,meta)
+ )
+# 25710 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos_i_ in
let _v : 'tv_not_pos =
-# 1481 "parser_cocci_menhir.mly"
+# 1831 "parser_cocci_menhir.mly"
( (if !Data.in_iso
then failwith "constraints not allowed in iso file");
(if !Data.in_generating
then failwith "constraints not allowed in a generated rule file");
- match i with
- (None,_) -> failwith "constraint must be an inherited variable"
- | (Some rule,name) ->
- let i = (rule,name) in
- P.check_meta(Ast.MetaPosDecl(Ast.NONE,i));
- [i] )
-# 21555 "parser_cocci_menhir.ml"
+ let i =
+ P.check_inherited_constraint i
+ (function mv -> Ast.MetaPosDecl(Ast.NONE,mv)) in
+ [i] )
+# 25745 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_not_pos =
-# 1492 "parser_cocci_menhir.mly"
+# 1840 "parser_cocci_menhir.mly"
( (if !Data.in_iso
then failwith "constraints not allowed in iso file");
(if !Data.in_generating
then failwith "constraints not allowed in a generated rule file");
List.map
- (function
- (None,_) ->
- failwith "constraint must be an inherited variable"
- | (Some rule,name) ->
- let i = (rule,name) in
- P.check_meta(Ast.MetaPosDecl(Ast.NONE,i));
- i)
+ (function i ->
+ P.check_inherited_constraint i
+ (function mv -> Ast.MetaPosDecl(Ast.NONE,mv)))
l )
-# 21603 "parser_cocci_menhir.ml"
+# 25789 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_one_dec_decl_ =
-# 1566 "parser_cocci_menhir.mly"
+# 1918 "parser_cocci_menhir.mly"
( _1 )
-# 21627 "parser_cocci_menhir.ml"
+# 25813 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 66 "parser_cocci_menhir.mly"
+# 133 "parser_cocci_menhir.mly"
(Parse_aux.list_info)
-# 21648 "parser_cocci_menhir.ml"
+# 25834 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_one_dec_decl_ =
-# 1568 "parser_cocci_menhir.mly"
+# 1920 "parser_cocci_menhir.mly"
( let (nm,lenname,pure,clt) = _1 in
let nm = P.clt2mcode nm clt in
- let lenname =
- match lenname with
- Some nm -> Some(P.clt2mcode nm clt)
- | None -> None in
+ let lenname =
+ match lenname with
+ Ast.AnyLen -> Ast0.AnyListLen
+ | Ast.MetaLen nm -> Ast0.MetaListLen(P.clt2mcode nm clt)
+ | Ast.CstLen n -> Ast0.CstListLen n in
Ast0.wrap(Ast0.MetaParamList(nm,lenname,pure)) )
-# 21661 "parser_cocci_menhir.ml"
+# 25848 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_one_dec_name_opt_decl_ =
-# 1566 "parser_cocci_menhir.mly"
+# 1918 "parser_cocci_menhir.mly"
( _1 )
-# 21685 "parser_cocci_menhir.ml"
+# 25872 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 66 "parser_cocci_menhir.mly"
+# 133 "parser_cocci_menhir.mly"
(Parse_aux.list_info)
-# 21706 "parser_cocci_menhir.ml"
+# 25893 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_one_dec_name_opt_decl_ =
-# 1568 "parser_cocci_menhir.mly"
+# 1920 "parser_cocci_menhir.mly"
( let (nm,lenname,pure,clt) = _1 in
let nm = P.clt2mcode nm clt in
- let lenname =
- match lenname with
- Some nm -> Some(P.clt2mcode nm clt)
- | None -> None in
+ let lenname =
+ match lenname with
+ Ast.AnyLen -> Ast0.AnyListLen
+ | Ast.MetaLen nm -> Ast0.MetaListLen(P.clt2mcode nm clt)
+ | Ast.CstLen n -> Ast0.CstListLen n in
Ast0.wrap(Ast0.MetaParamList(nm,lenname,pure)) )
-# 21719 "parser_cocci_menhir.ml"
+# 25907 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 21745 "parser_cocci_menhir.ml"
+# 25933 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let t : 'tv_ctype = Obj.magic t in
let _startpos = _startpos_t_ in
let _endpos = _endpos_pv_ in
let _v : 'tv_one_decl_var =
-# 991 "parser_cocci_menhir.mly"
+# 1189 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.TyDecl(t,P.clt2mcode ";" pv)) )
-# 21753 "parser_cocci_menhir.ml"
+# 25941 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 25962 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_one_decl_var =
+# 1190 "parser_cocci_menhir.mly"
+ ( P.meta_decl _1 )
+# 25969 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 21784 "parser_cocci_menhir.ml"
+# 26000 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_d_ident = Obj.magic d in
let t : 'tv_ctype = Obj.magic t in
# 39 "standard.mly"
( None )
-# 21794 "parser_cocci_menhir.ml"
+# 26010 "parser_cocci_menhir.ml"
in
-# 993 "parser_cocci_menhir.mly"
+# 1192 "parser_cocci_menhir.mly"
( let (id,fn) = d in
Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
-# 21801 "parser_cocci_menhir.ml"
+# 26017 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 21837 "parser_cocci_menhir.ml"
+# 26053 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_d_ident = Obj.magic d in
let t : 'tv_ctype = Obj.magic t in
# 41 "standard.mly"
( Some x )
-# 21849 "parser_cocci_menhir.ml"
+# 26065 "parser_cocci_menhir.ml"
in
-# 993 "parser_cocci_menhir.mly"
+# 1192 "parser_cocci_menhir.mly"
( let (id,fn) = d in
Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
-# 21856 "parser_cocci_menhir.ml"
+# 26072 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos_f_ in
let _endpos = _endpos_f_ in
let _v : 'tv_one_decl_var =
-# 995 "parser_cocci_menhir.mly"
+# 1194 "parser_cocci_menhir.mly"
( f )
-# 21880 "parser_cocci_menhir.ml"
+# 26096 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 21921 "parser_cocci_menhir.ml"
+# 26137 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 21927 "parser_cocci_menhir.ml"
+# 26143 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let t : 'tv_ctype = Obj.magic t in
# 39 "standard.mly"
( None )
-# 21937 "parser_cocci_menhir.ml"
+# 26153 "parser_cocci_menhir.ml"
in
-# 997 "parser_cocci_menhir.mly"
+# 1196 "parser_cocci_menhir.mly"
( let (id,fn) = d in
Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) )
-# 21944 "parser_cocci_menhir.ml"
+# 26160 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 21990 "parser_cocci_menhir.ml"
+# 26206 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 21996 "parser_cocci_menhir.ml"
+# 26212 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let t : 'tv_ctype = Obj.magic t in
# 41 "standard.mly"
( Some x )
-# 22008 "parser_cocci_menhir.ml"
+# 26224 "parser_cocci_menhir.ml"
in
-# 997 "parser_cocci_menhir.mly"
+# 1196 "parser_cocci_menhir.mly"
( let (id,fn) = d in
Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)) )
-# 22015 "parser_cocci_menhir.ml"
+# 26231 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22046 "parser_cocci_menhir.ml"
+# 26262 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 39 "standard.mly"
( None )
-# 22056 "parser_cocci_menhir.ml"
+# 26272 "parser_cocci_menhir.ml"
in
let s =
# 39 "standard.mly"
( None )
-# 22063 "parser_cocci_menhir.ml"
+# 26279 "parser_cocci_menhir.ml"
in
-# 1002 "parser_cocci_menhir.mly"
+# 1201 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
-# 22071 "parser_cocci_menhir.ml"
+# 26287 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22107 "parser_cocci_menhir.ml"
+# 26323 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 41 "standard.mly"
( Some x )
-# 22119 "parser_cocci_menhir.ml"
+# 26335 "parser_cocci_menhir.ml"
in
let s =
# 39 "standard.mly"
( None )
-# 22126 "parser_cocci_menhir.ml"
+# 26342 "parser_cocci_menhir.ml"
in
-# 1002 "parser_cocci_menhir.mly"
+# 1201 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
-# 22134 "parser_cocci_menhir.ml"
+# 26350 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22170 "parser_cocci_menhir.ml"
+# 26386 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 39 "standard.mly"
( None )
-# 22181 "parser_cocci_menhir.ml"
+# 26397 "parser_cocci_menhir.ml"
in
let s =
# 41 "standard.mly"
( Some x )
-# 22189 "parser_cocci_menhir.ml"
+# 26405 "parser_cocci_menhir.ml"
in
-# 1002 "parser_cocci_menhir.mly"
+# 1201 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
-# 22197 "parser_cocci_menhir.ml"
+# 26413 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22238 "parser_cocci_menhir.ml"
+# 26454 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 41 "standard.mly"
( Some x )
-# 22251 "parser_cocci_menhir.ml"
+# 26467 "parser_cocci_menhir.ml"
in
let s =
# 41 "standard.mly"
( Some x )
-# 22259 "parser_cocci_menhir.ml"
+# 26475 "parser_cocci_menhir.ml"
in
-# 1002 "parser_cocci_menhir.mly"
+# 1201 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.UnInit(s,fn idtype,id,P.clt2mcode ";" pv)) )
-# 22267 "parser_cocci_menhir.ml"
+# 26483 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22308 "parser_cocci_menhir.ml"
+# 26524 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22314 "parser_cocci_menhir.ml"
+# 26530 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 39 "standard.mly"
( None )
-# 22324 "parser_cocci_menhir.ml"
+# 26540 "parser_cocci_menhir.ml"
in
let s =
# 39 "standard.mly"
( None )
-# 22331 "parser_cocci_menhir.ml"
+# 26547 "parser_cocci_menhir.ml"
in
-# 1007 "parser_cocci_menhir.mly"
+# 1206 "parser_cocci_menhir.mly"
( let (id,fn) = d in
!Data.add_type_name (P.id2name i);
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
P.clt2mcode ";" pv)) )
-# 22341 "parser_cocci_menhir.ml"
+# 26557 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22387 "parser_cocci_menhir.ml"
+# 26603 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22393 "parser_cocci_menhir.ml"
+# 26609 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 41 "standard.mly"
( Some x )
-# 22405 "parser_cocci_menhir.ml"
+# 26621 "parser_cocci_menhir.ml"
in
let s =
# 39 "standard.mly"
( None )
-# 22412 "parser_cocci_menhir.ml"
+# 26628 "parser_cocci_menhir.ml"
in
-# 1007 "parser_cocci_menhir.mly"
+# 1206 "parser_cocci_menhir.mly"
( let (id,fn) = d in
!Data.add_type_name (P.id2name i);
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
P.clt2mcode ";" pv)) )
-# 22422 "parser_cocci_menhir.ml"
+# 26638 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22468 "parser_cocci_menhir.ml"
+# 26684 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22474 "parser_cocci_menhir.ml"
+# 26690 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 39 "standard.mly"
( None )
-# 22485 "parser_cocci_menhir.ml"
+# 26701 "parser_cocci_menhir.ml"
in
let s =
# 41 "standard.mly"
( Some x )
-# 22493 "parser_cocci_menhir.ml"
+# 26709 "parser_cocci_menhir.ml"
in
-# 1007 "parser_cocci_menhir.mly"
+# 1206 "parser_cocci_menhir.mly"
( let (id,fn) = d in
!Data.add_type_name (P.id2name i);
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
P.clt2mcode ";" pv)) )
-# 22503 "parser_cocci_menhir.ml"
+# 26719 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22554 "parser_cocci_menhir.ml"
+# 26770 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22560 "parser_cocci_menhir.ml"
+# 26776 "parser_cocci_menhir.ml"
) = Obj.magic q in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
# 41 "standard.mly"
( Some x )
-# 22573 "parser_cocci_menhir.ml"
+# 26789 "parser_cocci_menhir.ml"
in
let s =
# 41 "standard.mly"
( Some x )
-# 22581 "parser_cocci_menhir.ml"
+# 26797 "parser_cocci_menhir.ml"
in
-# 1007 "parser_cocci_menhir.mly"
+# 1206 "parser_cocci_menhir.mly"
( let (id,fn) = d in
!Data.add_type_name (P.id2name i);
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
Ast0.wrap(Ast0.Init(s,fn idtype,id,P.clt2mcode "=" q,e,
P.clt2mcode ";" pv)) )
-# 22591 "parser_cocci_menhir.ml"
+# 26807 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22652 "parser_cocci_menhir.ml"
+# 26868 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let rp2 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 22657 "parser_cocci_menhir.ml"
+# 26873 "parser_cocci_menhir.ml"
) = Obj.magic rp2 in
let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
let lp2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 22663 "parser_cocci_menhir.ml"
+# 26879 "parser_cocci_menhir.ml"
) = Obj.magic lp2 in
let rp1 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 22668 "parser_cocci_menhir.ml"
+# 26884 "parser_cocci_menhir.ml"
) = Obj.magic rp1 in
let d : 'tv_d_ident = Obj.magic d in
let st : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 22674 "parser_cocci_menhir.ml"
+# 26890 "parser_cocci_menhir.ml"
) = Obj.magic st in
let lp1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 22679 "parser_cocci_menhir.ml"
+# 26895 "parser_cocci_menhir.ml"
) = Obj.magic lp1 in
let t : 'tv_ctype = Obj.magic t in
let _startpos = _startpos_t_ in
# 39 "standard.mly"
( None )
-# 22688 "parser_cocci_menhir.ml"
+# 26904 "parser_cocci_menhir.ml"
in
-# 1017 "parser_cocci_menhir.mly"
+# 1216 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let t =
Ast0.wrap
(t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
-# 22700 "parser_cocci_menhir.ml"
+# 26916 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22766 "parser_cocci_menhir.ml"
+# 26982 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let rp2 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 22771 "parser_cocci_menhir.ml"
+# 26987 "parser_cocci_menhir.ml"
) = Obj.magic rp2 in
let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
let lp2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 22777 "parser_cocci_menhir.ml"
+# 26993 "parser_cocci_menhir.ml"
) = Obj.magic lp2 in
let rp1 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 22782 "parser_cocci_menhir.ml"
+# 26998 "parser_cocci_menhir.ml"
) = Obj.magic rp1 in
let d : 'tv_d_ident = Obj.magic d in
let st : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 22788 "parser_cocci_menhir.ml"
+# 27004 "parser_cocci_menhir.ml"
) = Obj.magic st in
let lp1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 22793 "parser_cocci_menhir.ml"
+# 27009 "parser_cocci_menhir.ml"
) = Obj.magic lp1 in
let t : 'tv_ctype = Obj.magic t in
let x0 : 'tv_storage = Obj.magic x0 in
# 41 "standard.mly"
( Some x )
-# 22804 "parser_cocci_menhir.ml"
+# 27020 "parser_cocci_menhir.ml"
in
-# 1017 "parser_cocci_menhir.mly"
+# 1216 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let t =
Ast0.wrap
(t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
Ast0.wrap(Ast0.UnInit(s,fn t,id,P.clt2mcode ";" pv)) )
-# 22816 "parser_cocci_menhir.ml"
+# 27032 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _5 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22857 "parser_cocci_menhir.ml"
+# 27073 "parser_cocci_menhir.ml"
) = Obj.magic _5 in
let _4 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 22862 "parser_cocci_menhir.ml"
+# 27078 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 22868 "parser_cocci_menhir.ml"
+# 27084 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_decl_ident = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__5_ in
let _v : 'tv_one_decl_var =
-# 1025 "parser_cocci_menhir.mly"
+# 1224 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.MacroDecl(_1,P.clt2mcode "(" _2,_3,
P.clt2mcode ")" _4,P.clt2mcode ";" _5)) )
-# 22877 "parser_cocci_menhir.ml"
+# 27093 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22948 "parser_cocci_menhir.ml"
+# 27164 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 22954 "parser_cocci_menhir.ml"
+# 27170 "parser_cocci_menhir.ml"
) = Obj.magic q in
let rp2 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 22959 "parser_cocci_menhir.ml"
+# 27175 "parser_cocci_menhir.ml"
) = Obj.magic rp2 in
let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
let lp2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 22965 "parser_cocci_menhir.ml"
+# 27181 "parser_cocci_menhir.ml"
) = Obj.magic lp2 in
let rp1 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 22970 "parser_cocci_menhir.ml"
+# 27186 "parser_cocci_menhir.ml"
) = Obj.magic rp1 in
let d : 'tv_d_ident = Obj.magic d in
let st : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 22976 "parser_cocci_menhir.ml"
+# 27192 "parser_cocci_menhir.ml"
) = Obj.magic st in
let lp1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 22981 "parser_cocci_menhir.ml"
+# 27197 "parser_cocci_menhir.ml"
) = Obj.magic lp1 in
let t : 'tv_ctype = Obj.magic t in
let _startpos = _startpos_t_ in
# 39 "standard.mly"
( None )
-# 22990 "parser_cocci_menhir.ml"
+# 27206 "parser_cocci_menhir.ml"
in
-# 1031 "parser_cocci_menhir.mly"
+# 1230 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let t =
Ast0.wrap
(t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)))
-# 23002 "parser_cocci_menhir.ml"
+# 27218 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 23078 "parser_cocci_menhir.ml"
+# 27294 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let e : 'tv_initialize = Obj.magic e in
let q : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 23084 "parser_cocci_menhir.ml"
+# 27300 "parser_cocci_menhir.ml"
) = Obj.magic q in
let rp2 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 23089 "parser_cocci_menhir.ml"
+# 27305 "parser_cocci_menhir.ml"
) = Obj.magic rp2 in
let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
let lp2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 23095 "parser_cocci_menhir.ml"
+# 27311 "parser_cocci_menhir.ml"
) = Obj.magic lp2 in
let rp1 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 23100 "parser_cocci_menhir.ml"
+# 27316 "parser_cocci_menhir.ml"
) = Obj.magic rp1 in
let d : 'tv_d_ident = Obj.magic d in
let st : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 23106 "parser_cocci_menhir.ml"
+# 27322 "parser_cocci_menhir.ml"
) = Obj.magic st in
let lp1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 23111 "parser_cocci_menhir.ml"
+# 27327 "parser_cocci_menhir.ml"
) = Obj.magic lp1 in
let t : 'tv_ctype = Obj.magic t in
let x0 : 'tv_storage = Obj.magic x0 in
# 41 "standard.mly"
( Some x )
-# 23122 "parser_cocci_menhir.ml"
+# 27338 "parser_cocci_menhir.ml"
in
-# 1031 "parser_cocci_menhir.mly"
+# 1230 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let t =
Ast0.wrap
(t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
Ast0.wrap(Ast0.Init(s,fn t,id,P.clt2mcode "=" q,e,P.clt2mcode ";" pv)))
-# 23134 "parser_cocci_menhir.ml"
+# 27350 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_option_TLocal_ =
# 29 "standard.mly"
( None )
-# 23151 "parser_cocci_menhir.ml"
+# 27367 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_option_TLocal_ =
# 31 "standard.mly"
( Some x )
-# 23175 "parser_cocci_menhir.ml"
+# 27391 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_option_TPosAny_ =
# 29 "standard.mly"
( None )
-# 23192 "parser_cocci_menhir.ml"
+# 27408 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_option_TPosAny_ =
# 31 "standard.mly"
( Some x )
-# 23216 "parser_cocci_menhir.ml"
+# 27432 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_option_eexpr_ =
# 29 "standard.mly"
( None )
-# 23233 "parser_cocci_menhir.ml"
+# 27449 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_option_eexpr_ =
# 31 "standard.mly"
( Some x )
-# 23257 "parser_cocci_menhir.ml"
+# 27473 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_option_not_ceq_or_sub_ =
+# 29 "standard.mly"
+ ( None )
+# 27490 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let x : 'tv_not_ceq_or_sub = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_x_ in
+ let _v : 'tv_option_not_ceq_or_sub_ =
+# 31 "standard.mly"
+ ( Some x )
+# 27514 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_option_re_or_not_eqe_or_sub_ =
+# 29 "standard.mly"
+ ( None )
+# 27531 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let x : 'tv_re_or_not_eqe_or_sub = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_x_ in
+ let _v : 'tv_option_re_or_not_eqe_or_sub_ =
+# 31 "standard.mly"
+ ( Some x )
+# 27555 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let _menhir_s = _menhir_env.MenhirLib.EngineTypes.current in
+ let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
+ let _endpos = _startpos in
+ let _v : 'tv_option_re_or_not_eqid_ =
+# 29 "standard.mly"
+ ( None )
+# 27572 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let x : 'tv_re_or_not_eqid = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_x_ in
+ let _v : 'tv_option_re_or_not_eqid_ =
+# 31 "standard.mly"
+ ( Some x )
+# 27596 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
let _v : 'tv_plus_after_dots =
-# 1690 "parser_cocci_menhir.mly"
+# 2083 "parser_cocci_menhir.mly"
([])
-# 23274 "parser_cocci_menhir.ml"
+# 27613 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_after_dots =
-# 1691 "parser_cocci_menhir.mly"
+# 2084 "parser_cocci_menhir.mly"
(_2)
-# 23302 "parser_cocci_menhir.ml"
+# 27641 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_after_dots =
-# 1693 "parser_cocci_menhir.mly"
+# 2086 "parser_cocci_menhir.mly"
( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 )
-# 23332 "parser_cocci_menhir.ml"
+# 27671 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_after_dots =
-# 1694 "parser_cocci_menhir.mly"
+# 2087 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.DECL(_1))::_2 )
-# 23362 "parser_cocci_menhir.ml"
+# 27701 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_after_dots =
-# 1696 "parser_cocci_menhir.mly"
+# 2089 "parser_cocci_menhir.mly"
( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
-# 23392 "parser_cocci_menhir.ml"
+# 27731 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
let _v : 'tv_plus_after_exp =
-# 1686 "parser_cocci_menhir.mly"
+# 2079 "parser_cocci_menhir.mly"
([])
-# 23409 "parser_cocci_menhir.ml"
+# 27748 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_after_exp =
-# 1687 "parser_cocci_menhir.mly"
+# 2080 "parser_cocci_menhir.mly"
( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
-# 23439 "parser_cocci_menhir.ml"
+# 27778 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
let _v : 'tv_plus_after_stm =
-# 1699 "parser_cocci_menhir.mly"
+# 2092 "parser_cocci_menhir.mly"
([])
-# 23456 "parser_cocci_menhir.ml"
+# 27795 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_after_stm =
-# 1700 "parser_cocci_menhir.mly"
+# 2093 "parser_cocci_menhir.mly"
( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
-# 23486 "parser_cocci_menhir.ml"
+# 27825 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_after_stm =
-# 1701 "parser_cocci_menhir.mly"
+# 2094 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.DECL(_1))::_2 )
-# 23516 "parser_cocci_menhir.ml"
+# 27855 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_after_stm =
-# 1703 "parser_cocci_menhir.mly"
+# 2096 "parser_cocci_menhir.mly"
( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
-# 23546 "parser_cocci_menhir.ml"
+# 27885 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos_f_ in
let _endpos = _endpos_b_ in
let _v : 'tv_plus_body =
-# 605 "parser_cocci_menhir.mly"
+# 795 "parser_cocci_menhir.mly"
( Top_level.top_level (f@b(*@ew*)) )
-# 23576 "parser_cocci_menhir.ml"
+# 27915 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos_f_ in
let _endpos = _endpos_b_ in
let _v : 'tv_plus_exp_body =
-# 619 "parser_cocci_menhir.mly"
+# 809 "parser_cocci_menhir.mly"
( Top_level.top_level (f@[b](*@ew*)) )
-# 23606 "parser_cocci_menhir.ml"
+# 27945 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : (
-# 143 "parser_cocci_menhir.mly"
+# 212 "parser_cocci_menhir.mly"
(Ast0_cocci.rule)
-# 23634 "parser_cocci_menhir.ml"
+# 27973 "parser_cocci_menhir.ml"
) =
-# 179 "parser_cocci_menhir.mly"
+# 248 "parser_cocci_menhir.mly"
( _1 )
-# 23638 "parser_cocci_menhir.ml"
+# 27977 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos_p_ in
let _endpos = _endpos__2_ in
let _v : (
-# 143 "parser_cocci_menhir.mly"
+# 212 "parser_cocci_menhir.mly"
(Ast0_cocci.rule)
-# 23666 "parser_cocci_menhir.ml"
+# 28005 "parser_cocci_menhir.ml"
) =
-# 179 "parser_cocci_menhir.mly"
+# 248 "parser_cocci_menhir.mly"
( p )
-# 23670 "parser_cocci_menhir.ml"
+# 28009 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos_p_ in
let _endpos = _endpos__2_ in
let _v : (
-# 143 "parser_cocci_menhir.mly"
+# 212 "parser_cocci_menhir.mly"
(Ast0_cocci.rule)
-# 23698 "parser_cocci_menhir.ml"
+# 28037 "parser_cocci_menhir.ml"
) =
-# 180 "parser_cocci_menhir.mly"
+# 249 "parser_cocci_menhir.mly"
( p )
-# 23702 "parser_cocci_menhir.ml"
+# 28041 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : (
-# 140 "parser_cocci_menhir.mly"
+# 209 "parser_cocci_menhir.mly"
(Ast0_cocci.rule)
-# 23730 "parser_cocci_menhir.ml"
+# 28069 "parser_cocci_menhir.ml"
) =
-# 175 "parser_cocci_menhir.mly"
+# 244 "parser_cocci_menhir.mly"
( _1 )
-# 23734 "parser_cocci_menhir.ml"
+# 28073 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos_p_ in
let _endpos = _endpos__2_ in
let _v : (
-# 140 "parser_cocci_menhir.mly"
+# 209 "parser_cocci_menhir.mly"
(Ast0_cocci.rule)
-# 23762 "parser_cocci_menhir.ml"
+# 28101 "parser_cocci_menhir.ml"
) =
-# 175 "parser_cocci_menhir.mly"
+# 244 "parser_cocci_menhir.mly"
( p )
-# 23766 "parser_cocci_menhir.ml"
+# 28105 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos_p_ in
let _endpos = _endpos__2_ in
let _v : (
-# 140 "parser_cocci_menhir.mly"
+# 209 "parser_cocci_menhir.mly"
(Ast0_cocci.rule)
-# 23794 "parser_cocci_menhir.ml"
+# 28133 "parser_cocci_menhir.ml"
) =
-# 176 "parser_cocci_menhir.mly"
+# 245 "parser_cocci_menhir.mly"
( p )
-# 23798 "parser_cocci_menhir.ml"
+# 28137 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_plus_start =
-# 1675 "parser_cocci_menhir.mly"
+# 2068 "parser_cocci_menhir.mly"
( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Ty(_1))))] )
-# 23822 "parser_cocci_menhir.ml"
+# 28161 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_plus_start =
-# 1676 "parser_cocci_menhir.mly"
+# 2069 "parser_cocci_menhir.mly"
( [Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.TopInit(_1))))] )
-# 23846 "parser_cocci_menhir.ml"
+# 28185 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_start =
-# 1678 "parser_cocci_menhir.mly"
+# 2071 "parser_cocci_menhir.mly"
( (Ast0.wrap(Ast0.OTHER(_1)))::_2 )
-# 23876 "parser_cocci_menhir.ml"
+# 28215 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_start =
-# 1680 "parser_cocci_menhir.mly"
+# 2073 "parser_cocci_menhir.mly"
( (Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))))::_2 )
-# 23906 "parser_cocci_menhir.ml"
+# 28245 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_start =
-# 1681 "parser_cocci_menhir.mly"
+# 2074 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.DECL(_1))::_2 )
-# 23936 "parser_cocci_menhir.ml"
+# 28275 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_plus_start =
-# 1683 "parser_cocci_menhir.mly"
+# 2076 "parser_cocci_menhir.mly"
( (List.map (function x -> Ast0.wrap(Ast0.OTHER(x))) _1)@_2 )
-# 23966 "parser_cocci_menhir.ml"
+# 28305 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 23987 "parser_cocci_menhir.ml"
+# 28326 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_pnrule =
-# 230 "parser_cocci_menhir.mly"
+# 299 "parser_cocci_menhir.mly"
( Ast.Dep _1 )
-# 23994 "parser_cocci_menhir.ml"
+# 28333 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 24019 "parser_cocci_menhir.ml"
+# 28358 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_pnrule =
-# 231 "parser_cocci_menhir.mly"
+# 300 "parser_cocci_menhir.mly"
( Ast.AntiDep _2 )
-# 24026 "parser_cocci_menhir.ml"
+# 28365 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 24051 "parser_cocci_menhir.ml"
+# 28390 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_pnrule =
-# 232 "parser_cocci_menhir.mly"
+# 301 "parser_cocci_menhir.mly"
( Ast.EverDep _2 )
-# 24058 "parser_cocci_menhir.ml"
+# 28397 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 24083 "parser_cocci_menhir.ml"
+# 28422 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_pnrule =
-# 233 "parser_cocci_menhir.mly"
+# 302 "parser_cocci_menhir.mly"
( Ast.NeverDep _2 )
-# 24090 "parser_cocci_menhir.ml"
+# 28429 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_pnrule =
-# 234 "parser_cocci_menhir.mly"
+# 303 "parser_cocci_menhir.mly"
( _2 )
-# 24122 "parser_cocci_menhir.ml"
+# 28461 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
-# 1303 "parser_cocci_menhir.mly"
+# 1539 "parser_cocci_menhir.mly"
( _1 )
-# 24146 "parser_cocci_menhir.ml"
+# 28485 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _4 : (
-# 102 "parser_cocci_menhir.mly"
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 24182 "parser_cocci_menhir.ml"
+# 28521 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr = Obj.magic _3 in
let _2 : (
-# 102 "parser_cocci_menhir.mly"
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 24188 "parser_cocci_menhir.ml"
+# 28527 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
-# 1305 "parser_cocci_menhir.mly"
+# 1541 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
P.clt2mcode "]" _4)) )
-# 24197 "parser_cocci_menhir.ml"
+# 28536 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_ident = Obj.magic _3 in
+ let _3 : 'tv_mident = Obj.magic _3 in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 24229 "parser_cocci_menhir.ml"
+# 28568 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
-# 1308 "parser_cocci_menhir.mly"
+# 1544 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
-# 24237 "parser_cocci_menhir.ml"
+# 28576 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_ident = Obj.magic _3 in
+ let _3 : 'tv_mident = Obj.magic _3 in
let _2 : (
-# 104 "parser_cocci_menhir.mly"
+# 171 "parser_cocci_menhir.mly"
(Data.clt)
-# 24269 "parser_cocci_menhir.ml"
+# 28608 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
-# 1310 "parser_cocci_menhir.mly"
+# 1546 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
_3)) )
-# 24278 "parser_cocci_menhir.ml"
+# 28617 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 24304 "parser_cocci_menhir.ml"
+# 28643 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
-# 1313 "parser_cocci_menhir.mly"
+# 1549 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
-# 24312 "parser_cocci_menhir.ml"
+# 28651 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 24338 "parser_cocci_menhir.ml"
+# 28677 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
-# 1315 "parser_cocci_menhir.mly"
+# 1551 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
-# 24346 "parser_cocci_menhir.ml"
+# 28685 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _4 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 24382 "parser_cocci_menhir.ml"
+# 28721 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 24388 "parser_cocci_menhir.ml"
+# 28727 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_postfix_expr_eexpr_dot_expressions_ =
-# 1317 "parser_cocci_menhir.mly"
+# 1553 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
_3,
P.clt2mcode ")" _4)) )
-# 24398 "parser_cocci_menhir.ml"
+# 28737 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_postfix_expr_eexpr_invalid_ =
-# 1303 "parser_cocci_menhir.mly"
+# 1539 "parser_cocci_menhir.mly"
( _1 )
-# 24422 "parser_cocci_menhir.ml"
+# 28761 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _4 : (
-# 102 "parser_cocci_menhir.mly"
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 24458 "parser_cocci_menhir.ml"
+# 28797 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr = Obj.magic _3 in
let _2 : (
-# 102 "parser_cocci_menhir.mly"
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 24464 "parser_cocci_menhir.ml"
+# 28803 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_postfix_expr_eexpr_invalid_ =
-# 1305 "parser_cocci_menhir.mly"
+# 1541 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
P.clt2mcode "]" _4)) )
-# 24473 "parser_cocci_menhir.ml"
+# 28812 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_ident = Obj.magic _3 in
+ let _3 : 'tv_mident = Obj.magic _3 in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 24505 "parser_cocci_menhir.ml"
+# 28844 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_postfix_expr_eexpr_invalid_ =
-# 1308 "parser_cocci_menhir.mly"
+# 1544 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
-# 24513 "parser_cocci_menhir.ml"
+# 28852 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_ident = Obj.magic _3 in
+ let _3 : 'tv_mident = Obj.magic _3 in
let _2 : (
-# 104 "parser_cocci_menhir.mly"
+# 171 "parser_cocci_menhir.mly"
(Data.clt)
-# 24545 "parser_cocci_menhir.ml"
+# 28884 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_postfix_expr_eexpr_invalid_ =
-# 1310 "parser_cocci_menhir.mly"
+# 1546 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
_3)) )
-# 24554 "parser_cocci_menhir.ml"
+# 28893 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 24580 "parser_cocci_menhir.ml"
+# 28919 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_postfix_expr_eexpr_invalid_ =
-# 1313 "parser_cocci_menhir.mly"
+# 1549 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
-# 24588 "parser_cocci_menhir.ml"
+# 28927 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 24614 "parser_cocci_menhir.ml"
+# 28953 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_postfix_expr_eexpr_invalid_ =
-# 1315 "parser_cocci_menhir.mly"
+# 1551 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
-# 24622 "parser_cocci_menhir.ml"
+# 28961 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _4 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 24658 "parser_cocci_menhir.ml"
+# 28997 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 24664 "parser_cocci_menhir.ml"
+# 29003 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_postfix_expr_eexpr_invalid_ =
-# 1317 "parser_cocci_menhir.mly"
+# 1553 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
_3,
P.clt2mcode ")" _4)) )
-# 24674 "parser_cocci_menhir.ml"
+# 29013 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
-# 1303 "parser_cocci_menhir.mly"
+# 1539 "parser_cocci_menhir.mly"
( _1 )
-# 24698 "parser_cocci_menhir.ml"
+# 29037 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _4 : (
-# 102 "parser_cocci_menhir.mly"
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 24734 "parser_cocci_menhir.ml"
+# 29073 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr = Obj.magic _3 in
let _2 : (
-# 102 "parser_cocci_menhir.mly"
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 24740 "parser_cocci_menhir.ml"
+# 29079 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
-# 1305 "parser_cocci_menhir.mly"
+# 1541 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
P.clt2mcode "]" _4)) )
-# 24749 "parser_cocci_menhir.ml"
+# 29088 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_ident = Obj.magic _3 in
+ let _3 : 'tv_mident = Obj.magic _3 in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 24781 "parser_cocci_menhir.ml"
+# 29120 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
-# 1308 "parser_cocci_menhir.mly"
+# 1544 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
-# 24789 "parser_cocci_menhir.ml"
+# 29128 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_ident = Obj.magic _3 in
+ let _3 : 'tv_mident = Obj.magic _3 in
let _2 : (
-# 104 "parser_cocci_menhir.mly"
+# 171 "parser_cocci_menhir.mly"
(Data.clt)
-# 24821 "parser_cocci_menhir.ml"
+# 29160 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
-# 1310 "parser_cocci_menhir.mly"
+# 1546 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
_3)) )
-# 24830 "parser_cocci_menhir.ml"
+# 29169 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 24856 "parser_cocci_menhir.ml"
+# 29195 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
-# 1313 "parser_cocci_menhir.mly"
+# 1549 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
-# 24864 "parser_cocci_menhir.ml"
+# 29203 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 24890 "parser_cocci_menhir.ml"
+# 29229 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
-# 1315 "parser_cocci_menhir.mly"
+# 1551 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
-# 24898 "parser_cocci_menhir.ml"
+# 29237 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _4 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 24934 "parser_cocci_menhir.ml"
+# 29273 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 24940 "parser_cocci_menhir.ml"
+# 29279 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_eexpr_nest_expressions_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_postfix_expr_eexpr_nest_expressions_ =
-# 1317 "parser_cocci_menhir.mly"
+# 1553 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
_3,
P.clt2mcode ")" _4)) )
-# 24950 "parser_cocci_menhir.ml"
+# 29289 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_postfix_expr_expr_invalid_ =
-# 1303 "parser_cocci_menhir.mly"
+# 1539 "parser_cocci_menhir.mly"
( _1 )
-# 24974 "parser_cocci_menhir.ml"
+# 29313 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _4 : (
-# 102 "parser_cocci_menhir.mly"
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 25010 "parser_cocci_menhir.ml"
+# 29349 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr = Obj.magic _3 in
let _2 : (
-# 102 "parser_cocci_menhir.mly"
+# 169 "parser_cocci_menhir.mly"
(Data.clt)
-# 25016 "parser_cocci_menhir.ml"
+# 29355 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_postfix_expr_expr_invalid_ =
-# 1305 "parser_cocci_menhir.mly"
+# 1541 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.ArrayAccess (_1,P.clt2mcode "[" _2,_3,
P.clt2mcode "]" _4)) )
-# 25025 "parser_cocci_menhir.ml"
+# 29364 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_ident = Obj.magic _3 in
+ let _3 : 'tv_mident = Obj.magic _3 in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 25057 "parser_cocci_menhir.ml"
+# 29396 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_postfix_expr_expr_invalid_ =
-# 1308 "parser_cocci_menhir.mly"
+# 1544 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.RecordAccess(_1, P.clt2mcode "." _2, _3)) )
-# 25065 "parser_cocci_menhir.ml"
+# 29404 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let _3 : 'tv_ident = Obj.magic _3 in
+ let _3 : 'tv_mident = Obj.magic _3 in
let _2 : (
-# 104 "parser_cocci_menhir.mly"
+# 171 "parser_cocci_menhir.mly"
(Data.clt)
-# 25097 "parser_cocci_menhir.ml"
+# 29436 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_postfix_expr_expr_invalid_ =
-# 1310 "parser_cocci_menhir.mly"
+# 1546 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.RecordPtAccess(_1, P.clt2mcode "->" _2,
_3)) )
-# 25106 "parser_cocci_menhir.ml"
+# 29445 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 25132 "parser_cocci_menhir.ml"
+# 29471 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_postfix_expr_expr_invalid_ =
-# 1313 "parser_cocci_menhir.mly"
+# 1549 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Inc _2)) )
-# 25140 "parser_cocci_menhir.ml"
+# 29479 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 25166 "parser_cocci_menhir.ml"
+# 29505 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_postfix_expr_expr_invalid_ =
-# 1315 "parser_cocci_menhir.mly"
+# 1551 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Postfix (_1, P.clt2mcode Ast.Dec _2)) )
-# 25174 "parser_cocci_menhir.ml"
+# 29513 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _4 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 25210 "parser_cocci_menhir.ml"
+# 29549 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 25216 "parser_cocci_menhir.ml"
+# 29555 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_postfix_expr_expr_invalid_ = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_postfix_expr_expr_invalid_ =
-# 1317 "parser_cocci_menhir.mly"
+# 1553 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.FunCall(_1,P.clt2mcode "(" _2,
_3,
P.clt2mcode ")" _4)) )
-# 25226 "parser_cocci_menhir.ml"
+# 29565 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1322 "parser_cocci_menhir.mly"
+# 1558 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Ident(_1)) )
-# 25250 "parser_cocci_menhir.ml"
+# 29589 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 25271 "parser_cocci_menhir.ml"
+# 29610 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1324 "parser_cocci_menhir.mly"
+# 1560 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
-# 25279 "parser_cocci_menhir.ml"
+# 29618 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 25300 "parser_cocci_menhir.ml"
+# 29639 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1327 "parser_cocci_menhir.mly"
+# 1563 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
-# 25308 "parser_cocci_menhir.ml"
+# 29647 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 25329 "parser_cocci_menhir.ml"
+# 29668 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1330 "parser_cocci_menhir.mly"
+# 1566 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
-# 25337 "parser_cocci_menhir.ml"
+# 29676 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 25358 "parser_cocci_menhir.ml"
+# 29697 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1333 "parser_cocci_menhir.mly"
+# 1569 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
-# 25366 "parser_cocci_menhir.ml"
+# 29705 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 25387 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 29726 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1336 "parser_cocci_menhir.mly"
+# 1572 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
-# 25396 "parser_cocci_menhir.ml"
+# 29735 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 63 "parser_cocci_menhir.mly"
+# 130 "parser_cocci_menhir.mly"
(Parse_aux.expinfo)
-# 25417 "parser_cocci_menhir.ml"
+# 29756 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1340 "parser_cocci_menhir.mly"
+# 1576 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,clt) = _1 in
Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
-# 25425 "parser_cocci_menhir.ml"
+# 29764 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 25446 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 29785 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1343 "parser_cocci_menhir.mly"
+# 1579 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
-# 25455 "parser_cocci_menhir.ml"
+# 29794 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 25476 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 29815 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1347 "parser_cocci_menhir.mly"
+# 1583 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
-# 25485 "parser_cocci_menhir.ml"
+# 29824 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 25506 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 29845 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1351 "parser_cocci_menhir.mly"
+# 1587 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
-# 25515 "parser_cocci_menhir.ml"
+# 29854 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 25546 "parser_cocci_menhir.ml"
+# 29885 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_eexpr = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 25552 "parser_cocci_menhir.ml"
+# 29891 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1355 "parser_cocci_menhir.mly"
+# 1591 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
P.clt2mcode ")" _3)) )
-# 25560 "parser_cocci_menhir.ml"
+# 29899 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 25591 "parser_cocci_menhir.ml"
+# 29930 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 25597 "parser_cocci_menhir.ml"
+# 29936 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1358 "parser_cocci_menhir.mly"
+# 1594 "parser_cocci_menhir.mly"
( let (mids,code) = _2 in
Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
code, mids,
P.clt2mcode ")" _3)) )
-# 25607 "parser_cocci_menhir.ml"
+# 29946 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_dot_expressions_ =
-# 1362 "parser_cocci_menhir.mly"
+# 1598 "parser_cocci_menhir.mly"
( _1 )
-# 25631 "parser_cocci_menhir.ml"
+# 29970 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1322 "parser_cocci_menhir.mly"
+# 1558 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Ident(_1)) )
-# 25655 "parser_cocci_menhir.ml"
+# 29994 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 25676 "parser_cocci_menhir.ml"
+# 30015 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1324 "parser_cocci_menhir.mly"
+# 1560 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
-# 25684 "parser_cocci_menhir.ml"
+# 30023 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 25705 "parser_cocci_menhir.ml"
+# 30044 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1327 "parser_cocci_menhir.mly"
+# 1563 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
-# 25713 "parser_cocci_menhir.ml"
+# 30052 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 25734 "parser_cocci_menhir.ml"
+# 30073 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1330 "parser_cocci_menhir.mly"
+# 1566 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
-# 25742 "parser_cocci_menhir.ml"
+# 30081 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 25763 "parser_cocci_menhir.ml"
+# 30102 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1333 "parser_cocci_menhir.mly"
+# 1569 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
-# 25771 "parser_cocci_menhir.ml"
+# 30110 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 25792 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 30131 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1336 "parser_cocci_menhir.mly"
+# 1572 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
-# 25801 "parser_cocci_menhir.ml"
+# 30140 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 63 "parser_cocci_menhir.mly"
+# 130 "parser_cocci_menhir.mly"
(Parse_aux.expinfo)
-# 25822 "parser_cocci_menhir.ml"
+# 30161 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1340 "parser_cocci_menhir.mly"
+# 1576 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,clt) = _1 in
Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
-# 25830 "parser_cocci_menhir.ml"
+# 30169 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 25851 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 30190 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1343 "parser_cocci_menhir.mly"
+# 1579 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
-# 25860 "parser_cocci_menhir.ml"
+# 30199 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 25881 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 30220 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1347 "parser_cocci_menhir.mly"
+# 1583 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
-# 25890 "parser_cocci_menhir.ml"
+# 30229 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 25911 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 30250 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1351 "parser_cocci_menhir.mly"
+# 1587 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
-# 25920 "parser_cocci_menhir.ml"
+# 30259 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 25951 "parser_cocci_menhir.ml"
+# 30290 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_eexpr = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 25957 "parser_cocci_menhir.ml"
+# 30296 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1355 "parser_cocci_menhir.mly"
+# 1591 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
P.clt2mcode ")" _3)) )
-# 25965 "parser_cocci_menhir.ml"
+# 30304 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 25996 "parser_cocci_menhir.ml"
+# 30335 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 26002 "parser_cocci_menhir.ml"
+# 30341 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1358 "parser_cocci_menhir.mly"
+# 1594 "parser_cocci_menhir.mly"
( let (mids,code) = _2 in
Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
code, mids,
P.clt2mcode ")" _3)) )
-# 26012 "parser_cocci_menhir.ml"
+# 30351 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_invalid_ =
-# 1362 "parser_cocci_menhir.mly"
+# 1598 "parser_cocci_menhir.mly"
( _1 )
-# 26036 "parser_cocci_menhir.ml"
+# 30375 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1322 "parser_cocci_menhir.mly"
+# 1558 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Ident(_1)) )
-# 26060 "parser_cocci_menhir.ml"
+# 30399 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 26081 "parser_cocci_menhir.ml"
+# 30420 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1324 "parser_cocci_menhir.mly"
+# 1560 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
-# 26089 "parser_cocci_menhir.ml"
+# 30428 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 26110 "parser_cocci_menhir.ml"
+# 30449 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1327 "parser_cocci_menhir.mly"
+# 1563 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
-# 26118 "parser_cocci_menhir.ml"
+# 30457 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 26139 "parser_cocci_menhir.ml"
+# 30478 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1330 "parser_cocci_menhir.mly"
+# 1566 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
-# 26147 "parser_cocci_menhir.ml"
+# 30486 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 26168 "parser_cocci_menhir.ml"
+# 30507 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1333 "parser_cocci_menhir.mly"
+# 1569 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
-# 26176 "parser_cocci_menhir.ml"
+# 30515 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 26197 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 30536 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1336 "parser_cocci_menhir.mly"
+# 1572 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
-# 26206 "parser_cocci_menhir.ml"
+# 30545 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 63 "parser_cocci_menhir.mly"
+# 130 "parser_cocci_menhir.mly"
(Parse_aux.expinfo)
-# 26227 "parser_cocci_menhir.ml"
+# 30566 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1340 "parser_cocci_menhir.mly"
+# 1576 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,clt) = _1 in
Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
-# 26235 "parser_cocci_menhir.ml"
+# 30574 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 26256 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 30595 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1343 "parser_cocci_menhir.mly"
+# 1579 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
-# 26265 "parser_cocci_menhir.ml"
+# 30604 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 26286 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 30625 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1347 "parser_cocci_menhir.mly"
+# 1583 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
-# 26295 "parser_cocci_menhir.ml"
+# 30634 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 26316 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 30655 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1351 "parser_cocci_menhir.mly"
+# 1587 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
-# 26325 "parser_cocci_menhir.ml"
+# 30664 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 26356 "parser_cocci_menhir.ml"
+# 30695 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_eexpr = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 26362 "parser_cocci_menhir.ml"
+# 30701 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1355 "parser_cocci_menhir.mly"
+# 1591 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
P.clt2mcode ")" _3)) )
-# 26370 "parser_cocci_menhir.ml"
+# 30709 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 26401 "parser_cocci_menhir.ml"
+# 30740 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_midzero_list_eexpr_eexpr_ = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 26407 "parser_cocci_menhir.ml"
+# 30746 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1358 "parser_cocci_menhir.mly"
+# 1594 "parser_cocci_menhir.mly"
( let (mids,code) = _2 in
Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
code, mids,
P.clt2mcode ")" _3)) )
-# 26417 "parser_cocci_menhir.ml"
+# 30756 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_eexpr_nest_expressions_ =
-# 1362 "parser_cocci_menhir.mly"
+# 1598 "parser_cocci_menhir.mly"
( _1 )
-# 26441 "parser_cocci_menhir.ml"
+# 30780 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1322 "parser_cocci_menhir.mly"
+# 1558 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Ident(_1)) )
-# 26465 "parser_cocci_menhir.ml"
+# 30804 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 26486 "parser_cocci_menhir.ml"
+# 30825 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1324 "parser_cocci_menhir.mly"
+# 1560 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Int x) clt)) )
-# 26494 "parser_cocci_menhir.ml"
+# 30833 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 26515 "parser_cocci_menhir.ml"
+# 30854 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1327 "parser_cocci_menhir.mly"
+# 1563 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Float x) clt)) )
-# 26523 "parser_cocci_menhir.ml"
+# 30862 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 26544 "parser_cocci_menhir.ml"
+# 30883 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1330 "parser_cocci_menhir.mly"
+# 1566 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.String x) clt)) )
-# 26552 "parser_cocci_menhir.ml"
+# 30891 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 26573 "parser_cocci_menhir.ml"
+# 30912 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1333 "parser_cocci_menhir.mly"
+# 1569 "parser_cocci_menhir.mly"
( let (x,clt) = _1 in
Ast0.wrap(Ast0.Constant (P.clt2mcode (Ast.Char x) clt)) )
-# 26581 "parser_cocci_menhir.ml"
+# 30920 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 26602 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 30941 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1336 "parser_cocci_menhir.mly"
+# 1572 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.CONST,pure)) )
-# 26611 "parser_cocci_menhir.ml"
+# 30950 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 63 "parser_cocci_menhir.mly"
+# 130 "parser_cocci_menhir.mly"
(Parse_aux.expinfo)
-# 26632 "parser_cocci_menhir.ml"
+# 30971 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1340 "parser_cocci_menhir.mly"
+# 1576 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,clt) = _1 in
Ast0.wrap(Ast0.MetaErr(P.clt2mcode nm clt,constraints,pure)) )
-# 26640 "parser_cocci_menhir.ml"
+# 30979 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 26661 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 31000 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1343 "parser_cocci_menhir.mly"
+# 1579 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ANY,pure)) )
-# 26670 "parser_cocci_menhir.ml"
+# 31009 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 26691 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 31030 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1347 "parser_cocci_menhir.mly"
+# 1583 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.ID,pure)) )
-# 26700 "parser_cocci_menhir.ml"
+# 31039 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 67 "parser_cocci_menhir.mly"
- (Parse_aux.typed_info)
-# 26721 "parser_cocci_menhir.ml"
+# 134 "parser_cocci_menhir.mly"
+ (Parse_aux.typed_expinfo)
+# 31060 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1351 "parser_cocci_menhir.mly"
+# 1587 "parser_cocci_menhir.mly"
( let (nm,constraints,pure,ty,clt) = _1 in
Ast0.wrap
(Ast0.MetaExpr(P.clt2mcode nm clt,constraints,ty,Ast.LocalID,pure)) )
-# 26730 "parser_cocci_menhir.ml"
+# 31069 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 26761 "parser_cocci_menhir.ml"
+# 31100 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_eexpr = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 26767 "parser_cocci_menhir.ml"
+# 31106 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1355 "parser_cocci_menhir.mly"
+# 1591 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Paren(P.clt2mcode "(" _1,_2,
P.clt2mcode ")" _3)) )
-# 26775 "parser_cocci_menhir.ml"
+# 31114 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 26806 "parser_cocci_menhir.ml"
+# 31145 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_midzero_list_expr_eexpr_ = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 26812 "parser_cocci_menhir.ml"
+# 31151 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1358 "parser_cocci_menhir.mly"
+# 1594 "parser_cocci_menhir.mly"
( let (mids,code) = _2 in
Ast0.wrap(Ast0.DisjExpr(P.clt2mcode "(" _1,
code, mids,
P.clt2mcode ")" _3)) )
-# 26822 "parser_cocci_menhir.ml"
+# 31161 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_primary_expr_expr_invalid_ =
-# 1362 "parser_cocci_menhir.mly"
+# 1598 "parser_cocci_menhir.mly"
( _1 )
-# 26846 "parser_cocci_menhir.ml"
+# 31185 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_pure =
-# 190 "parser_cocci_menhir.mly"
+# 259 "parser_cocci_menhir.mly"
( Ast0.Pure )
-# 26868 "parser_cocci_menhir.ml"
+# 31207 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_pure =
-# 191 "parser_cocci_menhir.mly"
+# 260 "parser_cocci_menhir.mly"
( Ast0.Context )
-# 26890 "parser_cocci_menhir.ml"
+# 31229 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_pure =
-# 192 "parser_cocci_menhir.mly"
+# 261 "parser_cocci_menhir.mly"
( Ast0.PureContext )
-# 26916 "parser_cocci_menhir.ml"
+# 31255 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_pure =
-# 193 "parser_cocci_menhir.mly"
+# 262 "parser_cocci_menhir.mly"
( Ast0.PureContext )
-# 26942 "parser_cocci_menhir.ml"
+# 31281 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
let _v : 'tv_pure =
-# 194 "parser_cocci_menhir.mly"
+# 263 "parser_cocci_menhir.mly"
( Ast0.Impure )
-# 26959 "parser_cocci_menhir.ml"
+# 31298 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 26980 "parser_cocci_menhir.ml"
+# 31319 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_pure_ident =
-# 1376 "parser_cocci_menhir.mly"
+# 1612 "parser_cocci_menhir.mly"
( _1 )
-# 26987 "parser_cocci_menhir.ml"
+# 31326 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_pure_ident = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1382 "parser_cocci_menhir.mly"
- ( (None,P.id2name _1) )
-# 27011 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1615 "parser_cocci_menhir.mly"
+ ( "identifier" )
+# 31348 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_meta_ident = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1383 "parser_cocci_menhir.mly"
- ( _1 )
-# 27035 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1616 "parser_cocci_menhir.mly"
+ ( "expression" )
+# 31370 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1384 "parser_cocci_menhir.mly"
- ( (None, "identifier") )
-# 27057 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1617 "parser_cocci_menhir.mly"
+ ( "statement" )
+# 31392 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1385 "parser_cocci_menhir.mly"
- ( (None, "expression") )
-# 27079 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1618 "parser_cocci_menhir.mly"
+ ( "function" )
+# 31414 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1386 "parser_cocci_menhir.mly"
- ( (None, "statement") )
-# 27101 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1619 "parser_cocci_menhir.mly"
+ ( "local" )
+# 31436 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1387 "parser_cocci_menhir.mly"
- ( (None, "function") )
-# 27123 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1620 "parser_cocci_menhir.mly"
+ ( "type" )
+# 31458 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1388 "parser_cocci_menhir.mly"
- ( (None, "local") )
-# 27145 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1621 "parser_cocci_menhir.mly"
+ ( "parameter" )
+# 31480 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1389 "parser_cocci_menhir.mly"
- ( (None, "type") )
-# 27167 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1622 "parser_cocci_menhir.mly"
+ ( "idexpression" )
+# 31502 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1390 "parser_cocci_menhir.mly"
- ( (None, "parameter") )
-# 27189 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1623 "parser_cocci_menhir.mly"
+ ( "initialiser" )
+# 31524 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1391 "parser_cocci_menhir.mly"
- ( (None, "idexpression") )
-# 27211 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1624 "parser_cocci_menhir.mly"
+ ( "list" )
+# 31546 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1392 "parser_cocci_menhir.mly"
- ( (None, "initialiser") )
-# 27233 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1625 "parser_cocci_menhir.mly"
+ ( "fresh" )
+# 31568 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1393 "parser_cocci_menhir.mly"
- ( (None, "list") )
-# 27255 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1626 "parser_cocci_menhir.mly"
+ ( "constant" )
+# 31590 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1394 "parser_cocci_menhir.mly"
- ( (None, "fresh") )
-# 27277 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1627 "parser_cocci_menhir.mly"
+ ( "error" )
+# 31612 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1395 "parser_cocci_menhir.mly"
- ( (None, "constant") )
-# 27299 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1628 "parser_cocci_menhir.mly"
+ ( "words" )
+# 31634 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1396 "parser_cocci_menhir.mly"
- ( (None, "error") )
-# 27321 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1629 "parser_cocci_menhir.mly"
+ ( "pure" )
+# 31656 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1397 "parser_cocci_menhir.mly"
- ( (None, "words") )
-# 27343 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1630 "parser_cocci_menhir.mly"
+ ( "context" )
+# 31678 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1398 "parser_cocci_menhir.mly"
- ( (None, "pure") )
-# 27365 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1631 "parser_cocci_menhir.mly"
+ ( "generated" )
+# 31700 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1399 "parser_cocci_menhir.mly"
- ( (None, "context") )
-# 27387 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1632 "parser_cocci_menhir.mly"
+ ( "typedef" )
+# 31722 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1400 "parser_cocci_menhir.mly"
- ( (None, "generated") )
-# 27409 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1633 "parser_cocci_menhir.mly"
+ ( "declarer" )
+# 31744 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1401 "parser_cocci_menhir.mly"
- ( (None, "typedef") )
-# 27431 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1634 "parser_cocci_menhir.mly"
+ ( "iterator" )
+# 31766 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident =
-# 1402 "parser_cocci_menhir.mly"
- ( (None, "declarer") )
-# 27453 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_kwd =
+# 1635 "parser_cocci_menhir.mly"
+ ( "name" )
+# 31788 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_pure_ident_kwd =
+# 1636 "parser_cocci_menhir.mly"
+ ( "position" )
+# 31810 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
+ let _1 : 'tv_pure_ident = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_pure_ident_or_meta_ident =
-# 1403 "parser_cocci_menhir.mly"
- ( (None, "iterator") )
-# 27475 "parser_cocci_menhir.ml"
+# 1643 "parser_cocci_menhir.mly"
+ ( (None,P.id2name _1) )
+# 31834 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
+ let _1 : 'tv_pure_ident_kwd = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_pure_ident_or_meta_ident =
-# 1404 "parser_cocci_menhir.mly"
- ( (None, "name") )
-# 27497 "parser_cocci_menhir.ml"
+# 1644 "parser_cocci_menhir.mly"
+ ( (None,_1) )
+# 31858 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
+ let _1 : 'tv_meta_ident = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_pure_ident_or_meta_ident =
-# 1405 "parser_cocci_menhir.mly"
- ( (None, "position") )
-# 27519 "parser_cocci_menhir.ml"
+# 1645 "parser_cocci_menhir.mly"
+ ( _1 )
+# 31882 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = l;
- MenhirLib.EngineTypes.startp = _startpos_l_;
- MenhirLib.EngineTypes.endp = _endpos_l_;
+ MenhirLib.EngineTypes.semv = optc;
+ MenhirLib.EngineTypes.startp = _startpos_optc_;
+ MenhirLib.EngineTypes.endp = _endpos_optc_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.semv = i;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let l : 'tv_loption_not_ceq_ = Obj.magic l in
+ let optc : 'tv_option_not_ceq_or_sub_ = Obj.magic optc in
let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
let _startpos = _startpos_i_ in
- let _endpos = _endpos_l_ in
- let _v : 'tv_pure_ident_or_meta_ident_with_not_eq_not_ceq_ =
-# 1424 "parser_cocci_menhir.mly"
- ( (i,l) )
-# 27549 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_optc_ in
+ let _v : 'tv_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub_ =
+# 1672 "parser_cocci_menhir.mly"
+ (
+ match optc with
+ None -> (i, Ast0.NoConstraint)
+ | Some c -> (i, c)
+ )
+# 31916 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = optc;
+ MenhirLib.EngineTypes.startp = _startpos_optc_;
+ MenhirLib.EngineTypes.endp = _endpos_optc_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = i;
+ MenhirLib.EngineTypes.startp = _startpos_i_;
+ MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let optc : 'tv_option_re_or_not_eqe_or_sub_ = Obj.magic optc in
+ let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
+ let _startpos = _startpos_i_ in
+ let _endpos = _endpos_optc_ in
+ let _v : 'tv_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub_ =
+# 1672 "parser_cocci_menhir.mly"
+ (
+ match optc with
+ None -> (i, Ast0.NoConstraint)
+ | Some c -> (i, c)
+ )
+# 31950 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = c;
+ MenhirLib.EngineTypes.startp = _startpos_c_;
+ MenhirLib.EngineTypes.endp = _endpos_c_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = i;
+ MenhirLib.EngineTypes.startp = _startpos_i_;
+ MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let c : 'tv_option_re_or_not_eqid_ = Obj.magic c in
+ let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
+ let _startpos = _startpos_i_ in
+ let _endpos = _endpos_c_ in
+ let _v : 'tv_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid_ =
+# 1697 "parser_cocci_menhir.mly"
+ (
+ match c with
+ None -> (i, Ast.IdNoConstraint)
+ | Some constraint_ -> (i,constraint_)
+ )
+# 31984 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = c;
+ MenhirLib.EngineTypes.startp = _startpos_c_;
+ MenhirLib.EngineTypes.endp = _endpos_c_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = i;
+ MenhirLib.EngineTypes.startp = _startpos_i_;
+ MenhirLib.EngineTypes.endp = _endpos_i_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let c : 'tv_option_re_or_not_eqid_ = Obj.magic c in
+ let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
+ let _startpos = _startpos_i_ in
+ let _endpos = _endpos_c_ in
+ let _v : 'tv_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid_ =
+# 1680 "parser_cocci_menhir.mly"
+ (
+ Common.Left
+ (match c with
+ None -> (i, Ast.IdNoConstraint)
+ | Some constraint_ -> (i,constraint_))
+ )
+# 32019 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_pure_ident = Obj.magic _3 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid_ =
+# 1687 "parser_cocci_menhir.mly"
+ (
+ let nm = P.id2name _3 in
+ Iteration.parsed_virtual_identifiers :=
+ Common.union_set [nm]
+ !Iteration.parsed_virtual_identifiers;
+ Common.Right nm
+ )
+# 32057 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_pure_ident_or_meta_ident = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_pure_ident_or_meta_ident_with_seed =
+# 1648 "parser_cocci_menhir.mly"
+ ( (_1,Ast.NoVal) )
+# 32081 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _3 : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ = Obj.magic _3 in
+ let _1 : 'tv_pure_ident_or_meta_ident = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__3_ in
+ let _v : 'tv_pure_ident_or_meta_ident_with_seed =
+# 1651 "parser_cocci_menhir.mly"
+ ( match _3 with
+ [Ast.SeedString s] -> (_1,Ast.StringSeed s)
+ | _ -> (_1,Ast.ListSeed _3) )
+# 32117 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let l : 'tv_loption_not_eq_ = Obj.magic l in
+ let l : 'tv_loption_not_pos_ = Obj.magic l in
let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
let _startpos = _startpos_i_ in
let _endpos = _endpos_l_ in
- let _v : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eq_ =
-# 1424 "parser_cocci_menhir.mly"
- ( (i,l) )
-# 27579 "parser_cocci_menhir.ml"
+ let _v : 'tv_pure_ident_or_meta_ident_with_x_eq_not_pos_ =
+# 1666 "parser_cocci_menhir.mly"
+ (
+ (i, l)
+ )
+# 32149 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = l;
- MenhirLib.EngineTypes.startp = _startpos_l_;
- MenhirLib.EngineTypes.endp = _endpos_l_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = i;
- MenhirLib.EngineTypes.startp = _startpos_i_;
- MenhirLib.EngineTypes.endp = _endpos_i_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = re;
+ MenhirLib.EngineTypes.startp = _startpos_re_;
+ MenhirLib.EngineTypes.endp = _endpos_re_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let l : 'tv_loption_not_eqe_ = Obj.magic l in
- let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
- let _startpos = _startpos_i_ in
- let _endpos = _endpos_l_ in
- let _v : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eqe_ =
-# 1424 "parser_cocci_menhir.mly"
- ( (i,l) )
-# 27609 "parser_cocci_menhir.ml"
+ let re : 'tv_regexp_eqid = Obj.magic re in
+ let _startpos = _startpos_re_ in
+ let _endpos = _endpos_re_ in
+ let _v : 'tv_re_or_not_eqe_or_sub =
+# 1758 "parser_cocci_menhir.mly"
+ (Ast0.NotIdCstrt re)
+# 32173 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = l;
- MenhirLib.EngineTypes.startp = _startpos_l_;
- MenhirLib.EngineTypes.endp = _endpos_l_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = i;
- MenhirLib.EngineTypes.startp = _startpos_i_;
- MenhirLib.EngineTypes.endp = _endpos_i_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ne;
+ MenhirLib.EngineTypes.startp = _startpos_ne_;
+ MenhirLib.EngineTypes.endp = _endpos_ne_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let l : 'tv_loption_not_pos_ = Obj.magic l in
- let i : 'tv_pure_ident_or_meta_ident = Obj.magic i in
- let _startpos = _startpos_i_ in
- let _endpos = _endpos_l_ in
- let _v : 'tv_pure_ident_or_meta_ident_with_not_eq_not_pos_ =
-# 1424 "parser_cocci_menhir.mly"
- ( (i,l) )
-# 27639 "parser_cocci_menhir.ml"
+ let ne : 'tv_not_eqe = Obj.magic ne in
+ let _startpos = _startpos_ne_ in
+ let _endpos = _endpos_ne_ in
+ let _v : 'tv_re_or_not_eqe_or_sub =
+# 1759 "parser_cocci_menhir.mly"
+ (Ast0.NotExpCstrt ne)
+# 32197 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = s;
+ MenhirLib.EngineTypes.startp = _startpos_s_;
+ MenhirLib.EngineTypes.endp = _endpos_s_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_pure_ident_or_meta_ident = Obj.magic _1 in
+ let s : 'tv_sub = Obj.magic s in
+ let _startpos = _startpos_s_ in
+ let _endpos = _endpos_s_ in
+ let _v : 'tv_re_or_not_eqe_or_sub =
+# 1760 "parser_cocci_menhir.mly"
+ (Ast0.SubExpCstrt s)
+# 32221 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = re;
+ MenhirLib.EngineTypes.startp = _startpos_re_;
+ MenhirLib.EngineTypes.endp = _endpos_re_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let re : 'tv_regexp_eqid = Obj.magic re in
+ let _startpos = _startpos_re_ in
+ let _endpos = _endpos_re_ in
+ let _v : 'tv_re_or_not_eqid =
+# 1704 "parser_cocci_menhir.mly"
+ (Ast.IdRegExpConstraint re)
+# 32245 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ne;
+ MenhirLib.EngineTypes.startp = _startpos_ne_;
+ MenhirLib.EngineTypes.endp = _endpos_ne_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let ne : 'tv_not_eqid = Obj.magic ne in
+ let _startpos = _startpos_ne_ in
+ let _endpos = _endpos_ne_ in
+ let _v : 'tv_re_or_not_eqid =
+# 1705 "parser_cocci_menhir.mly"
+ (ne)
+# 32269 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = re;
+ MenhirLib.EngineTypes.startp = _startpos_re_;
+ MenhirLib.EngineTypes.endp = _endpos_re_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let re : (
+# 154 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 32294 "parser_cocci_menhir.ml"
+ ) = Obj.magic re in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_pure_ident_or_meta_ident_with_seed =
-# 1408 "parser_cocci_menhir.mly"
- ( (_1,Ast.NoVal) )
-# 27663 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_re_ in
+ let _v : 'tv_regexp_eqid =
+# 1709 "parser_cocci_menhir.mly"
+ ( (if !Data.in_iso
+ then failwith "constraints not allowed in iso file");
+ (if !Data.in_generating
+ then failwith "constraints not allowed in a generated rule file");
+ let (s,_) = re in Ast.IdRegExp (s,Str.regexp s)
+ )
+# 32306 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = re;
+ MenhirLib.EngineTypes.startp = _startpos_re_;
+ MenhirLib.EngineTypes.endp = _endpos_re_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _3 : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ = Obj.magic _3 in
- let _1 : 'tv_pure_ident_or_meta_ident = Obj.magic _1 in
+ let re : (
+# 154 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 32331 "parser_cocci_menhir.ml"
+ ) = Obj.magic re in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__3_ in
- let _v : 'tv_pure_ident_or_meta_ident_with_seed =
-# 1411 "parser_cocci_menhir.mly"
- ( match _3 with
- [Ast.SeedString s] -> (_1,Ast.StringSeed s)
- | _ -> (_1,Ast.ListSeed _3) )
-# 27699 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_re_ in
+ let _v : 'tv_regexp_eqid =
+# 1716 "parser_cocci_menhir.mly"
+ ( (if !Data.in_iso
+ then failwith "constraints not allowed in iso file");
+ (if !Data.in_generating
+ then failwith "constraints not allowed in a generated rule file");
+ let (s,_) = re in Ast.IdNotRegExp (s,Str.regexp s)
+ )
+# 32343 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
let _v : (
-# 131 "parser_cocci_menhir.mly"
+# 200 "parser_cocci_menhir.mly"
(unit)
-# 27716 "parser_cocci_menhir.ml"
+# 32360 "parser_cocci_menhir.ml"
) =
-# 172 "parser_cocci_menhir.mly"
+# 241 "parser_cocci_menhir.mly"
( )
-# 27720 "parser_cocci_menhir.ml"
+# 32364 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_rule_elem_statement =
-# 893 "parser_cocci_menhir.mly"
+# 1085 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Decl((Ast0.default_info(),Ast0.context_befaft()),_1)) )
-# 27744 "parser_cocci_menhir.ml"
+# 32388 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 27770 "parser_cocci_menhir.ml"
+# 32414 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_expr = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_rule_elem_statement =
-# 894 "parser_cocci_menhir.mly"
+# 1086 "parser_cocci_menhir.mly"
( P.exp_stm _1 _2 )
-# 27778 "parser_cocci_menhir.ml"
+# 32422 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 27809 "parser_cocci_menhir.ml"
+# 32453 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_eexpr = Obj.magic _2 in
let _1 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 27815 "parser_cocci_menhir.ml"
+# 32459 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_rule_elem_statement =
-# 895 "parser_cocci_menhir.mly"
+# 1087 "parser_cocci_menhir.mly"
( P.ret_exp _1 _2 _3 )
-# 27822 "parser_cocci_menhir.ml"
+# 32466 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 27848 "parser_cocci_menhir.ml"
+# 32492 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 27853 "parser_cocci_menhir.ml"
+# 32497 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_rule_elem_statement =
-# 896 "parser_cocci_menhir.mly"
+# 1088 "parser_cocci_menhir.mly"
( P.ret _1 _2 )
-# 27860 "parser_cocci_menhir.ml"
+# 32504 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 27886 "parser_cocci_menhir.ml"
+# 32530 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 27891 "parser_cocci_menhir.ml"
+# 32535 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_rule_elem_statement =
-# 897 "parser_cocci_menhir.mly"
+# 1089 "parser_cocci_menhir.mly"
( P.break _1 _2 )
-# 27898 "parser_cocci_menhir.ml"
+# 32542 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 27924 "parser_cocci_menhir.ml"
+# 32568 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 27929 "parser_cocci_menhir.ml"
+# 32573 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_rule_elem_statement =
-# 898 "parser_cocci_menhir.mly"
+# 1090 "parser_cocci_menhir.mly"
( P.cont _1 _2 )
-# 27936 "parser_cocci_menhir.ml"
+# 32580 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 27967 "parser_cocci_menhir.ml"
+# 32611 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_midzero_list_rule_elem_statement_rule_elem_statement_ = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 27973 "parser_cocci_menhir.ml"
+# 32617 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_rule_elem_statement =
-# 900 "parser_cocci_menhir.mly"
+# 1092 "parser_cocci_menhir.mly"
( let (mids,code) = _2 in
Ast0.wrap
(Ast0.Disj(P.clt2mcode "(" _1,
List.map (function x -> Ast0.wrap(Ast0.DOTS([x]))) code,
mids, P.clt2mcode ")" _3)) )
-# 27984 "parser_cocci_menhir.ml"
+# 32628 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__7_ in
let _v : (
-# 153 "parser_cocci_menhir.mly"
+# 222 "parser_cocci_menhir.mly"
(Ast_cocci.rulename)
-# 28040 "parser_cocci_menhir.ml"
+# 32684 "parser_cocci_menhir.ml"
) = let nm =
# 39 "standard.mly"
( None )
-# 28045 "parser_cocci_menhir.ml"
+# 32689 "parser_cocci_menhir.ml"
in
-# 202 "parser_cocci_menhir.mly"
+# 271 "parser_cocci_menhir.mly"
( P.make_cocci_rule_name_result nm d i a e ee )
-# 28051 "parser_cocci_menhir.ml"
+# 32695 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos_x0_ in
let _endpos = _endpos__8_ in
let _v : (
-# 153 "parser_cocci_menhir.mly"
+# 222 "parser_cocci_menhir.mly"
(Ast_cocci.rulename)
-# 28113 "parser_cocci_menhir.ml"
+# 32757 "parser_cocci_menhir.ml"
) = let nm =
let x = x0 in
# 41 "standard.mly"
( Some x )
-# 28119 "parser_cocci_menhir.ml"
+# 32763 "parser_cocci_menhir.ml"
in
-# 202 "parser_cocci_menhir.mly"
+# 271 "parser_cocci_menhir.mly"
( P.make_cocci_rule_name_result nm d i a e ee )
-# 28125 "parser_cocci_menhir.ml"
+# 32769 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__8_ in
let _v : (
-# 153 "parser_cocci_menhir.mly"
+# 222 "parser_cocci_menhir.mly"
(Ast_cocci.rulename)
-# 28185 "parser_cocci_menhir.ml"
+# 32829 "parser_cocci_menhir.ml"
) =
-# 207 "parser_cocci_menhir.mly"
+# 276 "parser_cocci_menhir.mly"
( P.make_generated_rule_name_result None d i a e ee )
-# 28189 "parser_cocci_menhir.ml"
+# 32833 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = lang;
+ MenhirLib.EngineTypes.startp = _startpos_lang_;
+ MenhirLib.EngineTypes.endp = _endpos_lang_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let d : 'tv_depends = Obj.magic d in
+ let lang : 'tv_pure_ident = Obj.magic lang in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__5_ in
+ let _v : (
+# 222 "parser_cocci_menhir.mly"
+ (Ast_cocci.rulename)
+# 32875 "parser_cocci_menhir.ml"
+ ) = let nm =
+
+# 39 "standard.mly"
+ ( None )
+# 32880 "parser_cocci_menhir.ml"
+
+ in
+
+# 278 "parser_cocci_menhir.mly"
+ ( P.make_script_rule_name_result lang nm d )
+# 32886 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = lang;
+ MenhirLib.EngineTypes.startp = _startpos_lang_;
+ MenhirLib.EngineTypes.endp = _endpos_lang_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let d : 'tv_depends = Obj.magic d in
+ let x0 : 'tv_pure_ident = Obj.magic x0 in
+ let lang : 'tv_pure_ident = Obj.magic lang in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__6_ in
+ let _v : (
+# 222 "parser_cocci_menhir.mly"
+ (Ast_cocci.rulename)
+# 32934 "parser_cocci_menhir.ml"
+ ) = let nm =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 32940 "parser_cocci_menhir.ml"
+
+ in
+
+# 278 "parser_cocci_menhir.mly"
+ ( P.make_script_rule_name_result lang nm d )
+# 32946 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = lang;
+ MenhirLib.EngineTypes.startp = _startpos_lang_;
+ MenhirLib.EngineTypes.endp = _endpos_lang_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let d : 'tv_depends = Obj.magic d in
+ let lang : 'tv_pure_ident = Obj.magic lang in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__5_ in
+ let _v : (
+# 222 "parser_cocci_menhir.mly"
+ (Ast_cocci.rulename)
+# 32988 "parser_cocci_menhir.ml"
+ ) =
+# 280 "parser_cocci_menhir.mly"
+ ( P.make_initial_script_rule_name_result lang d )
+# 32992 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__5_ in
let _v : (
-# 153 "parser_cocci_menhir.mly"
+# 222 "parser_cocci_menhir.mly"
(Ast_cocci.rulename)
-# 28231 "parser_cocci_menhir.ml"
+# 33034 "parser_cocci_menhir.ml"
) =
-# 209 "parser_cocci_menhir.mly"
- ( P.make_script_rule_name_result lang d )
-# 28235 "parser_cocci_menhir.ml"
+# 282 "parser_cocci_menhir.mly"
+ ( P.make_final_script_rule_name_result lang d )
+# 33038 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = lang;
- MenhirLib.EngineTypes.startp = _startpos_lang_;
- MenhirLib.EngineTypes.endp = _endpos_lang_;
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = py;
+ MenhirLib.EngineTypes.startp = _startpos_py_;
+ MenhirLib.EngineTypes.endp = _endpos_py_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let py : 'tv_pure_ident = Obj.magic py in
+ let _startpos = _startpos_py_ in
+ let _endpos = _endpos__2_ in
+ let _v : (
+# 228 "parser_cocci_menhir.mly"
+ ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 33066 "parser_cocci_menhir.ml"
+ ) =
+# 2267 "parser_cocci_menhir.mly"
+ ( ((Some (P.id2name py), None), None) )
+# 33070 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = py;
+ MenhirLib.EngineTypes.startp = _startpos_py_;
+ MenhirLib.EngineTypes.endp = _endpos_py_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_script_name_decl = Obj.magic _2 in
+ let py : 'tv_pure_ident = Obj.magic py in
+ let _startpos = _startpos_py_ in
+ let _endpos = _endpos__3_ in
+ let _v : (
+# 228 "parser_cocci_menhir.mly"
+ ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 33104 "parser_cocci_menhir.ml"
+ ) =
+# 2269 "parser_cocci_menhir.mly"
+ ( ((Some (P.id2name py), None), Some _2) )
+# 33108 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.startp = _startpos__7_;
+ MenhirLib.EngineTypes.endp = _endpos__7_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _6;
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = ast;
+ MenhirLib.EngineTypes.startp = _startpos_ast_;
+ MenhirLib.EngineTypes.endp = _endpos_ast_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
};
};
};
} = _menhir_stack in
- let lang : 'tv_pure_ident = Obj.magic lang in
+ let _6 : 'tv_script_name_decl = Obj.magic _6 in
+ let ast : 'tv_pure_ident = Obj.magic ast in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__4_ in
+ let _endpos = _endpos__7_ in
let _v : (
-# 153 "parser_cocci_menhir.mly"
- (Ast_cocci.rulename)
-# 28271 "parser_cocci_menhir.ml"
+# 228 "parser_cocci_menhir.mly"
+ ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 33158 "parser_cocci_menhir.ml"
) =
-# 211 "parser_cocci_menhir.mly"
- ( P.make_initial_script_rule_name_result lang )
-# 28275 "parser_cocci_menhir.ml"
+# 2271 "parser_cocci_menhir.mly"
+ ( ((None, Some (P.id2name ast)), Some _6) )
+# 33162 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.startp = _startpos__7_;
+ MenhirLib.EngineTypes.endp = _endpos__7_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = lang;
- MenhirLib.EngineTypes.startp = _startpos_lang_;
- MenhirLib.EngineTypes.endp = _endpos_lang_;
+ MenhirLib.EngineTypes.semv = _6;
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = str;
+ MenhirLib.EngineTypes.startp = _startpos_str_;
+ MenhirLib.EngineTypes.endp = _endpos_str_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
};
};
};
} = _menhir_stack in
- let lang : 'tv_pure_ident = Obj.magic lang in
+ let _6 : 'tv_script_name_decl = Obj.magic _6 in
+ let str : 'tv_pure_ident = Obj.magic str in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__4_ in
+ let _endpos = _endpos__7_ in
let _v : (
-# 153 "parser_cocci_menhir.mly"
- (Ast_cocci.rulename)
-# 28311 "parser_cocci_menhir.ml"
+# 228 "parser_cocci_menhir.mly"
+ ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 33212 "parser_cocci_menhir.ml"
) =
-# 213 "parser_cocci_menhir.mly"
- ( P.make_final_script_rule_name_result lang )
-# 28315 "parser_cocci_menhir.ml"
+# 2273 "parser_cocci_menhir.mly"
+ ( ((Some (P.id2name str), None), Some _6) )
+# 33216 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.startp = _startpos__6_;
- MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.startp = _startpos__7_;
+ MenhirLib.EngineTypes.endp = _endpos__7_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = cocci;
- MenhirLib.EngineTypes.startp = _startpos_cocci_;
- MenhirLib.EngineTypes.endp = _endpos_cocci_;
+ MenhirLib.EngineTypes.semv = _6;
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = ast;
+ MenhirLib.EngineTypes.startp = _startpos_ast_;
+ MenhirLib.EngineTypes.endp = _endpos_ast_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = py;
- MenhirLib.EngineTypes.startp = _startpos_py_;
- MenhirLib.EngineTypes.endp = _endpos_py_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = str;
+ MenhirLib.EngineTypes.startp = _startpos_str_;
+ MenhirLib.EngineTypes.endp = _endpos_str_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
};
};
};
} = _menhir_stack in
- let cocci : 'tv_pure_ident = Obj.magic cocci in
- let _3 : (
-# 47 "parser_cocci_menhir.mly"
- (string)
-# 28359 "parser_cocci_menhir.ml"
- ) = Obj.magic _3 in
- let py : 'tv_pure_ident = Obj.magic py in
- let _startpos = _startpos_py_ in
- let _endpos = _endpos__6_ in
+ let _6 : 'tv_script_name_decl = Obj.magic _6 in
+ let ast : 'tv_pure_ident = Obj.magic ast in
+ let str : 'tv_pure_ident = Obj.magic str in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__7_ in
let _v : (
-# 159 "parser_cocci_menhir.mly"
- (string * (string * string))
-# 28367 "parser_cocci_menhir.ml"
+# 228 "parser_cocci_menhir.mly"
+ ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 33268 "parser_cocci_menhir.ml"
) =
-# 1890 "parser_cocci_menhir.mly"
- ( (P.id2name py, (_3, P.id2name cocci)) )
-# 28371 "parser_cocci_menhir.ml"
+# 2275 "parser_cocci_menhir.mly"
+ ( ((Some (P.id2name str), Some (P.id2name ast)), Some _6) )
+# 33272 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = cocci;
+ MenhirLib.EngineTypes.startp = _startpos_cocci_;
+ MenhirLib.EngineTypes.endp = _endpos_cocci_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ } = _menhir_stack in
+ let cocci : 'tv_pure_ident = Obj.magic cocci in
+ let _2 : (
+# 112 "parser_cocci_menhir.mly"
+ (string)
+# 33307 "parser_cocci_menhir.ml"
+ ) = Obj.magic _2 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_cocci_ in
+ let _v : 'tv_script_name_decl =
+# 2279 "parser_cocci_menhir.mly"
+ ( let nm = P.id2name cocci in
+ let mv = Parse_aux.lookup _2 nm in
+ ((_2, nm), mv) )
+# 33316 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = cocci;
+ MenhirLib.EngineTypes.startp = _startpos_cocci_;
+ MenhirLib.EngineTypes.endp = _endpos_cocci_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ } = _menhir_stack in
+ let cocci : 'tv_pure_ident = Obj.magic cocci in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos_cocci_ in
+ let _v : 'tv_script_name_decl =
+# 2283 "parser_cocci_menhir.mly"
+ ( let nm = P.id2name cocci in
+ Iteration.parsed_virtual_identifiers :=
+ Common.union_set [nm]
+ !Iteration.parsed_virtual_identifiers;
+ let name = ("virtual", nm) in
+ let mv = Ast.MetaIdDecl(Ast.NONE,name) in
+ (name,mv) )
+# 33358 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 28392 "parser_cocci_menhir.ml"
+# 33379 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_seed_elem =
-# 1416 "parser_cocci_menhir.mly"
+# 1656 "parser_cocci_menhir.mly"
( let (x,_) = _1 in Ast.SeedString x )
-# 28399 "parser_cocci_menhir.ml"
+# 33386 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 61 "parser_cocci_menhir.mly"
+# 128 "parser_cocci_menhir.mly"
(Parse_aux.idinfo)
-# 28420 "parser_cocci_menhir.ml"
+# 33407 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_seed_elem =
-# 1417 "parser_cocci_menhir.mly"
+# 1657 "parser_cocci_menhir.mly"
( let (x,_,_,_) = _1 in Ast.SeedId x )
-# 28427 "parser_cocci_menhir.ml"
+# 33414 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_seed_elem =
+# 1658 "parser_cocci_menhir.mly"
+ (failwith "tmeta")
+# 33436 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _3 : 'tv_pure_ident = Obj.magic _3 in
let _1 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 28458 "parser_cocci_menhir.ml"
+# 33467 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_seed_elem =
-# 1419 "parser_cocci_menhir.mly"
+# 1660 "parser_cocci_menhir.mly"
( let nm = (_1,P.id2name _3) in
P.check_meta(Ast.MetaIdDecl(Ast.NONE,nm));
Ast.SeedId nm )
-# 28467 "parser_cocci_menhir.ml"
+# 33476 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let x : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 28488 "parser_cocci_menhir.ml"
+# 33497 "parser_cocci_menhir.ml"
) = Obj.magic x in
let _startpos = _startpos_x_ in
let _endpos = _endpos_x_ in
let _v : 'tv_separated_nonempty_list_TComma_TString_ =
# 144 "standard.mly"
( [ x ] )
-# 28495 "parser_cocci_menhir.ml"
+# 33504 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let xs : 'tv_separated_nonempty_list_TComma_TString_ = Obj.magic xs in
let x : (
-# 87 "parser_cocci_menhir.mly"
+# 154 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 28526 "parser_cocci_menhir.ml"
+# 33535 "parser_cocci_menhir.ml"
) = Obj.magic x in
let _startpos = _startpos_x_ in
let _endpos = _endpos_xs_ in
let _v : 'tv_separated_nonempty_list_TComma_TString_ =
# 146 "standard.mly"
( x :: xs )
-# 28533 "parser_cocci_menhir.ml"
+# 33542 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_any_strict_ =
# 144 "standard.mly"
( [ x ] )
-# 28557 "parser_cocci_menhir.ml"
+# 33566 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_any_strict_ =
# 146 "standard.mly"
( x :: xs )
-# 28591 "parser_cocci_menhir.ml"
+# 33600 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_ctype_ =
# 144 "standard.mly"
( [ x ] )
-# 28615 "parser_cocci_menhir.ml"
+# 33624 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_ctype_ =
# 146 "standard.mly"
( x :: xs )
-# 28649 "parser_cocci_menhir.ml"
+# 33658 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_d_ident_ =
# 144 "standard.mly"
( [ x ] )
-# 28673 "parser_cocci_menhir.ml"
+# 33682 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_d_ident_ =
# 146 "standard.mly"
( x :: xs )
-# 28707 "parser_cocci_menhir.ml"
+# 33716 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ =
# 144 "standard.mly"
( [ x ] )
-# 28731 "parser_cocci_menhir.ml"
+# 33740 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_ident_or_const_ =
# 146 "standard.mly"
( x :: xs )
-# 28765 "parser_cocci_menhir.ml"
+# 33774 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ =
# 144 "standard.mly"
( [ x ] )
-# 28789 "parser_cocci_menhir.ml"
+# 33798 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_meta_ident_ =
# 146 "standard.mly"
( x :: xs )
-# 28823 "parser_cocci_menhir.ml"
+# 33832 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ =
# 144 "standard.mly"
( [ x ] )
-# 28847 "parser_cocci_menhir.ml"
+# 33856 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_pure_ident_ =
# 146 "standard.mly"
( x :: xs )
-# 28881 "parser_cocci_menhir.ml"
+# 33890 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ =
# 144 "standard.mly"
( [ x ] )
-# 28905 "parser_cocci_menhir.ml"
+# 33914 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_ =
# 146 "standard.mly"
( x :: xs )
-# 28939 "parser_cocci_menhir.ml"
+# 33948 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_ceq_ = Obj.magic x in
+ let x : 'tv_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub_ = Obj.magic x in
let _startpos = _startpos_x_ in
let _endpos = _endpos_x_ in
- let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_ceq__ =
+ let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ =
# 144 "standard.mly"
( [ x ] )
-# 28963 "parser_cocci_menhir.ml"
+# 33972 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_ceq__ = Obj.magic xs in
- let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_ceq_ = Obj.magic x in
+ let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ = Obj.magic xs in
+ let x : 'tv_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub_ = Obj.magic x in
let _startpos = _startpos_x_ in
let _endpos = _endpos_xs_ in
- let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_ceq__ =
+ let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_not_ceq_or_sub__ =
# 146 "standard.mly"
( x :: xs )
-# 28997 "parser_cocci_menhir.ml"
+# 34006 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eq_ = Obj.magic x in
+ let x : 'tv_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub_ = Obj.magic x in
let _startpos = _startpos_x_ in
let _endpos = _endpos_x_ in
- let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eq__ =
+ let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ =
# 144 "standard.mly"
( [ x ] )
-# 29021 "parser_cocci_menhir.ml"
+# 34030 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eq__ = Obj.magic xs in
- let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eq_ = Obj.magic x in
+ let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ = Obj.magic xs in
+ let x : 'tv_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub_ = Obj.magic x in
let _startpos = _startpos_x_ in
let _endpos = _endpos_xs_ in
- let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eq__ =
+ let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_econstraint_re_or_not_eqe_or_sub__ =
# 146 "standard.mly"
( x :: xs )
-# 29055 "parser_cocci_menhir.ml"
+# 34064 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eqe_ = Obj.magic x in
+ let x : 'tv_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid_ = Obj.magic x in
let _startpos = _startpos_x_ in
let _endpos = _endpos_x_ in
- let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eqe__ =
+ let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ =
# 144 "standard.mly"
( [ x ] )
-# 29079 "parser_cocci_menhir.ml"
+# 34088 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eqe__ = Obj.magic xs in
- let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_eqe_ = Obj.magic x in
+ let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ = Obj.magic xs in
+ let x : 'tv_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid_ = Obj.magic x in
let _startpos = _startpos_x_ in
let _endpos = _endpos_xs_ in
- let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_eqe__ =
+ let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_re_or_not_eqid__ =
# 146 "standard.mly"
( x :: xs )
-# 29113 "parser_cocci_menhir.ml"
+# 34122 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos_x_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_pos_ = Obj.magic x in
+ let x : 'tv_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid_ = Obj.magic x in
let _startpos = _startpos_x_ in
let _endpos = _endpos_x_ in
- let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_pos__ =
+ let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ =
# 144 "standard.mly"
( [ x ] )
-# 29137 "parser_cocci_menhir.ml"
+# 34146 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
};
} = _menhir_stack in
- let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_pos__ = Obj.magic xs in
- let x : 'tv_pure_ident_or_meta_ident_with_not_eq_not_pos_ = Obj.magic x in
+ let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ = Obj.magic xs in
+ let x : 'tv_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid_ = Obj.magic x in
let _startpos = _startpos_x_ in
let _endpos = _endpos_xs_ in
- let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_not_eq_not_pos__ =
+ let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_idconstraint_virt_re_or_not_eqid__ =
# 146 "standard.mly"
( x :: xs )
-# 29171 "parser_cocci_menhir.ml"
+# 34180 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_seed_ =
# 144 "standard.mly"
( [ x ] )
-# 29195 "parser_cocci_menhir.ml"
+# 34204 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_seed_ =
# 146 "standard.mly"
( x :: xs )
-# 29229 "parser_cocci_menhir.ml"
+# 34238 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let x : 'tv_pure_ident_or_meta_ident_with_x_eq_not_pos_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_x_ in
+ let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_x_eq_not_pos__ =
+# 144 "standard.mly"
+ ( [ x ] )
+# 34262 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = xs;
+ MenhirLib.EngineTypes.startp = _startpos_xs_;
+ MenhirLib.EngineTypes.endp = _endpos_xs_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x;
+ MenhirLib.EngineTypes.startp = _startpos_x_;
+ MenhirLib.EngineTypes.endp = _endpos_x_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let xs : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_x_eq_not_pos__ = Obj.magic xs in
+ let x : 'tv_pure_ident_or_meta_ident_with_x_eq_not_pos_ = Obj.magic x in
+ let _startpos = _startpos_x_ in
+ let _endpos = _endpos_xs_ in
+ let _v : 'tv_separated_nonempty_list_TComma_pure_ident_or_meta_ident_with_x_eq_not_pos__ =
+# 146 "standard.mly"
+ ( x :: xs )
+# 34296 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_typedef_ident_ =
# 144 "standard.mly"
( [ x ] )
-# 29253 "parser_cocci_menhir.ml"
+# 34320 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TComma_typedef_ident_ =
# 146 "standard.mly"
( x :: xs )
-# 29287 "parser_cocci_menhir.ml"
+# 34354 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ =
# 144 "standard.mly"
( [ x ] )
-# 29311 "parser_cocci_menhir.ml"
+# 34378 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _v : 'tv_separated_nonempty_list_TCppConcatOp_seed_elem_ =
# 146 "standard.mly"
( x :: xs )
-# 29345 "parser_cocci_menhir.ml"
+# 34412 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_single_statement =
-# 908 "parser_cocci_menhir.mly"
+# 1100 "parser_cocci_menhir.mly"
( _1 )
-# 29369 "parser_cocci_menhir.ml"
+# 34436 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 29400 "parser_cocci_menhir.ml"
+# 34467 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_midzero_list_statement_statement_ = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 29406 "parser_cocci_menhir.ml"
+# 34473 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_single_statement =
-# 912 "parser_cocci_menhir.mly"
+# 1104 "parser_cocci_menhir.mly"
( let (mids,code) = _2 in
Ast0.wrap
(Ast0.Disj(P.clt2mcode "(" _1,
List.map (function x -> Ast0.wrap(Ast0.DOTS([x]))) code,
mids, P.clt2mcode ")" _3)) )
-# 29417 "parser_cocci_menhir.ml"
+# 34484 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_statement =
-# 835 "parser_cocci_menhir.mly"
+# 1026 "parser_cocci_menhir.mly"
( _1 )
-# 29441 "parser_cocci_menhir.ml"
+# 34508 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 64 "parser_cocci_menhir.mly"
+# 132 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 29462 "parser_cocci_menhir.ml"
+# 34529 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_statement =
-# 837 "parser_cocci_menhir.mly"
+# 1027 "parser_cocci_menhir.mly"
+ ( tmeta_to_statement _1)
+# 34536 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 131 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 34557 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_statement =
+# 1029 "parser_cocci_menhir.mly"
( P.meta_stm _1 )
-# 29469 "parser_cocci_menhir.ml"
+# 34564 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 29495 "parser_cocci_menhir.ml"
+# 34590 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_expr = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_statement =
-# 839 "parser_cocci_menhir.mly"
+# 1031 "parser_cocci_menhir.mly"
( P.exp_stm _1 _2 )
-# 29503 "parser_cocci_menhir.ml"
+# 34598 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _5 : 'tv_single_statement = Obj.magic _5 in
let _4 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 29545 "parser_cocci_menhir.ml"
+# 34640 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 29551 "parser_cocci_menhir.ml"
+# 34646 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 29556 "parser_cocci_menhir.ml"
+# 34651 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__5_ in
let _v : 'tv_statement =
-# 841 "parser_cocci_menhir.mly"
+# 1033 "parser_cocci_menhir.mly"
( P.ifthen _1 _2 _3 _4 _5 )
-# 29563 "parser_cocci_menhir.ml"
+# 34658 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _7 : 'tv_single_statement = Obj.magic _7 in
let _6 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 29615 "parser_cocci_menhir.ml"
+# 34710 "parser_cocci_menhir.ml"
) = Obj.magic _6 in
let _5 : 'tv_single_statement = Obj.magic _5 in
let _4 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 29621 "parser_cocci_menhir.ml"
+# 34716 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 29627 "parser_cocci_menhir.ml"
+# 34722 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 29632 "parser_cocci_menhir.ml"
+# 34727 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__7_ in
let _v : 'tv_statement =
-# 843 "parser_cocci_menhir.mly"
+# 1035 "parser_cocci_menhir.mly"
( P.ifthenelse _1 _2 _3 _4 _5 _6 _7 )
-# 29639 "parser_cocci_menhir.ml"
+# 34734 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _9 : 'tv_single_statement = Obj.magic _9 in
let _8 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 29701 "parser_cocci_menhir.ml"
+# 34796 "parser_cocci_menhir.ml"
) = Obj.magic _8 in
let _7 : 'tv_option_eexpr_ = Obj.magic _7 in
let _6 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 29707 "parser_cocci_menhir.ml"
+# 34802 "parser_cocci_menhir.ml"
) = Obj.magic _6 in
let _5 : 'tv_option_eexpr_ = Obj.magic _5 in
let _4 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 29713 "parser_cocci_menhir.ml"
+# 34808 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_option_eexpr_ = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 29719 "parser_cocci_menhir.ml"
+# 34814 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 29724 "parser_cocci_menhir.ml"
+# 34819 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__9_ in
let _v : 'tv_statement =
-# 846 "parser_cocci_menhir.mly"
+# 1038 "parser_cocci_menhir.mly"
( P.forloop _1 _2 _3 _4 _5 _6 _7 _8 _9 )
-# 29731 "parser_cocci_menhir.ml"
+# 34826 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _5 : 'tv_single_statement = Obj.magic _5 in
let _4 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 29773 "parser_cocci_menhir.ml"
+# 34868 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 29779 "parser_cocci_menhir.ml"
+# 34874 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 29784 "parser_cocci_menhir.ml"
+# 34879 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__5_ in
let _v : 'tv_statement =
-# 848 "parser_cocci_menhir.mly"
+# 1040 "parser_cocci_menhir.mly"
( P.whileloop _1 _2 _3 _4 _5 )
-# 29791 "parser_cocci_menhir.ml"
+# 34886 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _7 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 29842 "parser_cocci_menhir.ml"
+# 34937 "parser_cocci_menhir.ml"
) = Obj.magic _7 in
let _6 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 29847 "parser_cocci_menhir.ml"
+# 34942 "parser_cocci_menhir.ml"
) = Obj.magic _6 in
let _5 : 'tv_eexpr = Obj.magic _5 in
let _4 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 29853 "parser_cocci_menhir.ml"
+# 34948 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 29858 "parser_cocci_menhir.ml"
+# 34953 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_single_statement = Obj.magic _2 in
let _1 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 29864 "parser_cocci_menhir.ml"
+# 34959 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__7_ in
let _v : 'tv_statement =
-# 850 "parser_cocci_menhir.mly"
+# 1042 "parser_cocci_menhir.mly"
( P.doloop _1 _2 _3 _4 _5 _6 _7 )
-# 29871 "parser_cocci_menhir.ml"
+# 34966 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let _5 : 'tv_single_statement = Obj.magic _5 in
let _4 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 29913 "parser_cocci_menhir.ml"
+# 35008 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr_list_option = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 29919 "parser_cocci_menhir.ml"
+# 35014 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : 'tv_iter_ident = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__5_ in
let _v : 'tv_statement =
-# 852 "parser_cocci_menhir.mly"
+# 1044 "parser_cocci_menhir.mly"
( P.iterator _1 _2 _3 _4 _5 )
-# 29927 "parser_cocci_menhir.ml"
+# 35022 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _7;
- MenhirLib.EngineTypes.startp = _startpos__7_;
- MenhirLib.EngineTypes.endp = _endpos__7_;
+ MenhirLib.EngineTypes.semv = _8;
+ MenhirLib.EngineTypes.startp = _startpos__8_;
+ MenhirLib.EngineTypes.endp = _endpos__8_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _6;
- MenhirLib.EngineTypes.startp = _startpos__6_;
- MenhirLib.EngineTypes.endp = _endpos__6_;
+ MenhirLib.EngineTypes.semv = _7;
+ MenhirLib.EngineTypes.startp = _startpos__7_;
+ MenhirLib.EngineTypes.endp = _endpos__7_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _5;
- MenhirLib.EngineTypes.startp = _startpos__5_;
- MenhirLib.EngineTypes.endp = _endpos__5_;
+ MenhirLib.EngineTypes.semv = _6;
+ MenhirLib.EngineTypes.startp = _startpos__6_;
+ MenhirLib.EngineTypes.endp = _endpos__6_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _4;
- MenhirLib.EngineTypes.startp = _startpos__4_;
- MenhirLib.EngineTypes.endp = _endpos__4_;
+ MenhirLib.EngineTypes.semv = _5;
+ MenhirLib.EngineTypes.startp = _startpos__5_;
+ MenhirLib.EngineTypes.endp = _endpos__5_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _3;
- MenhirLib.EngineTypes.startp = _startpos__3_;
- MenhirLib.EngineTypes.endp = _endpos__3_;
+ MenhirLib.EngineTypes.semv = _4;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = _3;
+ MenhirLib.EngineTypes.startp = _startpos__3_;
+ MenhirLib.EngineTypes.endp = _endpos__3_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
};
};
};
};
};
} = _menhir_stack in
- let _7 : (
-# 101 "parser_cocci_menhir.mly"
+ let _8 : (
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 29978 "parser_cocci_menhir.ml"
- ) = Obj.magic _7 in
- let _6 : 'tv_list_case_line_ = Obj.magic _6 in
+# 35078 "parser_cocci_menhir.ml"
+ ) = Obj.magic _8 in
+ let _7 : 'tv_list_case_line_ = Obj.magic _7 in
+ let _6 : 'tv_list_decl_var_ = Obj.magic _6 in
let _5 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 29984 "parser_cocci_menhir.ml"
+# 35085 "parser_cocci_menhir.ml"
) = Obj.magic _5 in
let _4 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 29989 "parser_cocci_menhir.ml"
+# 35090 "parser_cocci_menhir.ml"
) = Obj.magic _4 in
let _3 : 'tv_eexpr = Obj.magic _3 in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 29995 "parser_cocci_menhir.ml"
+# 35096 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 30000 "parser_cocci_menhir.ml"
+# 35101 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__7_ in
+ let _endpos = _endpos__8_ in
let _v : 'tv_statement =
-# 854 "parser_cocci_menhir.mly"
- ( P.switch _1 _2 _3 _4 _5 _6 _7 )
-# 30007 "parser_cocci_menhir.ml"
+# 1046 "parser_cocci_menhir.mly"
+ ( P.switch _1 _2 _3 _4 _5 (List.concat _6) _7 _8 )
+# 35108 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 30038 "parser_cocci_menhir.ml"
+# 35139 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_eexpr = Obj.magic _2 in
let _1 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 30044 "parser_cocci_menhir.ml"
+# 35145 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_statement =
-# 855 "parser_cocci_menhir.mly"
+# 1047 "parser_cocci_menhir.mly"
( P.ret_exp _1 _2 _3 )
-# 30051 "parser_cocci_menhir.ml"
+# 35152 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 30077 "parser_cocci_menhir.ml"
+# 35178 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : (
-# 57 "parser_cocci_menhir.mly"
+# 123 "parser_cocci_menhir.mly"
(Data.clt)
-# 30082 "parser_cocci_menhir.ml"
+# 35183 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_statement =
-# 856 "parser_cocci_menhir.mly"
+# 1048 "parser_cocci_menhir.mly"
( P.ret _1 _2 )
-# 30089 "parser_cocci_menhir.ml"
+# 35190 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 30115 "parser_cocci_menhir.ml"
+# 35216 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 30120 "parser_cocci_menhir.ml"
+# 35221 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_statement =
-# 857 "parser_cocci_menhir.mly"
+# 1049 "parser_cocci_menhir.mly"
( P.break _1 _2 )
-# 30127 "parser_cocci_menhir.ml"
+# 35228 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 30153 "parser_cocci_menhir.ml"
+# 35254 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
let _1 : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 30158 "parser_cocci_menhir.ml"
+# 35259 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_statement =
-# 858 "parser_cocci_menhir.mly"
+# 1050 "parser_cocci_menhir.mly"
( P.cont _1 _2 )
-# 30165 "parser_cocci_menhir.ml"
+# 35266 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 30191 "parser_cocci_menhir.ml"
+# 35292 "parser_cocci_menhir.ml"
) = Obj.magic _2 in
- let _1 : 'tv_ident = Obj.magic _1 in
+ let _1 : 'tv_mident = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_statement =
-# 859 "parser_cocci_menhir.mly"
- ( P.label _1 _2 )
-# 30199 "parser_cocci_menhir.ml"
+# 1051 "parser_cocci_menhir.mly"
+ ( P.label _1 _2 )
+# 35300 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 30230 "parser_cocci_menhir.ml"
+# 35331 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
- let _2 : 'tv_ident = Obj.magic _2 in
+ let _2 : 'tv_mident = Obj.magic _2 in
let _1 : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 30236 "parser_cocci_menhir.ml"
+# 35337 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_statement =
-# 860 "parser_cocci_menhir.mly"
- ( P.goto _1 _2 _3 )
-# 30243 "parser_cocci_menhir.ml"
+# 1052 "parser_cocci_menhir.mly"
+ ( P.goto _1 _2 _3 )
+# 35344 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 30274 "parser_cocci_menhir.ml"
+# 35375 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_fun_start = Obj.magic _2 in
let _1 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 30280 "parser_cocci_menhir.ml"
+# 35381 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_statement =
-# 862 "parser_cocci_menhir.mly"
+# 1054 "parser_cocci_menhir.mly"
( P.seq _1 _2 _3 )
-# 30287 "parser_cocci_menhir.ml"
+# 35388 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let w : 'tv_list_whenppdecs_ = Obj.magic w in
let _1 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 30314 "parser_cocci_menhir.ml"
+# 35415 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos_w_ in
let _v : 'tv_stm_dots =
-# 866 "parser_cocci_menhir.mly"
+# 1058 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Dots(P.clt2mcode "..." _1, List.concat w)) )
-# 30321 "parser_cocci_menhir.ml"
+# 35422 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let c : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 30357 "parser_cocci_menhir.ml"
+# 35458 "parser_cocci_menhir.ml"
) = Obj.magic c in
let b : 'tv_nest_start = Obj.magic b in
let w : 'tv_list_whenppdecs_ = Obj.magic w in
let _1 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 30364 "parser_cocci_menhir.ml"
+# 35465 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos_c_ in
let _v : 'tv_stm_dots =
-# 868 "parser_cocci_menhir.mly"
+# 1060 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." _1, b,
P.clt2mcode "...>" c, List.concat w, false)) )
-# 30372 "parser_cocci_menhir.ml"
+# 35473 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let c : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 30408 "parser_cocci_menhir.ml"
+# 35509 "parser_cocci_menhir.ml"
) = Obj.magic c in
let b : 'tv_nest_start = Obj.magic b in
let w : 'tv_list_whenppdecs_ = Obj.magic w in
let _1 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 30415 "parser_cocci_menhir.ml"
+# 35516 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos_c_ in
let _v : 'tv_stm_dots =
-# 871 "parser_cocci_menhir.mly"
+# 1063 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." _1, b,
P.clt2mcode "...+>" c, List.concat w, true)) )
-# 30423 "parser_cocci_menhir.ml"
+# 35524 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let s : (
-# 53 "parser_cocci_menhir.mly"
+# 119 "parser_cocci_menhir.mly"
(Data.clt)
-# 30444 "parser_cocci_menhir.ml"
+# 35545 "parser_cocci_menhir.ml"
) = Obj.magic s in
let _startpos = _startpos_s_ in
let _endpos = _endpos_s_ in
let _v : 'tv_storage =
-# 797 "parser_cocci_menhir.mly"
+# 987 "parser_cocci_menhir.mly"
( P.clt2mcode Ast.Static s )
-# 30451 "parser_cocci_menhir.ml"
+# 35552 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let s : (
-# 53 "parser_cocci_menhir.mly"
+# 119 "parser_cocci_menhir.mly"
(Data.clt)
-# 30472 "parser_cocci_menhir.ml"
+# 35573 "parser_cocci_menhir.ml"
) = Obj.magic s in
let _startpos = _startpos_s_ in
let _endpos = _endpos_s_ in
let _v : 'tv_storage =
-# 798 "parser_cocci_menhir.mly"
+# 988 "parser_cocci_menhir.mly"
( P.clt2mcode Ast.Auto s )
-# 30479 "parser_cocci_menhir.ml"
+# 35580 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let s : (
-# 53 "parser_cocci_menhir.mly"
+# 119 "parser_cocci_menhir.mly"
(Data.clt)
-# 30500 "parser_cocci_menhir.ml"
+# 35601 "parser_cocci_menhir.ml"
) = Obj.magic s in
let _startpos = _startpos_s_ in
let _endpos = _endpos_s_ in
let _v : 'tv_storage =
-# 799 "parser_cocci_menhir.mly"
+# 989 "parser_cocci_menhir.mly"
( P.clt2mcode Ast.Register s )
-# 30507 "parser_cocci_menhir.ml"
+# 35608 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let s : (
-# 53 "parser_cocci_menhir.mly"
+# 119 "parser_cocci_menhir.mly"
(Data.clt)
-# 30528 "parser_cocci_menhir.ml"
+# 35629 "parser_cocci_menhir.ml"
) = Obj.magic s in
let _startpos = _startpos_s_ in
let _endpos = _endpos_s_ in
let _v : 'tv_storage =
-# 800 "parser_cocci_menhir.mly"
+# 990 "parser_cocci_menhir.mly"
( P.clt2mcode Ast.Extern s )
-# 30535 "parser_cocci_menhir.ml"
+# 35636 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_struct_decl =
+# 705 "parser_cocci_menhir.mly"
+ ( [] )
+# 35658 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
+ let _1 : 'tv_struct_decl_one = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_struct_decl =
-# 555 "parser_cocci_menhir.mly"
- ( [] )
-# 30557 "parser_cocci_menhir.ml"
+# 706 "parser_cocci_menhir.mly"
+ ( [_1] )
+# 35682 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_struct_decl_list_start = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_struct_decl_list =
+# 729 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.DOTS(_1)) )
+# 35706 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_struct_decl = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_struct_decl_list_start =
+# 732 "parser_cocci_menhir.mly"
+ ( _1 )
+# 35730 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_struct_decl_list_start = Obj.magic _2 in
+ let _1 : 'tv_struct_decl = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_struct_decl_list_start =
+# 733 "parser_cocci_menhir.mly"
+ ( _1@_2 )
+# 35760 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = r;
+ MenhirLib.EngineTypes.startp = _startpos_r_;
+ MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = d;
+ MenhirLib.EngineTypes.startp = _startpos_d_;
+ MenhirLib.EngineTypes.endp = _endpos_d_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let r : 'tv_continue_struct_decl_list = Obj.magic r in
+ let d : 'tv_edots_when_TEllipsis_struct_decl_one_ = Obj.magic d in
+ let _startpos = _startpos_d_ in
+ let _endpos = _endpos_r_ in
+ let _v : 'tv_struct_decl_list_start =
+# 735 "parser_cocci_menhir.mly"
+ ( (P.mkddots_one "..." d)::r )
+# 35790 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 35811 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_struct_decl_one =
+# 709 "parser_cocci_menhir.mly"
+ ( P.meta_field _1 )
+# 35818 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 35839 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_struct_decl_one =
+# 710 "parser_cocci_menhir.mly"
+ ( tmeta_to_field _1 )
+# 35846 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 30588 "parser_cocci_menhir.ml"
+# 35877 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_d_ident = Obj.magic d in
let t : 'tv_ctype = Obj.magic t in
let _startpos = _startpos_t_ in
let _endpos = _endpos_pv_ in
- let _v : 'tv_struct_decl =
-# 557 "parser_cocci_menhir.mly"
+ let _v : 'tv_struct_decl_one =
+# 712 "parser_cocci_menhir.mly"
( let (id,fn) = d in
- [Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv))] )
-# 30598 "parser_cocci_menhir.ml"
+ Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv)) )
+# 35887 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 30659 "parser_cocci_menhir.ml"
+# 35948 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let rp2 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 30664 "parser_cocci_menhir.ml"
+# 35953 "parser_cocci_menhir.ml"
) = Obj.magic rp2 in
let p : 'tv_decl_list_name_opt_decl_ = Obj.magic p in
let lp2 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 30670 "parser_cocci_menhir.ml"
+# 35959 "parser_cocci_menhir.ml"
) = Obj.magic lp2 in
let rp1 : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 30675 "parser_cocci_menhir.ml"
+# 35964 "parser_cocci_menhir.ml"
) = Obj.magic rp1 in
let d : 'tv_d_ident = Obj.magic d in
let st : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 30681 "parser_cocci_menhir.ml"
+# 35970 "parser_cocci_menhir.ml"
) = Obj.magic st in
let lp1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 30686 "parser_cocci_menhir.ml"
+# 35975 "parser_cocci_menhir.ml"
) = Obj.magic lp1 in
let t : 'tv_ctype = Obj.magic t in
let _startpos = _startpos_t_ in
let _endpos = _endpos_pv_ in
- let _v : 'tv_struct_decl =
-# 561 "parser_cocci_menhir.mly"
+ let _v : 'tv_struct_decl_one =
+# 716 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let t =
Ast0.wrap
(Ast0.FunctionPointer
(t,P.clt2mcode "(" lp1,P.clt2mcode "*" st,P.clt2mcode ")" rp1,
P.clt2mcode "(" lp2,p,P.clt2mcode ")" rp2)) in
- [Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv))] )
-# 30700 "parser_cocci_menhir.ml"
+ Ast0.wrap(Ast0.UnInit(None,fn t,id,P.clt2mcode ";" pv)) )
+# 35989 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 30731 "parser_cocci_menhir.ml"
+# 36020 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
let _startpos = _startpos_i_ in
let _endpos = _endpos_pv_ in
- let _v : 'tv_struct_decl = let cv =
+ let _v : 'tv_struct_decl_one = let cv =
# 39 "standard.mly"
( None )
-# 30741 "parser_cocci_menhir.ml"
+# 36030 "parser_cocci_menhir.ml"
in
-# 569 "parser_cocci_menhir.mly"
+# 724 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
- [Ast0.wrap(Ast0.UnInit(None,fn idtype,id,P.clt2mcode ";" pv))] )
-# 30749 "parser_cocci_menhir.ml"
+ Ast0.wrap(Ast0.UnInit(None,fn idtype,id,P.clt2mcode ";" pv)) )
+# 36038 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let pv : (
-# 107 "parser_cocci_menhir.mly"
+# 174 "parser_cocci_menhir.mly"
(Data.clt)
-# 30785 "parser_cocci_menhir.ml"
+# 36074 "parser_cocci_menhir.ml"
) = Obj.magic pv in
let d : 'tv_d_ident = Obj.magic d in
let i : 'tv_pure_ident = Obj.magic i in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let _endpos = _endpos_pv_ in
- let _v : 'tv_struct_decl = let cv =
+ let _v : 'tv_struct_decl_one = let cv =
let x = x0 in
# 41 "standard.mly"
( Some x )
-# 30797 "parser_cocci_menhir.ml"
+# 36086 "parser_cocci_menhir.ml"
in
-# 569 "parser_cocci_menhir.mly"
+# 724 "parser_cocci_menhir.mly"
( let (id,fn) = d in
let idtype = P.make_cv cv (Ast0.wrap (Ast0.TypeName(P.id2mcode i))) in
- [Ast0.wrap(Ast0.UnInit(None,fn idtype,id,P.clt2mcode ";" pv))] )
-# 30805 "parser_cocci_menhir.ml"
+ Ast0.wrap(Ast0.UnInit(None,fn idtype,id,P.clt2mcode ";" pv)) )
+# 36094 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = s;
+ MenhirLib.EngineTypes.startp = _startpos_s_;
+ MenhirLib.EngineTypes.endp = _endpos_s_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_struct_decl_list_start = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_struct_decl_list =
-# 574 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.DOTS(_1)) )
-# 30829 "parser_cocci_menhir.ml"
+ let s : (
+# 116 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 36115 "parser_cocci_menhir.ml"
+ ) = Obj.magic s in
+ let _startpos = _startpos_s_ in
+ let _endpos = _endpos_s_ in
+ let _v : 'tv_struct_or_union =
+# 701 "parser_cocci_menhir.mly"
+ ( P.clt2mcode Ast.Struct s )
+# 36122 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
- MenhirLib.EngineTypes.startp = _startpos__1_;
- MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.semv = u;
+ MenhirLib.EngineTypes.startp = _startpos_u_;
+ MenhirLib.EngineTypes.endp = _endpos_u_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
- let _1 : 'tv_struct_decl = Obj.magic _1 in
- let _startpos = _startpos__1_ in
- let _endpos = _endpos__1_ in
- let _v : 'tv_struct_decl_list_start =
-# 577 "parser_cocci_menhir.mly"
- ( _1 )
-# 30853 "parser_cocci_menhir.ml"
+ let u : (
+# 116 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 36143 "parser_cocci_menhir.ml"
+ ) = Obj.magic u in
+ let _startpos = _startpos_u_ in
+ let _endpos = _endpos_u_ in
+ let _v : 'tv_struct_or_union =
+# 702 "parser_cocci_menhir.mly"
+ ( P.clt2mcode Ast.Union u )
+# 36150 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = _2;
- MenhirLib.EngineTypes.startp = _startpos__2_;
- MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.semv = i;
+ MenhirLib.EngineTypes.startp = _startpos_i_;
+ MenhirLib.EngineTypes.endp = _endpos_i_;
MenhirLib.EngineTypes.next = {
MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = _1;
MenhirLib.EngineTypes.startp = _startpos__1_;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_struct_decl_list_start = Obj.magic _2 in
- let _1 : 'tv_struct_decl = Obj.magic _1 in
+ let i : 'tv_meta_ident = Obj.magic i in
let _startpos = _startpos__1_ in
- let _endpos = _endpos__2_ in
- let _v : 'tv_struct_decl_list_start =
-# 578 "parser_cocci_menhir.mly"
- ( _1@_2 )
-# 30883 "parser_cocci_menhir.ml"
+ let _endpos = _endpos_i_ in
+ let _v : 'tv_sub =
+# 1804 "parser_cocci_menhir.mly"
+ ( (if !Data.in_iso
+ then failwith "constraints not allowed in iso file");
+ (if !Data.in_generating
+ then failwith "constraints not allowed in a generated rule file");
+ let i =
+ P.check_inherited_constraint i
+ (function mv -> Ast.MetaExpDecl(Ast.NONE,mv,None)) in
+ [i] )
+# 36185 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
(fun _menhir_env ->
let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
let {
- MenhirLib.EngineTypes.semv = r;
- MenhirLib.EngineTypes.startp = _startpos_r_;
- MenhirLib.EngineTypes.endp = _endpos_r_;
+ MenhirLib.EngineTypes.startp = _startpos__4_;
+ MenhirLib.EngineTypes.endp = _endpos__4_;
MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = d;
- MenhirLib.EngineTypes.startp = _startpos_d_;
- MenhirLib.EngineTypes.endp = _endpos_d_;
- MenhirLib.EngineTypes.next = _menhir_stack;
+ MenhirLib.EngineTypes.semv = l;
+ MenhirLib.EngineTypes.startp = _startpos_l_;
+ MenhirLib.EngineTypes.endp = _endpos_l_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
};
} = _menhir_stack in
- let r : 'tv_continue_struct_decl_list = Obj.magic r in
- let d : 'tv_edots_when_TEllipsis_struct_decl_ = Obj.magic d in
- let _startpos = _startpos_d_ in
- let _endpos = _endpos_r_ in
- let _v : 'tv_struct_decl_list_start =
-# 580 "parser_cocci_menhir.mly"
- ( (P.mkddots "..." d)::r )
-# 30913 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = s;
- MenhirLib.EngineTypes.startp = _startpos_s_;
- MenhirLib.EngineTypes.endp = _endpos_s_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let s : (
-# 50 "parser_cocci_menhir.mly"
- (Data.clt)
-# 30934 "parser_cocci_menhir.ml"
- ) = Obj.magic s in
- let _startpos = _startpos_s_ in
- let _endpos = _endpos_s_ in
- let _v : 'tv_struct_or_union =
-# 551 "parser_cocci_menhir.mly"
- ( P.clt2mcode Ast.Struct s )
-# 30941 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = u;
- MenhirLib.EngineTypes.startp = _startpos_u_;
- MenhirLib.EngineTypes.endp = _endpos_u_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- } = _menhir_stack in
- let u : (
-# 50 "parser_cocci_menhir.mly"
- (Data.clt)
-# 30962 "parser_cocci_menhir.ml"
- ) = Obj.magic u in
- let _startpos = _startpos_u_ in
- let _endpos = _endpos_u_ in
- let _v : 'tv_struct_or_union =
-# 552 "parser_cocci_menhir.mly"
- ( P.clt2mcode Ast.Union u )
-# 30969 "parser_cocci_menhir.ml"
+ let l : 'tv_comma_list_meta_ident_ = Obj.magic l in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__4_ in
+ let _v : 'tv_sub =
+# 1813 "parser_cocci_menhir.mly"
+ ( (if !Data.in_iso
+ then failwith "constraints not allowed in iso file");
+ (if !Data.in_generating
+ then failwith "constraints not allowed in a generated rule file");
+ List.map
+ (function i ->
+ P.check_inherited_constraint i
+ (function mv -> Ast.MetaExpDecl(Ast.NONE,mv,None)))
+ l)
+# 36229 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_top_eexpr =
-# 1190 "parser_cocci_menhir.mly"
+# 1371 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.OTHER(Ast0.wrap(Ast0.Exp(_1)))) )
-# 30993 "parser_cocci_menhir.ml"
+# 36253 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let _3 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 31024 "parser_cocci_menhir.ml"
+# 36284 "parser_cocci_menhir.ml"
) = Obj.magic _3 in
let _2 : 'tv_initialize_list = Obj.magic _2 in
let _1 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 31030 "parser_cocci_menhir.ml"
+# 36290 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_top_init =
-# 1668 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3)) )
-# 31037 "parser_cocci_menhir.ml"
+# 2056 "parser_cocci_menhir.mly"
+ ( if P.struct_initializer _2
+ then
+ let il = P.drop_dot_commas _2 in
+ Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,il,P.clt2mcode "}" _3,false))
+ else
+ Ast0.wrap(Ast0.InitList(P.clt2mcode "{" _1,_2,P.clt2mcode "}" _3,true)) )
+# 36302 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
let _v : 'tv_toplevel_after_dots =
-# 1656 "parser_cocci_menhir.mly"
+# 2044 "parser_cocci_menhir.mly"
([])
-# 31054 "parser_cocci_menhir.ml"
+# 36319 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_after_dots =
-# 1657 "parser_cocci_menhir.mly"
+# 2045 "parser_cocci_menhir.mly"
(_2)
-# 31082 "parser_cocci_menhir.ml"
+# 36347 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_after_dots =
-# 1658 "parser_cocci_menhir.mly"
+# 2046 "parser_cocci_menhir.mly"
((Ast0.wrap(Ast0.Exp(_1)))::_2)
-# 31112 "parser_cocci_menhir.ml"
+# 36377 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_after_dots =
-# 1659 "parser_cocci_menhir.mly"
+# 2047 "parser_cocci_menhir.mly"
(_1@_2)
-# 31142 "parser_cocci_menhir.ml"
+# 36407 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_after_dots_init =
-# 1647 "parser_cocci_menhir.mly"
+# 2035 "parser_cocci_menhir.mly"
(_2)
-# 31170 "parser_cocci_menhir.ml"
+# 36435 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_after_dots_init =
-# 1648 "parser_cocci_menhir.mly"
+# 2036 "parser_cocci_menhir.mly"
((Ast0.wrap(Ast0.Exp(_1)))::_2)
-# 31200 "parser_cocci_menhir.ml"
+# 36465 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_after_dots_init =
-# 1649 "parser_cocci_menhir.mly"
+# 2037 "parser_cocci_menhir.mly"
(_1@_2)
-# 31230 "parser_cocci_menhir.ml"
+# 36495 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
let _v : 'tv_toplevel_after_exp =
-# 1652 "parser_cocci_menhir.mly"
+# 2040 "parser_cocci_menhir.mly"
([])
-# 31247 "parser_cocci_menhir.ml"
+# 36512 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_after_exp =
-# 1653 "parser_cocci_menhir.mly"
+# 2041 "parser_cocci_menhir.mly"
(_1::_2)
-# 31277 "parser_cocci_menhir.ml"
+# 36542 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _menhir_env.MenhirLib.EngineTypes.lexbuf.Lexing.lex_start_p in
let _endpos = _startpos in
let _v : 'tv_toplevel_after_stm =
-# 1662 "parser_cocci_menhir.mly"
+# 2050 "parser_cocci_menhir.mly"
([])
-# 31294 "parser_cocci_menhir.ml"
+# 36559 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_after_stm =
-# 1663 "parser_cocci_menhir.mly"
+# 2051 "parser_cocci_menhir.mly"
(_1::_2)
-# 31324 "parser_cocci_menhir.ml"
+# 36589 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_after_stm =
-# 1664 "parser_cocci_menhir.mly"
+# 2052 "parser_cocci_menhir.mly"
(_1@_2)
-# 31354 "parser_cocci_menhir.ml"
+# 36619 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ =
-# 1642 "parser_cocci_menhir.mly"
+# 2030 "parser_cocci_menhir.mly"
( _1::_2 )
-# 31384 "parser_cocci_menhir.ml"
+# 36649 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ =
-# 1643 "parser_cocci_menhir.mly"
+# 2031 "parser_cocci_menhir.mly"
( (Ast0.wrap(Ast0.Exp(_1)))::_2 )
-# 31414 "parser_cocci_menhir.ml"
+# 36679 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_seq_start_toplevel_after_dots_ =
-# 1644 "parser_cocci_menhir.mly"
+# 2032 "parser_cocci_menhir.mly"
( _1@_2 )
-# 31444 "parser_cocci_menhir.ml"
+# 36709 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let b : 'tv_toplevel_after_dots_init = Obj.magic b in
let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
let a0 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 31477 "parser_cocci_menhir.ml"
+# 36742 "parser_cocci_menhir.ml"
) = Obj.magic a0 in
let _startpos = _startpos_a0_ in
let _endpos = _endpos_b_ in
let w = w0 in
let a = a0 in
-# 876 "parser_cocci_menhir.mly"
+# 1068 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Dots(P.clt2mcode "..." a, List.concat w)) )
-# 31487 "parser_cocci_menhir.ml"
+# 36752 "parser_cocci_menhir.ml"
in
-# 1635 "parser_cocci_menhir.mly"
+# 2023 "parser_cocci_menhir.mly"
( a::b )
-# 31493 "parser_cocci_menhir.ml"
+# 36758 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let b : 'tv_toplevel_after_dots_init = Obj.magic b in
let c0 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 31535 "parser_cocci_menhir.ml"
+# 36800 "parser_cocci_menhir.ml"
) = Obj.magic c0 in
let b0 : 'tv_nest_start = Obj.magic b0 in
let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
let a0 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 31542 "parser_cocci_menhir.ml"
+# 36807 "parser_cocci_menhir.ml"
) = Obj.magic a0 in
let _startpos = _startpos_a0_ in
let _endpos = _endpos_b_ in
let w = w0 in
let a = a0 in
-# 880 "parser_cocci_menhir.mly"
+# 1072 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." a, b,
P.clt2mcode "...>" c, List.concat w, false)) )
-# 31555 "parser_cocci_menhir.ml"
+# 36820 "parser_cocci_menhir.ml"
in
-# 1636 "parser_cocci_menhir.mly"
+# 2024 "parser_cocci_menhir.mly"
( a::b )
-# 31561 "parser_cocci_menhir.ml"
+# 36826 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let b : 'tv_toplevel_after_dots_init = Obj.magic b in
let c0 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 31603 "parser_cocci_menhir.ml"
+# 36868 "parser_cocci_menhir.ml"
) = Obj.magic c0 in
let b0 : 'tv_nest_start = Obj.magic b0 in
let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
let a0 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 31610 "parser_cocci_menhir.ml"
+# 36875 "parser_cocci_menhir.ml"
) = Obj.magic a0 in
let _startpos = _startpos_a0_ in
let _endpos = _endpos_b_ in
let w = w0 in
let a = a0 in
-# 883 "parser_cocci_menhir.mly"
+# 1075 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." a, b,
P.clt2mcode "...+>" c, List.concat w, true)) )
-# 31623 "parser_cocci_menhir.ml"
+# 36888 "parser_cocci_menhir.ml"
in
-# 1636 "parser_cocci_menhir.mly"
+# 2024 "parser_cocci_menhir.mly"
( a::b )
-# 31629 "parser_cocci_menhir.ml"
+# 36894 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let c0 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 31665 "parser_cocci_menhir.ml"
+# 36930 "parser_cocci_menhir.ml"
) = Obj.magic c0 in
let b0 : 'tv_nest_start = Obj.magic b0 in
let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
let a0 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 31672 "parser_cocci_menhir.ml"
+# 36937 "parser_cocci_menhir.ml"
) = Obj.magic a0 in
let _startpos = _startpos_a0_ in
let _endpos = _endpos_c0_ in
let w = w0 in
let a = a0 in
-# 880 "parser_cocci_menhir.mly"
+# 1072 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Nest(P.clt2mcode "<..." a, b,
P.clt2mcode "...>" c, List.concat w, false)) )
-# 31685 "parser_cocci_menhir.ml"
+# 36950 "parser_cocci_menhir.ml"
in
-# 1637 "parser_cocci_menhir.mly"
+# 2025 "parser_cocci_menhir.mly"
( [a] )
-# 31691 "parser_cocci_menhir.ml"
+# 36956 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let c0 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 31727 "parser_cocci_menhir.ml"
+# 36992 "parser_cocci_menhir.ml"
) = Obj.magic c0 in
let b0 : 'tv_nest_start = Obj.magic b0 in
let w0 : 'tv_list_whenppdecs_ = Obj.magic w0 in
let a0 : (
-# 73 "parser_cocci_menhir.mly"
+# 140 "parser_cocci_menhir.mly"
(Data.clt)
-# 31734 "parser_cocci_menhir.ml"
+# 36999 "parser_cocci_menhir.ml"
) = Obj.magic a0 in
let _startpos = _startpos_a0_ in
let _endpos = _endpos_c0_ in
let w = w0 in
let a = a0 in
-# 883 "parser_cocci_menhir.mly"
+# 1075 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Nest(P.clt2mcode "<+..." a, b,
P.clt2mcode "...+>" c, List.concat w, true)) )
-# 31747 "parser_cocci_menhir.ml"
+# 37012 "parser_cocci_menhir.ml"
in
-# 1637 "parser_cocci_menhir.mly"
+# 2025 "parser_cocci_menhir.mly"
( [a] )
-# 31753 "parser_cocci_menhir.ml"
+# 37018 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ =
-# 1638 "parser_cocci_menhir.mly"
+# 2026 "parser_cocci_menhir.mly"
( (Ast0.wrap(Ast0.Exp(_1)))::_2 )
-# 31783 "parser_cocci_menhir.ml"
+# 37048 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_toplevel_seq_startne_toplevel_after_dots_init_ =
-# 1639 "parser_cocci_menhir.mly"
+# 2027 "parser_cocci_menhir.mly"
( _1@_2 )
-# 31813 "parser_cocci_menhir.ml"
+# 37078 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : 'tv_mident = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_type_ident =
+# 1881 "parser_cocci_menhir.mly"
+ ( _1 )
+# 37102 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 125 "parser_cocci_menhir.mly"
+ (string * Data.clt)
+# 37123 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_type_ident =
+# 1883 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Id(P.id2mcode _1)) )
+# 37130 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 31845 "parser_cocci_menhir.ml"
+# 37162 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 31850 "parser_cocci_menhir.ml"
+# 37167 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 469 "parser_cocci_menhir.mly"
+# 603 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 31862 "parser_cocci_menhir.ml"
+# 37179 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 31868 "parser_cocci_menhir.ml"
+# 37185 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 31875 "parser_cocci_menhir.ml"
+# 37192 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 31881 "parser_cocci_menhir.ml"
+# 37198 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 31913 "parser_cocci_menhir.ml"
+# 37230 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 31918 "parser_cocci_menhir.ml"
+# 37235 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 471 "parser_cocci_menhir.mly"
+# 605 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 31930 "parser_cocci_menhir.ml"
+# 37247 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 31936 "parser_cocci_menhir.ml"
+# 37253 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 31943 "parser_cocci_menhir.ml"
+# 37260 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 31949 "parser_cocci_menhir.ml"
+# 37266 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 31981 "parser_cocci_menhir.ml"
+# 37298 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 31986 "parser_cocci_menhir.ml"
+# 37303 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 473 "parser_cocci_menhir.mly"
+# 607 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 31998 "parser_cocci_menhir.ml"
+# 37315 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 32004 "parser_cocci_menhir.ml"
+# 37321 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32011 "parser_cocci_menhir.ml"
+# 37328 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32017 "parser_cocci_menhir.ml"
+# 37334 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 32049 "parser_cocci_menhir.ml"
+# 37366 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 32054 "parser_cocci_menhir.ml"
+# 37371 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let p = p0 in
-# 475 "parser_cocci_menhir.mly"
+# 609 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = p in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 32067 "parser_cocci_menhir.ml"
+# 37384 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 32073 "parser_cocci_menhir.ml"
+# 37390 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32080 "parser_cocci_menhir.ml"
+# 37397 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32086 "parser_cocci_menhir.ml"
+# 37403 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 32127 "parser_cocci_menhir.ml"
+# 37444 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r00 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 32132 "parser_cocci_menhir.ml"
+# 37449 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let r1 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 32137 "parser_cocci_menhir.ml"
+# 37454 "parser_cocci_menhir.ml"
) = Obj.magic r1 in
let _startpos = _startpos_r1_ in
let _endpos = _endpos_m_ in
let p = p0 in
let r = r0 in
-# 478 "parser_cocci_menhir.mly"
+# 612 "parser_cocci_menhir.mly"
( let nm = (r,P.id2name p) in
(* this is only possible when we are in a metavar decl. Otherwise,
it will be represented already as a MetaType *)
let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
Ast0.Impure (*will be ignored*))) )
-# 32156 "parser_cocci_menhir.ml"
+# 37473 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 32162 "parser_cocci_menhir.ml"
+# 37479 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32169 "parser_cocci_menhir.ml"
+# 37486 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32175 "parser_cocci_menhir.ml"
+# 37492 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32207 "parser_cocci_menhir.ml"
+# 37524 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 32212 "parser_cocci_menhir.ml"
+# 37529 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 485 "parser_cocci_menhir.mly"
+# 619 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 32224 "parser_cocci_menhir.ml"
+# 37541 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 32230 "parser_cocci_menhir.ml"
+# 37547 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32237 "parser_cocci_menhir.ml"
+# 37554 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32243 "parser_cocci_menhir.ml"
+# 37560 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty200 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32280 "parser_cocci_menhir.ml"
+# 37597 "parser_cocci_menhir.ml"
) = Obj.magic ty200 in
let ty100 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32285 "parser_cocci_menhir.ml"
+# 37602 "parser_cocci_menhir.ml"
) = Obj.magic ty100 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 32290 "parser_cocci_menhir.ml"
+# 37607 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty2 = ty20 in
let ty1 = ty10 in
-# 487 "parser_cocci_menhir.mly"
+# 621 "parser_cocci_menhir.mly"
( Ast0.wrap
(Ast0.BaseType
(Ast.LongLongType,
[P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 32307 "parser_cocci_menhir.ml"
+# 37624 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 32313 "parser_cocci_menhir.ml"
+# 37630 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32320 "parser_cocci_menhir.ml"
+# 37637 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32326 "parser_cocci_menhir.ml"
+# 37643 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32358 "parser_cocci_menhir.ml"
+# 37675 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 32363 "parser_cocci_menhir.ml"
+# 37680 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 469 "parser_cocci_menhir.mly"
+# 603 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 32375 "parser_cocci_menhir.ml"
+# 37692 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 32381 "parser_cocci_menhir.ml"
+# 37698 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32388 "parser_cocci_menhir.ml"
+# 37705 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32394 "parser_cocci_menhir.ml"
+# 37711 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32426 "parser_cocci_menhir.ml"
+# 37743 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 32431 "parser_cocci_menhir.ml"
+# 37748 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 471 "parser_cocci_menhir.mly"
+# 605 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 32443 "parser_cocci_menhir.ml"
+# 37760 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 32449 "parser_cocci_menhir.ml"
+# 37766 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32456 "parser_cocci_menhir.ml"
+# 37773 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32462 "parser_cocci_menhir.ml"
+# 37779 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32494 "parser_cocci_menhir.ml"
+# 37811 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 32499 "parser_cocci_menhir.ml"
+# 37816 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 473 "parser_cocci_menhir.mly"
+# 607 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 32511 "parser_cocci_menhir.ml"
+# 37828 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 32517 "parser_cocci_menhir.ml"
+# 37834 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32524 "parser_cocci_menhir.ml"
+# 37841 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32530 "parser_cocci_menhir.ml"
+# 37847 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 32562 "parser_cocci_menhir.ml"
+# 37879 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 32567 "parser_cocci_menhir.ml"
+# 37884 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let p = p0 in
-# 475 "parser_cocci_menhir.mly"
+# 609 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = p in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 32580 "parser_cocci_menhir.ml"
+# 37897 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 32586 "parser_cocci_menhir.ml"
+# 37903 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32593 "parser_cocci_menhir.ml"
+# 37910 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32599 "parser_cocci_menhir.ml"
+# 37916 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 32640 "parser_cocci_menhir.ml"
+# 37957 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r00 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 32645 "parser_cocci_menhir.ml"
+# 37962 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let r1 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 32650 "parser_cocci_menhir.ml"
+# 37967 "parser_cocci_menhir.ml"
) = Obj.magic r1 in
let _startpos = _startpos_r1_ in
let _endpos = _endpos_m_ in
let p = p0 in
let r = r0 in
-# 478 "parser_cocci_menhir.mly"
+# 612 "parser_cocci_menhir.mly"
( let nm = (r,P.id2name p) in
(* this is only possible when we are in a metavar decl. Otherwise,
it will be represented already as a MetaType *)
let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
Ast0.Impure (*will be ignored*))) )
-# 32669 "parser_cocci_menhir.ml"
+# 37986 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 32675 "parser_cocci_menhir.ml"
+# 37992 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32682 "parser_cocci_menhir.ml"
+# 37999 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32688 "parser_cocci_menhir.ml"
+# 38005 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32720 "parser_cocci_menhir.ml"
+# 38037 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 32725 "parser_cocci_menhir.ml"
+# 38042 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 485 "parser_cocci_menhir.mly"
+# 619 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 32737 "parser_cocci_menhir.ml"
+# 38054 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 32743 "parser_cocci_menhir.ml"
+# 38060 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32750 "parser_cocci_menhir.ml"
+# 38067 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32756 "parser_cocci_menhir.ml"
+# 38073 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty200 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32793 "parser_cocci_menhir.ml"
+# 38110 "parser_cocci_menhir.ml"
) = Obj.magic ty200 in
let ty100 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32798 "parser_cocci_menhir.ml"
+# 38115 "parser_cocci_menhir.ml"
) = Obj.magic ty100 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 32803 "parser_cocci_menhir.ml"
+# 38120 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let _startpos = _startpos_r0_ in
let _endpos = _endpos_m_ in
let ty2 = ty20 in
let ty1 = ty10 in
-# 487 "parser_cocci_menhir.mly"
+# 621 "parser_cocci_menhir.mly"
( Ast0.wrap
(Ast0.BaseType
(Ast.LongLongType,
[P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 32820 "parser_cocci_menhir.ml"
+# 38137 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 32826 "parser_cocci_menhir.ml"
+# 38143 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32833 "parser_cocci_menhir.ml"
+# 38150 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32839 "parser_cocci_menhir.ml"
+# 38156 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32866 "parser_cocci_menhir.ml"
+# 38183 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 469 "parser_cocci_menhir.mly"
+# 603 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 32877 "parser_cocci_menhir.ml"
+# 38194 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 32883 "parser_cocci_menhir.ml"
+# 38200 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32890 "parser_cocci_menhir.ml"
+# 38207 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32896 "parser_cocci_menhir.ml"
+# 38213 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32923 "parser_cocci_menhir.ml"
+# 38240 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 471 "parser_cocci_menhir.mly"
+# 605 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 32934 "parser_cocci_menhir.ml"
+# 38251 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 32940 "parser_cocci_menhir.ml"
+# 38257 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 32947 "parser_cocci_menhir.ml"
+# 38264 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 32953 "parser_cocci_menhir.ml"
+# 38270 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 32980 "parser_cocci_menhir.ml"
+# 38297 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 473 "parser_cocci_menhir.mly"
+# 607 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 32991 "parser_cocci_menhir.ml"
+# 38308 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 32997 "parser_cocci_menhir.ml"
+# 38314 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33004 "parser_cocci_menhir.ml"
+# 38321 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33010 "parser_cocci_menhir.ml"
+# 38327 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 33037 "parser_cocci_menhir.ml"
+# 38354 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let _startpos = _startpos_p00_ in
let _endpos = _endpos_m_ in
let ty =
let p = p0 in
-# 475 "parser_cocci_menhir.mly"
+# 609 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = p in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 33049 "parser_cocci_menhir.ml"
+# 38366 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 33055 "parser_cocci_menhir.ml"
+# 38372 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33062 "parser_cocci_menhir.ml"
+# 38379 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33068 "parser_cocci_menhir.ml"
+# 38385 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 33104 "parser_cocci_menhir.ml"
+# 38421 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r00 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 33109 "parser_cocci_menhir.ml"
+# 38426 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let _startpos = _startpos_r00_ in
let _endpos = _endpos_m_ in
let p = p0 in
let r = r0 in
-# 478 "parser_cocci_menhir.mly"
+# 612 "parser_cocci_menhir.mly"
( let nm = (r,P.id2name p) in
(* this is only possible when we are in a metavar decl. Otherwise,
it will be represented already as a MetaType *)
let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
Ast0.Impure (*will be ignored*))) )
-# 33127 "parser_cocci_menhir.ml"
+# 38444 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 33133 "parser_cocci_menhir.ml"
+# 38450 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33140 "parser_cocci_menhir.ml"
+# 38457 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33146 "parser_cocci_menhir.ml"
+# 38463 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 33173 "parser_cocci_menhir.ml"
+# 38490 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 485 "parser_cocci_menhir.mly"
+# 619 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 33184 "parser_cocci_menhir.ml"
+# 38501 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 33190 "parser_cocci_menhir.ml"
+# 38507 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33197 "parser_cocci_menhir.ml"
+# 38514 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33203 "parser_cocci_menhir.ml"
+# 38520 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty200 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 33235 "parser_cocci_menhir.ml"
+# 38552 "parser_cocci_menhir.ml"
) = Obj.magic ty200 in
let ty100 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 33240 "parser_cocci_menhir.ml"
+# 38557 "parser_cocci_menhir.ml"
) = Obj.magic ty100 in
let _startpos = _startpos_ty100_ in
let _endpos = _endpos_m_ in
let ty2 = ty20 in
let ty1 = ty10 in
-# 487 "parser_cocci_menhir.mly"
+# 621 "parser_cocci_menhir.mly"
( Ast0.wrap
(Ast0.BaseType
(Ast.LongLongType,
[P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 33256 "parser_cocci_menhir.ml"
+# 38573 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 33262 "parser_cocci_menhir.ml"
+# 38579 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33269 "parser_cocci_menhir.ml"
+# 38586 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33275 "parser_cocci_menhir.ml"
+# 38592 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 50 "parser_cocci_menhir.mly"
+# 116 "parser_cocci_menhir.mly"
(Data.clt)
-# 33302 "parser_cocci_menhir.ml"
+# 38619 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 495 "parser_cocci_menhir.mly"
+# 629 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) )
-# 33313 "parser_cocci_menhir.ml"
+# 38630 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 33319 "parser_cocci_menhir.ml"
+# 38636 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33326 "parser_cocci_menhir.ml"
+# 38643 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33332 "parser_cocci_menhir.ml"
+# 38649 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 33359 "parser_cocci_menhir.ml"
+# 38676 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 497 "parser_cocci_menhir.mly"
+# 631 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) )
-# 33370 "parser_cocci_menhir.ml"
+# 38687 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 33376 "parser_cocci_menhir.ml"
+# 38693 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33383 "parser_cocci_menhir.ml"
+# 38700 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33389 "parser_cocci_menhir.ml"
+# 38706 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 33416 "parser_cocci_menhir.ml"
+# 38733 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let _startpos = _startpos_ty00_ in
let _endpos = _endpos_m_ in
let ty =
let ty = ty0 in
-# 499 "parser_cocci_menhir.mly"
+# 633 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) )
-# 33427 "parser_cocci_menhir.ml"
+# 38744 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 33433 "parser_cocci_menhir.ml"
+# 38750 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33440 "parser_cocci_menhir.ml"
+# 38757 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 38763 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 115 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 38790 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let _startpos = _startpos_ty00_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_typedef_ctype = let ty =
+ let ty0 = ty00 in
+ let ty =
+ let ty = ty0 in
+
+# 635 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) )
+# 38801 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 38807 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 38814 "parser_cocci_menhir.ml"
+
+ in
+
+# 691 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 38820 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 115 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 38847 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let _startpos = _startpos_ty00_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_typedef_ctype = let ty =
+ let ty0 = ty00 in
+ let ty =
+ let ty = ty0 in
+
+# 637 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) )
+# 38858 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 38864 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 38871 "parser_cocci_menhir.ml"
+
+ in
+
+# 691 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 38877 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 115 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 38904 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let _startpos = _startpos_ty00_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_typedef_ctype = let ty =
+ let ty0 = ty00 in
+ let ty =
+ let ty = ty0 in
+
+# 639 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) )
+# 38915 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 38921 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 38928 "parser_cocci_menhir.ml"
+
+ in
+
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33446 "parser_cocci_menhir.ml"
+# 38934 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let m : 'tv_list_TMul_ = Obj.magic m in
let i00 : 'tv_ident = Obj.magic i00 in
let s00 : (
-# 50 "parser_cocci_menhir.mly"
+# 116 "parser_cocci_menhir.mly"
(Data.clt)
-# 33479 "parser_cocci_menhir.ml"
+# 38967 "parser_cocci_menhir.ml"
) = Obj.magic s00 in
let _startpos = _startpos_s00_ in
let _endpos = _endpos_m_ in
let i = i0 in
let s = s0 in
-# 501 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)) )
-# 33492 "parser_cocci_menhir.ml"
+# 641 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) )
+# 38980 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 33498 "parser_cocci_menhir.ml"
+# 38986 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33505 "parser_cocci_menhir.ml"
+# 38993 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33511 "parser_cocci_menhir.ml"
+# 38999 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids00;
+ MenhirLib.EngineTypes.startp = _startpos_ids00_;
+ MenhirLib.EngineTypes.endp = _endpos_ids00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 39041 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 39047 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let s00 : (
+# 116 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 39052 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let _startpos = _startpos_s00_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_typedef_ctype = let ty =
+ let r0 = r00 in
+ let ids0 = ids00 in
+ let l0 = l00 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let ids = ids0 in
+ let l = l0 in
+ let s = s0 in
+ let i =
+
+# 39 "standard.mly"
+ ( None )
+# 39070 "parser_cocci_menhir.ml"
+
+ in
+
+# 643 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "enums must be named in the iso file");
+ Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)),
+ P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) )
+# 39079 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 39085 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 39092 "parser_cocci_menhir.ml"
+
+ in
+
+# 691 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 39098 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids00;
+ MenhirLib.EngineTypes.startp = _startpos_ids00_;
+ MenhirLib.EngineTypes.endp = _endpos_ids00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = x000;
+ MenhirLib.EngineTypes.startp = _startpos_x000_;
+ MenhirLib.EngineTypes.endp = _endpos_x000_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 39145 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 39151 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let x000 : 'tv_ident = Obj.magic x000 in
+ let s00 : (
+# 116 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 39157 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let _startpos = _startpos_s00_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_typedef_ctype = let ty =
+ let r0 = r00 in
+ let ids0 = ids00 in
+ let l0 = l00 in
+ let x00 = x000 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let ids = ids0 in
+ let l = l0 in
+ let x0 = x00 in
+ let s = s0 in
+ let i =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 39178 "parser_cocci_menhir.ml"
+
+ in
+
+# 643 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "enums must be named in the iso file");
+ Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)),
+ P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) )
+# 39187 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 39193 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+
+# 39 "standard.mly"
+ ( None )
+# 39200 "parser_cocci_menhir.ml"
+
+ in
+
+# 691 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 39206 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let i00 : 'tv_ident = Obj.magic i00 in
+ let i00 : 'tv_type_ident = Obj.magic i00 in
let s00 : 'tv_struct_or_union = Obj.magic s00 in
let _startpos = _startpos_s00_ in
let _endpos = _endpos_m_ in
let i = i0 in
let s = s0 in
-# 503 "parser_cocci_menhir.mly"
+# 648 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
-# 33553 "parser_cocci_menhir.ml"
+# 39248 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 33559 "parser_cocci_menhir.ml"
+# 39254 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33566 "parser_cocci_menhir.ml"
+# 39261 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33572 "parser_cocci_menhir.ml"
+# 39267 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let r00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 33614 "parser_cocci_menhir.ml"
+# 39309 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let d00 : 'tv_struct_decl_list = Obj.magic d00 in
let l00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 33620 "parser_cocci_menhir.ml"
+# 39315 "parser_cocci_menhir.ml"
) = Obj.magic l00 in
let s00 : 'tv_struct_or_union = Obj.magic s00 in
let _startpos = _startpos_s00_ in
# 39 "standard.mly"
( None )
-# 33639 "parser_cocci_menhir.ml"
+# 39334 "parser_cocci_menhir.ml"
in
-# 506 "parser_cocci_menhir.mly"
+# 651 "parser_cocci_menhir.mly"
( (if i = None && !Data.in_iso
then failwith "structures must be named in the iso file");
Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
P.clt2mcode "{" l,
d, P.clt2mcode "}" r)) )
-# 33649 "parser_cocci_menhir.ml"
+# 39344 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 33655 "parser_cocci_menhir.ml"
+# 39350 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33662 "parser_cocci_menhir.ml"
+# 39357 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33668 "parser_cocci_menhir.ml"
+# 39363 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let r00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 33715 "parser_cocci_menhir.ml"
+# 39410 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let d00 : 'tv_struct_decl_list = Obj.magic d00 in
let l00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 33721 "parser_cocci_menhir.ml"
+# 39416 "parser_cocci_menhir.ml"
) = Obj.magic l00 in
- let x000 : 'tv_ident = Obj.magic x000 in
+ let x000 : 'tv_type_ident = Obj.magic x000 in
let s00 : 'tv_struct_or_union = Obj.magic s00 in
let _startpos = _startpos_s00_ in
let _endpos = _endpos_m_ in
# 41 "standard.mly"
( Some x )
-# 33744 "parser_cocci_menhir.ml"
+# 39439 "parser_cocci_menhir.ml"
in
-# 506 "parser_cocci_menhir.mly"
+# 651 "parser_cocci_menhir.mly"
( (if i = None && !Data.in_iso
then failwith "structures must be named in the iso file");
Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
P.clt2mcode "{" l,
d, P.clt2mcode "}" r)) )
-# 33754 "parser_cocci_menhir.ml"
+# 39449 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 33760 "parser_cocci_menhir.ml"
+# 39455 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33767 "parser_cocci_menhir.ml"
+# 39462 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33773 "parser_cocci_menhir.ml"
+# 39468 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let r00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 33815 "parser_cocci_menhir.ml"
+# 39510 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let d00 : 'tv_struct_decl_list = Obj.magic d00 in
let l00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 33821 "parser_cocci_menhir.ml"
+# 39516 "parser_cocci_menhir.ml"
) = Obj.magic l00 in
let s00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 33826 "parser_cocci_menhir.ml"
+# 39521 "parser_cocci_menhir.ml"
) = Obj.magic s00 in
let _startpos = _startpos_s00_ in
let _endpos = _endpos_m_ in
let l = l0 in
let s = s0 in
-# 512 "parser_cocci_menhir.mly"
+# 657 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = s in
let ty = Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
Ast0.wrap(Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
-# 33845 "parser_cocci_menhir.ml"
+# 39540 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 33851 "parser_cocci_menhir.ml"
+# 39546 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33858 "parser_cocci_menhir.ml"
+# 39553 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33864 "parser_cocci_menhir.ml"
+# 39559 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 33891 "parser_cocci_menhir.ml"
+# 39586 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let _startpos = _startpos_p00_ in
let _endpos = _endpos_m_ in
let ty =
let p = p0 in
-# 516 "parser_cocci_menhir.mly"
+# 661 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
-# 33902 "parser_cocci_menhir.ml"
+# 39597 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 33908 "parser_cocci_menhir.ml"
+# 39603 "parser_cocci_menhir.ml"
in
let cv =
# 39 "standard.mly"
( None )
-# 33915 "parser_cocci_menhir.ml"
+# 39610 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33921 "parser_cocci_menhir.ml"
+# 39616 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 33958 "parser_cocci_menhir.ml"
+# 39653 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 33963 "parser_cocci_menhir.ml"
+# 39658 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 469 "parser_cocci_menhir.mly"
+# 603 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 33976 "parser_cocci_menhir.ml"
+# 39671 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 33982 "parser_cocci_menhir.ml"
+# 39677 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 33990 "parser_cocci_menhir.ml"
+# 39685 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 33996 "parser_cocci_menhir.ml"
+# 39691 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 34033 "parser_cocci_menhir.ml"
+# 39728 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 34038 "parser_cocci_menhir.ml"
+# 39733 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 471 "parser_cocci_menhir.mly"
+# 605 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 34051 "parser_cocci_menhir.ml"
+# 39746 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 34057 "parser_cocci_menhir.ml"
+# 39752 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 34065 "parser_cocci_menhir.ml"
+# 39760 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 34071 "parser_cocci_menhir.ml"
+# 39766 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 34108 "parser_cocci_menhir.ml"
+# 39803 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 34113 "parser_cocci_menhir.ml"
+# 39808 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 473 "parser_cocci_menhir.mly"
+# 607 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 34126 "parser_cocci_menhir.ml"
+# 39821 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 34132 "parser_cocci_menhir.ml"
+# 39827 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 34140 "parser_cocci_menhir.ml"
+# 39835 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 34146 "parser_cocci_menhir.ml"
+# 39841 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 34183 "parser_cocci_menhir.ml"
+# 39878 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 34188 "parser_cocci_menhir.ml"
+# 39883 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let p = p0 in
-# 475 "parser_cocci_menhir.mly"
+# 609 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = p in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 34202 "parser_cocci_menhir.ml"
+# 39897 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 34208 "parser_cocci_menhir.ml"
+# 39903 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 34216 "parser_cocci_menhir.ml"
+# 39911 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 34222 "parser_cocci_menhir.ml"
+# 39917 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 34268 "parser_cocci_menhir.ml"
+# 39963 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r00 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 34273 "parser_cocci_menhir.ml"
+# 39968 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let r1 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 34278 "parser_cocci_menhir.ml"
+# 39973 "parser_cocci_menhir.ml"
) = Obj.magic r1 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let p = p0 in
let r = r0 in
-# 478 "parser_cocci_menhir.mly"
+# 612 "parser_cocci_menhir.mly"
( let nm = (r,P.id2name p) in
(* this is only possible when we are in a metavar decl. Otherwise,
it will be represented already as a MetaType *)
let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
Ast0.Impure (*will be ignored*))) )
-# 34298 "parser_cocci_menhir.ml"
+# 39993 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 34304 "parser_cocci_menhir.ml"
+# 39999 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 34312 "parser_cocci_menhir.ml"
+# 40007 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 34318 "parser_cocci_menhir.ml"
+# 40013 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 34355 "parser_cocci_menhir.ml"
+# 40050 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 34360 "parser_cocci_menhir.ml"
+# 40055 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 485 "parser_cocci_menhir.mly"
+# 619 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 34373 "parser_cocci_menhir.ml"
+# 40068 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 34379 "parser_cocci_menhir.ml"
+# 40074 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 34387 "parser_cocci_menhir.ml"
+# 40082 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 34393 "parser_cocci_menhir.ml"
+# 40088 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty200 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 34435 "parser_cocci_menhir.ml"
+# 40130 "parser_cocci_menhir.ml"
) = Obj.magic ty200 in
let ty100 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 34440 "parser_cocci_menhir.ml"
+# 40135 "parser_cocci_menhir.ml"
) = Obj.magic ty100 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 34445 "parser_cocci_menhir.ml"
+# 40140 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty2 = ty20 in
let ty1 = ty10 in
-# 487 "parser_cocci_menhir.mly"
+# 621 "parser_cocci_menhir.mly"
( Ast0.wrap
(Ast0.BaseType
(Ast.LongLongType,
[P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 34463 "parser_cocci_menhir.ml"
+# 40158 "parser_cocci_menhir.ml"
in
-# 521 "parser_cocci_menhir.mly"
+# 666 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Signed r,Some ty)) )
-# 34469 "parser_cocci_menhir.ml"
+# 40164 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 34477 "parser_cocci_menhir.ml"
+# 40172 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 34483 "parser_cocci_menhir.ml"
+# 40178 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 34520 "parser_cocci_menhir.ml"
+# 40215 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 34525 "parser_cocci_menhir.ml"
+# 40220 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 469 "parser_cocci_menhir.mly"
+# 603 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 34538 "parser_cocci_menhir.ml"
-
- in
-
-# 523 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 34544 "parser_cocci_menhir.ml"
-
- in
- let cv =
- let x = x0 in
-
-# 41 "standard.mly"
- ( Some x )
-# 34552 "parser_cocci_menhir.ml"
-
- in
-
-# 542 "parser_cocci_menhir.mly"
- ( P.pointerify (P.make_cv cv ty) m )
-# 34558 "parser_cocci_menhir.ml"
- in
- _menhir_env.MenhirLib.EngineTypes.stack <- {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = Obj.repr _v;
- MenhirLib.EngineTypes.startp = _startpos;
- MenhirLib.EngineTypes.endp = _endpos;
- MenhirLib.EngineTypes.next = _menhir_stack;
- });
- (fun _menhir_env ->
- let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
- let {
- MenhirLib.EngineTypes.semv = m;
- MenhirLib.EngineTypes.startp = _startpos_m_;
- MenhirLib.EngineTypes.endp = _endpos_m_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = ty00;
- MenhirLib.EngineTypes.startp = _startpos_ty00_;
- MenhirLib.EngineTypes.endp = _endpos_ty00_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.semv = r0;
- MenhirLib.EngineTypes.startp = _startpos_r0_;
- MenhirLib.EngineTypes.endp = _endpos_r0_;
- MenhirLib.EngineTypes.next = {
- MenhirLib.EngineTypes.state = _menhir_s;
- MenhirLib.EngineTypes.semv = x0;
- MenhirLib.EngineTypes.startp = _startpos_x0_;
- MenhirLib.EngineTypes.endp = _endpos_x0_;
- MenhirLib.EngineTypes.next = _menhir_stack;
- };
- };
- };
- } = _menhir_stack in
- let m : 'tv_list_TMul_ = Obj.magic m in
- let ty00 : (
-# 49 "parser_cocci_menhir.mly"
- (Data.clt)
-# 34595 "parser_cocci_menhir.ml"
- ) = Obj.magic ty00 in
- let r0 : (
-# 51 "parser_cocci_menhir.mly"
- (Data.clt)
-# 34600 "parser_cocci_menhir.ml"
- ) = Obj.magic r0 in
- let x0 : 'tv_const_vol = Obj.magic x0 in
- let _startpos = _startpos_x0_ in
- let _endpos = _endpos_m_ in
- let _v : 'tv_typedef_ctype = let ty =
- let ty0 = ty00 in
- let r = r0 in
- let ty =
- let ty = ty0 in
-
-# 471 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 34613 "parser_cocci_menhir.ml"
+# 40233 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 34619 "parser_cocci_menhir.ml"
+# 40239 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 34627 "parser_cocci_menhir.ml"
+# 40247 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 34633 "parser_cocci_menhir.ml"
+# 40253 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 34670 "parser_cocci_menhir.ml"
+# 40290 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 34675 "parser_cocci_menhir.ml"
+# 40295 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 473 "parser_cocci_menhir.mly"
+# 605 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
+# 40308 "parser_cocci_menhir.ml"
+
+ in
+
+# 668 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
+# 40314 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 40322 "parser_cocci_menhir.ml"
+
+ in
+
+# 691 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 40328 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r0;
+ MenhirLib.EngineTypes.startp = _startpos_r0_;
+ MenhirLib.EngineTypes.endp = _endpos_r0_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 114 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 40365 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let r0 : (
+# 117 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 40370 "parser_cocci_menhir.ml"
+ ) = Obj.magic r0 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_typedef_ctype = let ty =
+ let ty0 = ty00 in
+ let r = r0 in
+ let ty =
+ let ty = ty0 in
+
+# 607 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 34688 "parser_cocci_menhir.ml"
+# 40383 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 34694 "parser_cocci_menhir.ml"
+# 40389 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 34702 "parser_cocci_menhir.ml"
+# 40397 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 34708 "parser_cocci_menhir.ml"
+# 40403 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 34745 "parser_cocci_menhir.ml"
+# 40440 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 34750 "parser_cocci_menhir.ml"
+# 40445 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let p = p0 in
-# 475 "parser_cocci_menhir.mly"
+# 609 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = p in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 34764 "parser_cocci_menhir.ml"
+# 40459 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 34770 "parser_cocci_menhir.ml"
+# 40465 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 34778 "parser_cocci_menhir.ml"
+# 40473 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 34784 "parser_cocci_menhir.ml"
+# 40479 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 34830 "parser_cocci_menhir.ml"
+# 40525 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r00 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 34835 "parser_cocci_menhir.ml"
+# 40530 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let r1 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 34840 "parser_cocci_menhir.ml"
+# 40535 "parser_cocci_menhir.ml"
) = Obj.magic r1 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let p = p0 in
let r = r0 in
-# 478 "parser_cocci_menhir.mly"
+# 612 "parser_cocci_menhir.mly"
( let nm = (r,P.id2name p) in
(* this is only possible when we are in a metavar decl. Otherwise,
it will be represented already as a MetaType *)
let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
Ast0.Impure (*will be ignored*))) )
-# 34860 "parser_cocci_menhir.ml"
+# 40555 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 34866 "parser_cocci_menhir.ml"
+# 40561 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 34874 "parser_cocci_menhir.ml"
+# 40569 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 34880 "parser_cocci_menhir.ml"
+# 40575 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 34917 "parser_cocci_menhir.ml"
+# 40612 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 34922 "parser_cocci_menhir.ml"
+# 40617 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 485 "parser_cocci_menhir.mly"
+# 619 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 34935 "parser_cocci_menhir.ml"
+# 40630 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 34941 "parser_cocci_menhir.ml"
+# 40636 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 34949 "parser_cocci_menhir.ml"
+# 40644 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 34955 "parser_cocci_menhir.ml"
+# 40650 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty200 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 34997 "parser_cocci_menhir.ml"
+# 40692 "parser_cocci_menhir.ml"
) = Obj.magic ty200 in
let ty100 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 35002 "parser_cocci_menhir.ml"
+# 40697 "parser_cocci_menhir.ml"
) = Obj.magic ty100 in
let r0 : (
-# 51 "parser_cocci_menhir.mly"
+# 117 "parser_cocci_menhir.mly"
(Data.clt)
-# 35007 "parser_cocci_menhir.ml"
+# 40702 "parser_cocci_menhir.ml"
) = Obj.magic r0 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty2 = ty20 in
let ty1 = ty10 in
-# 487 "parser_cocci_menhir.mly"
+# 621 "parser_cocci_menhir.mly"
( Ast0.wrap
(Ast0.BaseType
(Ast.LongLongType,
[P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 35025 "parser_cocci_menhir.ml"
+# 40720 "parser_cocci_menhir.ml"
in
-# 523 "parser_cocci_menhir.mly"
+# 668 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Signed(P.clt2mcode Ast.Unsigned r,Some ty)) )
-# 35031 "parser_cocci_menhir.ml"
+# 40726 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35039 "parser_cocci_menhir.ml"
+# 40734 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35045 "parser_cocci_menhir.ml"
+# 40740 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 35077 "parser_cocci_menhir.ml"
+# 40772 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 469 "parser_cocci_menhir.mly"
+# 603 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.CharType,[P.clt2mcode "char" ty])) )
-# 35089 "parser_cocci_menhir.ml"
+# 40784 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 35095 "parser_cocci_menhir.ml"
+# 40790 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35103 "parser_cocci_menhir.ml"
+# 40798 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35109 "parser_cocci_menhir.ml"
+# 40804 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 35141 "parser_cocci_menhir.ml"
+# 40836 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 471 "parser_cocci_menhir.mly"
+# 605 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.ShortType,[P.clt2mcode "short" ty])) )
-# 35153 "parser_cocci_menhir.ml"
+# 40848 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 35159 "parser_cocci_menhir.ml"
+# 40854 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35167 "parser_cocci_menhir.ml"
+# 40862 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35173 "parser_cocci_menhir.ml"
+# 40868 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 35205 "parser_cocci_menhir.ml"
+# 40900 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 473 "parser_cocci_menhir.mly"
+# 607 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.IntType,[P.clt2mcode "int" ty])) )
-# 35217 "parser_cocci_menhir.ml"
+# 40912 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 35223 "parser_cocci_menhir.ml"
+# 40918 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35231 "parser_cocci_menhir.ml"
+# 40926 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35237 "parser_cocci_menhir.ml"
+# 40932 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 35269 "parser_cocci_menhir.ml"
+# 40964 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let p = p0 in
-# 475 "parser_cocci_menhir.mly"
+# 609 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = p in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 35282 "parser_cocci_menhir.ml"
+# 40977 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 35288 "parser_cocci_menhir.ml"
+# 40983 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35296 "parser_cocci_menhir.ml"
+# 40991 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35302 "parser_cocci_menhir.ml"
+# 40997 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 35343 "parser_cocci_menhir.ml"
+# 41038 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let r00 : (
-# 47 "parser_cocci_menhir.mly"
+# 112 "parser_cocci_menhir.mly"
(string)
-# 35348 "parser_cocci_menhir.ml"
+# 41043 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let p = p0 in
let r = r0 in
-# 478 "parser_cocci_menhir.mly"
+# 612 "parser_cocci_menhir.mly"
( let nm = (r,P.id2name p) in
(* this is only possible when we are in a metavar decl. Otherwise,
it will be represented already as a MetaType *)
let _ = P.check_meta(Ast.MetaTypeDecl(Ast.NONE,nm)) in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm (P.id2clt p),
Ast0.Impure (*will be ignored*))) )
-# 35367 "parser_cocci_menhir.ml"
+# 41062 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 35373 "parser_cocci_menhir.ml"
+# 41068 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35381 "parser_cocci_menhir.ml"
+# 41076 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35387 "parser_cocci_menhir.ml"
+# 41082 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 35419 "parser_cocci_menhir.ml"
+# 41114 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 485 "parser_cocci_menhir.mly"
+# 619 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.LongType,[P.clt2mcode "long" ty])) )
-# 35431 "parser_cocci_menhir.ml"
+# 41126 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 35437 "parser_cocci_menhir.ml"
+# 41132 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35445 "parser_cocci_menhir.ml"
+# 41140 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35451 "parser_cocci_menhir.ml"
+# 41146 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty200 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 35488 "parser_cocci_menhir.ml"
+# 41183 "parser_cocci_menhir.ml"
) = Obj.magic ty200 in
let ty100 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 35493 "parser_cocci_menhir.ml"
+# 41188 "parser_cocci_menhir.ml"
) = Obj.magic ty100 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty2 = ty20 in
let ty1 = ty10 in
-# 487 "parser_cocci_menhir.mly"
+# 621 "parser_cocci_menhir.mly"
( Ast0.wrap
(Ast0.BaseType
(Ast.LongLongType,
[P.clt2mcode "long" ty1;P.clt2mcode "long" ty2])) )
-# 35510 "parser_cocci_menhir.ml"
+# 41205 "parser_cocci_menhir.ml"
in
-# 524 "parser_cocci_menhir.mly"
+# 669 "parser_cocci_menhir.mly"
( ty )
-# 35516 "parser_cocci_menhir.ml"
+# 41211 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35524 "parser_cocci_menhir.ml"
+# 41219 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35530 "parser_cocci_menhir.ml"
+# 41225 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 50 "parser_cocci_menhir.mly"
+# 116 "parser_cocci_menhir.mly"
(Data.clt)
-# 35562 "parser_cocci_menhir.ml"
+# 41257 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 495 "parser_cocci_menhir.mly"
+# 629 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.VoidType,[P.clt2mcode "void" ty])) )
-# 35574 "parser_cocci_menhir.ml"
+# 41269 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 35580 "parser_cocci_menhir.ml"
+# 41275 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35588 "parser_cocci_menhir.ml"
+# 41283 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35594 "parser_cocci_menhir.ml"
+# 41289 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 35626 "parser_cocci_menhir.ml"
+# 41321 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 497 "parser_cocci_menhir.mly"
+# 631 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.DoubleType,[P.clt2mcode "double" ty])) )
-# 35638 "parser_cocci_menhir.ml"
+# 41333 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 35644 "parser_cocci_menhir.ml"
+# 41339 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35652 "parser_cocci_menhir.ml"
+# 41347 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35658 "parser_cocci_menhir.ml"
+# 41353 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let ty00 : (
-# 49 "parser_cocci_menhir.mly"
+# 114 "parser_cocci_menhir.mly"
(Data.clt)
-# 35690 "parser_cocci_menhir.ml"
+# 41385 "parser_cocci_menhir.ml"
) = Obj.magic ty00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let ty = ty0 in
-# 499 "parser_cocci_menhir.mly"
+# 633 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.BaseType(Ast.FloatType,[P.clt2mcode "float" ty])) )
-# 35702 "parser_cocci_menhir.ml"
+# 41397 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 35708 "parser_cocci_menhir.ml"
+# 41403 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35716 "parser_cocci_menhir.ml"
+# 41411 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 41417 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 115 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 41449 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_typedef_ctype = let ty =
+ let ty0 = ty00 in
+ let ty =
+ let ty = ty0 in
+
+# 635 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.SizeType,[P.clt2mcode "size_t" ty])) )
+# 41461 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 41467 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 41475 "parser_cocci_menhir.ml"
+
+ in
+
+# 691 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 41481 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 115 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 41513 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_typedef_ctype = let ty =
+ let ty0 = ty00 in
+ let ty =
+ let ty = ty0 in
+
+# 637 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.SSizeType,[P.clt2mcode "ssize_t" ty])) )
+# 41525 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 41531 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 41539 "parser_cocci_menhir.ml"
+
+ in
+
+# 691 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 41545 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ty00;
+ MenhirLib.EngineTypes.startp = _startpos_ty00_;
+ MenhirLib.EngineTypes.endp = _endpos_ty00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let ty00 : (
+# 115 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 41577 "parser_cocci_menhir.ml"
+ ) = Obj.magic ty00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_typedef_ctype = let ty =
+ let ty0 = ty00 in
+ let ty =
+ let ty = ty0 in
+
+# 639 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.BaseType(Ast.PtrDiffType,[P.clt2mcode "ptrdiff_t" ty])) )
+# 41589 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 41595 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 41603 "parser_cocci_menhir.ml"
+
+ in
+
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35722 "parser_cocci_menhir.ml"
+# 41609 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let m : 'tv_list_TMul_ = Obj.magic m in
let i00 : 'tv_ident = Obj.magic i00 in
let s00 : (
-# 50 "parser_cocci_menhir.mly"
+# 116 "parser_cocci_menhir.mly"
(Data.clt)
-# 35760 "parser_cocci_menhir.ml"
+# 41647 "parser_cocci_menhir.ml"
) = Obj.magic s00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let i = i0 in
let s = s0 in
-# 501 "parser_cocci_menhir.mly"
- ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)) )
-# 35774 "parser_cocci_menhir.ml"
+# 641 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, Some i)) )
+# 41661 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 35780 "parser_cocci_menhir.ml"
+# 41667 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35788 "parser_cocci_menhir.ml"
+# 41675 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 41681 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids00;
+ MenhirLib.EngineTypes.startp = _startpos_ids00_;
+ MenhirLib.EngineTypes.endp = _endpos_ids00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 41728 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 41734 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let s00 : (
+# 116 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 41739 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_typedef_ctype = let ty =
+ let r0 = r00 in
+ let ids0 = ids00 in
+ let l0 = l00 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let ids = ids0 in
+ let l = l0 in
+ let s = s0 in
+ let i =
+
+# 39 "standard.mly"
+ ( None )
+# 41758 "parser_cocci_menhir.ml"
+
+ in
+
+# 643 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "enums must be named in the iso file");
+ Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)),
+ P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) )
+# 41767 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 41773 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 41781 "parser_cocci_menhir.ml"
+
+ in
+
+# 691 "parser_cocci_menhir.mly"
+ ( P.pointerify (P.make_cv cv ty) m )
+# 41787 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = m;
+ MenhirLib.EngineTypes.startp = _startpos_m_;
+ MenhirLib.EngineTypes.endp = _endpos_m_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = r00;
+ MenhirLib.EngineTypes.startp = _startpos_r00_;
+ MenhirLib.EngineTypes.endp = _endpos_r00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = ids00;
+ MenhirLib.EngineTypes.startp = _startpos_ids00_;
+ MenhirLib.EngineTypes.endp = _endpos_ids00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = l00;
+ MenhirLib.EngineTypes.startp = _startpos_l00_;
+ MenhirLib.EngineTypes.endp = _endpos_l00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = x000;
+ MenhirLib.EngineTypes.startp = _startpos_x000_;
+ MenhirLib.EngineTypes.endp = _endpos_x000_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = s00;
+ MenhirLib.EngineTypes.startp = _startpos_s00_;
+ MenhirLib.EngineTypes.endp = _endpos_s00_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = x0;
+ MenhirLib.EngineTypes.startp = _startpos_x0_;
+ MenhirLib.EngineTypes.endp = _endpos_x0_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ };
+ };
+ };
+ } = _menhir_stack in
+ let m : 'tv_list_TMul_ = Obj.magic m in
+ let r00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 41839 "parser_cocci_menhir.ml"
+ ) = Obj.magic r00 in
+ let ids00 : 'tv_enum_decl_list = Obj.magic ids00 in
+ let l00 : (
+# 168 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 41845 "parser_cocci_menhir.ml"
+ ) = Obj.magic l00 in
+ let x000 : 'tv_ident = Obj.magic x000 in
+ let s00 : (
+# 116 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 41851 "parser_cocci_menhir.ml"
+ ) = Obj.magic s00 in
+ let x0 : 'tv_const_vol = Obj.magic x0 in
+ let _startpos = _startpos_x0_ in
+ let _endpos = _endpos_m_ in
+ let _v : 'tv_typedef_ctype = let ty =
+ let r0 = r00 in
+ let ids0 = ids00 in
+ let l0 = l00 in
+ let x00 = x000 in
+ let s0 = s00 in
+ let ty =
+ let r = r0 in
+ let ids = ids0 in
+ let l = l0 in
+ let x0 = x00 in
+ let s = s0 in
+ let i =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 41873 "parser_cocci_menhir.ml"
+
+ in
+
+# 643 "parser_cocci_menhir.mly"
+ ( (if i = None && !Data.in_iso
+ then failwith "enums must be named in the iso file");
+ Ast0.wrap(Ast0.EnumDef(Ast0.wrap(Ast0.EnumName(P.clt2mcode "enum" s, i)),
+ P.clt2mcode "{" l, ids, P.clt2mcode "}" r)) )
+# 41882 "parser_cocci_menhir.ml"
+
+ in
+
+# 670 "parser_cocci_menhir.mly"
+ ( ty )
+# 41888 "parser_cocci_menhir.ml"
+
+ in
+ let cv =
+ let x = x0 in
+
+# 41 "standard.mly"
+ ( Some x )
+# 41896 "parser_cocci_menhir.ml"
+
+ in
+
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35794 "parser_cocci_menhir.ml"
+# 41902 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
- let i00 : 'tv_ident = Obj.magic i00 in
+ let i00 : 'tv_type_ident = Obj.magic i00 in
let s00 : 'tv_struct_or_union = Obj.magic s00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let i = i0 in
let s = s0 in
-# 503 "parser_cocci_menhir.mly"
+# 648 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.StructUnionName(s, Some i)) )
-# 35842 "parser_cocci_menhir.ml"
+# 41950 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 35848 "parser_cocci_menhir.ml"
+# 41956 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35856 "parser_cocci_menhir.ml"
+# 41964 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35862 "parser_cocci_menhir.ml"
+# 41970 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let r00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 35909 "parser_cocci_menhir.ml"
+# 42017 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let d00 : 'tv_struct_decl_list = Obj.magic d00 in
let l00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 35915 "parser_cocci_menhir.ml"
+# 42023 "parser_cocci_menhir.ml"
) = Obj.magic l00 in
let s00 : 'tv_struct_or_union = Obj.magic s00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
# 39 "standard.mly"
( None )
-# 35935 "parser_cocci_menhir.ml"
+# 42043 "parser_cocci_menhir.ml"
in
-# 506 "parser_cocci_menhir.mly"
+# 651 "parser_cocci_menhir.mly"
( (if i = None && !Data.in_iso
then failwith "structures must be named in the iso file");
Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
P.clt2mcode "{" l,
d, P.clt2mcode "}" r)) )
-# 35945 "parser_cocci_menhir.ml"
+# 42053 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 35951 "parser_cocci_menhir.ml"
+# 42059 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 35959 "parser_cocci_menhir.ml"
+# 42067 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 35965 "parser_cocci_menhir.ml"
+# 42073 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let r00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 36017 "parser_cocci_menhir.ml"
+# 42125 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let d00 : 'tv_struct_decl_list = Obj.magic d00 in
let l00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 36023 "parser_cocci_menhir.ml"
+# 42131 "parser_cocci_menhir.ml"
) = Obj.magic l00 in
- let x000 : 'tv_ident = Obj.magic x000 in
+ let x000 : 'tv_type_ident = Obj.magic x000 in
let s00 : 'tv_struct_or_union = Obj.magic s00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
# 41 "standard.mly"
( Some x )
-# 36047 "parser_cocci_menhir.ml"
+# 42155 "parser_cocci_menhir.ml"
in
-# 506 "parser_cocci_menhir.mly"
+# 651 "parser_cocci_menhir.mly"
( (if i = None && !Data.in_iso
then failwith "structures must be named in the iso file");
Ast0.wrap(Ast0.StructUnionDef(Ast0.wrap(Ast0.StructUnionName(s, i)),
P.clt2mcode "{" l,
d, P.clt2mcode "}" r)) )
-# 36057 "parser_cocci_menhir.ml"
+# 42165 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 36063 "parser_cocci_menhir.ml"
+# 42171 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 36071 "parser_cocci_menhir.ml"
+# 42179 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 36077 "parser_cocci_menhir.ml"
+# 42185 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let r00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 36124 "parser_cocci_menhir.ml"
+# 42232 "parser_cocci_menhir.ml"
) = Obj.magic r00 in
let d00 : 'tv_struct_decl_list = Obj.magic d00 in
let l00 : (
-# 101 "parser_cocci_menhir.mly"
+# 168 "parser_cocci_menhir.mly"
(Data.clt)
-# 36130 "parser_cocci_menhir.ml"
+# 42238 "parser_cocci_menhir.ml"
) = Obj.magic l00 in
let s00 : (
-# 64 "parser_cocci_menhir.mly"
+# 131 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 36135 "parser_cocci_menhir.ml"
+# 42243 "parser_cocci_menhir.ml"
) = Obj.magic s00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let l = l0 in
let s = s0 in
-# 512 "parser_cocci_menhir.mly"
+# 657 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = s in
let ty = Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) in
Ast0.wrap(Ast0.StructUnionDef(ty,P.clt2mcode "{" l,d,P.clt2mcode "}" r)) )
-# 36155 "parser_cocci_menhir.ml"
+# 42263 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 36161 "parser_cocci_menhir.ml"
+# 42269 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 36169 "parser_cocci_menhir.ml"
+# 42277 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 36175 "parser_cocci_menhir.ml"
+# 42283 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
} = _menhir_stack in
let m : 'tv_list_TMul_ = Obj.magic m in
let p00 : (
-# 59 "parser_cocci_menhir.mly"
+# 125 "parser_cocci_menhir.mly"
(string * Data.clt)
-# 36207 "parser_cocci_menhir.ml"
+# 42315 "parser_cocci_menhir.ml"
) = Obj.magic p00 in
let x0 : 'tv_const_vol = Obj.magic x0 in
let _startpos = _startpos_x0_ in
let ty =
let p = p0 in
-# 516 "parser_cocci_menhir.mly"
+# 661 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.TypeName(P.id2mcode p)) )
-# 36219 "parser_cocci_menhir.ml"
+# 42327 "parser_cocci_menhir.ml"
in
-# 525 "parser_cocci_menhir.mly"
+# 670 "parser_cocci_menhir.mly"
( ty )
-# 36225 "parser_cocci_menhir.ml"
+# 42333 "parser_cocci_menhir.ml"
in
let cv =
# 41 "standard.mly"
( Some x )
-# 36233 "parser_cocci_menhir.ml"
+# 42341 "parser_cocci_menhir.ml"
in
-# 542 "parser_cocci_menhir.mly"
+# 691 "parser_cocci_menhir.mly"
( P.pointerify (P.make_cv cv ty) m )
-# 36239 "parser_cocci_menhir.ml"
+# 42347 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let rp : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 36270 "parser_cocci_menhir.ml"
+# 42378 "parser_cocci_menhir.ml"
) = Obj.magic rp in
- let t : 'tv_midzero_list_ctype_ctype_ = Obj.magic t in
+ let t : 'tv_midzero_list_mctype_mctype_ = Obj.magic t in
let lp : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 36276 "parser_cocci_menhir.ml"
+# 42384 "parser_cocci_menhir.ml"
) = Obj.magic lp in
let _startpos = _startpos_lp_ in
let _endpos = _endpos_rp_ in
let _v : 'tv_typedef_ctype =
-# 544 "parser_cocci_menhir.mly"
+# 693 "parser_cocci_menhir.mly"
( let (mids,code) = t in
Ast0.wrap
(Ast0.DisjType(P.clt2mcode "(" lp,code,mids, P.clt2mcode ")" rp)) )
-# 36285 "parser_cocci_menhir.ml"
+# 42393 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 132 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 42414 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_typedef_ctype =
+# 696 "parser_cocci_menhir.mly"
+ ( tmeta_to_type _1 )
+# 42421 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_typedef_ident =
-# 1541 "parser_cocci_menhir.mly"
+# 1901 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.TypeName(P.id2mcode _1)) )
-# 36309 "parser_cocci_menhir.ml"
+# 42445 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 64 "parser_cocci_menhir.mly"
+# 132 "parser_cocci_menhir.mly"
(Parse_aux.info)
-# 36330 "parser_cocci_menhir.ml"
+# 42466 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_typedef_ident =
-# 1543 "parser_cocci_menhir.mly"
+# 1902 "parser_cocci_menhir.mly"
+ ( tmeta_to_type _1 )
+# 42473 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 131 "parser_cocci_menhir.mly"
+ (Parse_aux.info)
+# 42494 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_typedef_ident =
+# 1904 "parser_cocci_menhir.mly"
( let (nm,pure,clt) = _1 in
Ast0.wrap(Ast0.MetaType(P.clt2mcode nm clt,pure)) )
-# 36338 "parser_cocci_menhir.ml"
+# 42502 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
-# 1279 "parser_cocci_menhir.mly"
+# 1496 "parser_cocci_menhir.mly"
( _1 )
-# 36362 "parser_cocci_menhir.ml"
+# 42526 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 36389 "parser_cocci_menhir.ml"
+# 42553 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
-# 1281 "parser_cocci_menhir.mly"
+# 1498 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
-# 36396 "parser_cocci_menhir.ml"
+# 42560 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 36423 "parser_cocci_menhir.ml"
+# 42587 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
-# 1283 "parser_cocci_menhir.mly"
+# 1500 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
-# 36430 "parser_cocci_menhir.ml"
+# 42594 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
-# 1285 "parser_cocci_menhir.mly"
+# 1502 "parser_cocci_menhir.mly"
( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 36460 "parser_cocci_menhir.ml"
+# 42624 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 36487 "parser_cocci_menhir.ml"
+# 42651 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
-# 1287 "parser_cocci_menhir.mly"
+# 1504 "parser_cocci_menhir.mly"
( let mcode = P.clt2mcode Ast.Not _1 in
Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 36495 "parser_cocci_menhir.ml"
+# 42659 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_dot_expressions_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 36522 "parser_cocci_menhir.ml"
+# 42686 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
-# 1290 "parser_cocci_menhir.mly"
+# 1507 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
-# 36529 "parser_cocci_menhir.ml"
+# 42693 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let rp : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 36565 "parser_cocci_menhir.ml"
+# 42729 "parser_cocci_menhir.ml"
) = Obj.magic rp in
let t : 'tv_ctype = Obj.magic t in
let lp : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 36571 "parser_cocci_menhir.ml"
+# 42735 "parser_cocci_menhir.ml"
) = Obj.magic lp in
let s : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 36576 "parser_cocci_menhir.ml"
+# 42740 "parser_cocci_menhir.ml"
) = Obj.magic s in
let _startpos = _startpos_s_ in
let _endpos = _endpos_rp_ in
let _v : 'tv_unary_expr_eexpr_dot_expressions_ =
-# 1292 "parser_cocci_menhir.mly"
+# 1509 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
P.clt2mcode "(" lp,t,
P.clt2mcode ")" rp)) )
-# 36585 "parser_cocci_menhir.ml"
+# 42749 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_unary_expr_eexpr_invalid_ =
-# 1279 "parser_cocci_menhir.mly"
+# 1496 "parser_cocci_menhir.mly"
( _1 )
-# 36609 "parser_cocci_menhir.ml"
+# 42773 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 36636 "parser_cocci_menhir.ml"
+# 42800 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_invalid_ =
-# 1281 "parser_cocci_menhir.mly"
+# 1498 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
-# 36643 "parser_cocci_menhir.ml"
+# 42807 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 36670 "parser_cocci_menhir.ml"
+# 42834 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_invalid_ =
-# 1283 "parser_cocci_menhir.mly"
+# 1500 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
-# 36677 "parser_cocci_menhir.ml"
+# 42841 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_invalid_ =
-# 1285 "parser_cocci_menhir.mly"
+# 1502 "parser_cocci_menhir.mly"
( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 36707 "parser_cocci_menhir.ml"
+# 42871 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 36734 "parser_cocci_menhir.ml"
+# 42898 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_invalid_ =
-# 1287 "parser_cocci_menhir.mly"
+# 1504 "parser_cocci_menhir.mly"
( let mcode = P.clt2mcode Ast.Not _1 in
Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 36742 "parser_cocci_menhir.ml"
+# 42906 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_invalid_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 36769 "parser_cocci_menhir.ml"
+# 42933 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_invalid_ =
-# 1290 "parser_cocci_menhir.mly"
+# 1507 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
-# 36776 "parser_cocci_menhir.ml"
+# 42940 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let rp : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 36812 "parser_cocci_menhir.ml"
+# 42976 "parser_cocci_menhir.ml"
) = Obj.magic rp in
let t : 'tv_ctype = Obj.magic t in
let lp : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 36818 "parser_cocci_menhir.ml"
+# 42982 "parser_cocci_menhir.ml"
) = Obj.magic lp in
let s : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 36823 "parser_cocci_menhir.ml"
+# 42987 "parser_cocci_menhir.ml"
) = Obj.magic s in
let _startpos = _startpos_s_ in
let _endpos = _endpos_rp_ in
let _v : 'tv_unary_expr_eexpr_invalid_ =
-# 1292 "parser_cocci_menhir.mly"
+# 1509 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
P.clt2mcode "(" lp,t,
P.clt2mcode ")" rp)) )
-# 36832 "parser_cocci_menhir.ml"
+# 42996 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
-# 1279 "parser_cocci_menhir.mly"
+# 1496 "parser_cocci_menhir.mly"
( _1 )
-# 36856 "parser_cocci_menhir.ml"
+# 43020 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 36883 "parser_cocci_menhir.ml"
+# 43047 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
-# 1281 "parser_cocci_menhir.mly"
+# 1498 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
-# 36890 "parser_cocci_menhir.ml"
+# 43054 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 36917 "parser_cocci_menhir.ml"
+# 43081 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
-# 1283 "parser_cocci_menhir.mly"
+# 1500 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
-# 36924 "parser_cocci_menhir.ml"
+# 43088 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
-# 1285 "parser_cocci_menhir.mly"
+# 1502 "parser_cocci_menhir.mly"
( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 36954 "parser_cocci_menhir.ml"
+# 43118 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 36981 "parser_cocci_menhir.ml"
+# 43145 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
-# 1287 "parser_cocci_menhir.mly"
+# 1504 "parser_cocci_menhir.mly"
( let mcode = P.clt2mcode Ast.Not _1 in
Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 36989 "parser_cocci_menhir.ml"
+# 43153 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_eexpr_nest_expressions_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 37016 "parser_cocci_menhir.ml"
+# 43180 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
-# 1290 "parser_cocci_menhir.mly"
+# 1507 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
-# 37023 "parser_cocci_menhir.ml"
+# 43187 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let rp : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 37059 "parser_cocci_menhir.ml"
+# 43223 "parser_cocci_menhir.ml"
) = Obj.magic rp in
let t : 'tv_ctype = Obj.magic t in
let lp : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 37065 "parser_cocci_menhir.ml"
+# 43229 "parser_cocci_menhir.ml"
) = Obj.magic lp in
let s : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 37070 "parser_cocci_menhir.ml"
+# 43234 "parser_cocci_menhir.ml"
) = Obj.magic s in
let _startpos = _startpos_s_ in
let _endpos = _endpos_rp_ in
let _v : 'tv_unary_expr_eexpr_nest_expressions_ =
-# 1292 "parser_cocci_menhir.mly"
+# 1509 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
P.clt2mcode "(" lp,t,
P.clt2mcode ")" rp)) )
-# 37079 "parser_cocci_menhir.ml"
+# 43243 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_unary_expr_expr_invalid_ =
-# 1279 "parser_cocci_menhir.mly"
+# 1496 "parser_cocci_menhir.mly"
( _1 )
-# 37103 "parser_cocci_menhir.ml"
+# 43267 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 37130 "parser_cocci_menhir.ml"
+# 43294 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_expr_invalid_ =
-# 1281 "parser_cocci_menhir.mly"
+# 1498 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
-# 37137 "parser_cocci_menhir.ml"
+# 43301 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 85 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 37164 "parser_cocci_menhir.ml"
+# 43328 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_expr_invalid_ =
-# 1283 "parser_cocci_menhir.mly"
+# 1500 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
-# 37171 "parser_cocci_menhir.ml"
+# 43335 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_expr_invalid_ =
-# 1285 "parser_cocci_menhir.mly"
+# 1502 "parser_cocci_menhir.mly"
( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 37201 "parser_cocci_menhir.ml"
+# 43365 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 37228 "parser_cocci_menhir.ml"
+# 43392 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_expr_invalid_ =
-# 1287 "parser_cocci_menhir.mly"
+# 1504 "parser_cocci_menhir.mly"
( let mcode = P.clt2mcode Ast.Not _1 in
Ast0.wrap(Ast0.Unary(_2, mcode)) )
-# 37236 "parser_cocci_menhir.ml"
+# 43400 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
};
} = _menhir_stack in
- let _2 : 'tv_unary_expr_expr_invalid_ = Obj.magic _2 in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 37263 "parser_cocci_menhir.ml"
+# 43427 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_unary_expr_expr_invalid_ =
-# 1290 "parser_cocci_menhir.mly"
+# 1507 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
-# 37270 "parser_cocci_menhir.ml"
+# 43434 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
};
} = _menhir_stack in
let rp : (
-# 77 "parser_cocci_menhir.mly"
+# 144 "parser_cocci_menhir.mly"
(Data.clt)
-# 37306 "parser_cocci_menhir.ml"
+# 43470 "parser_cocci_menhir.ml"
) = Obj.magic rp in
let t : 'tv_ctype = Obj.magic t in
let lp : (
-# 76 "parser_cocci_menhir.mly"
+# 143 "parser_cocci_menhir.mly"
(Data.clt)
-# 37312 "parser_cocci_menhir.ml"
+# 43476 "parser_cocci_menhir.ml"
) = Obj.magic lp in
let s : (
-# 58 "parser_cocci_menhir.mly"
+# 124 "parser_cocci_menhir.mly"
(Data.clt)
-# 37317 "parser_cocci_menhir.ml"
+# 43481 "parser_cocci_menhir.ml"
) = Obj.magic s in
let _startpos = _startpos_s_ in
let _endpos = _endpos_rp_ in
let _v : 'tv_unary_expr_expr_invalid_ =
-# 1292 "parser_cocci_menhir.mly"
+# 1509 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
P.clt2mcode "(" lp,t,
P.clt2mcode ")" rp)) )
-# 37326 "parser_cocci_menhir.ml"
+# 43490 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.endp = _endpos__1_;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
+ let _1 : 'tv_postfix_expr_eexpr_dot_expressions_ = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__1_ in
+ let _v : 'tv_unary_expr_bis =
+# 1515 "parser_cocci_menhir.mly"
+ ( _1 )
+# 43514 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
+ let _1 : (
+# 152 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 43541 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_unary_expr_bis =
+# 1517 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Inc _1)) )
+# 43548 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
let _1 : (
-# 93 "parser_cocci_menhir.mly"
+# 152 "parser_cocci_menhir.mly"
(Data.clt)
-# 37347 "parser_cocci_menhir.ml"
+# 43575 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_unary_expr_bis =
+# 1519 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.Infix (_2, P.clt2mcode Ast.Dec _1)) )
+# 43582 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_cast_expr_eexpr_dot_expressions_ = Obj.magic _2 in
+ let _1 : 'tv_unary_op = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_unary_expr_bis =
+# 1521 "parser_cocci_menhir.mly"
+ ( let mcode = _1 in Ast0.wrap(Ast0.Unary(_2, mcode)) )
+# 43612 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
+ let _1 : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 43639 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_unary_expr_bis =
+# 1523 "parser_cocci_menhir.mly"
+ ( let mcode = P.clt2mcode Ast.Not _1 in
+ Ast0.wrap(Ast0.Unary(_2, mcode)) )
+# 43647 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = _2;
+ MenhirLib.EngineTypes.startp = _startpos__2_;
+ MenhirLib.EngineTypes.endp = _endpos__2_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ } = _menhir_stack in
+ let _2 : 'tv_unary_expr_bis = Obj.magic _2 in
+ let _1 : (
+# 124 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 43674 "parser_cocci_menhir.ml"
+ ) = Obj.magic _1 in
+ let _startpos = _startpos__1_ in
+ let _endpos = _endpos__2_ in
+ let _v : 'tv_unary_expr_bis =
+# 1526 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.SizeOfExpr (P.clt2mcode "sizeof" _1, _2)) )
+# 43681 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.semv = rp;
+ MenhirLib.EngineTypes.startp = _startpos_rp_;
+ MenhirLib.EngineTypes.endp = _endpos_rp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = t;
+ MenhirLib.EngineTypes.startp = _startpos_t_;
+ MenhirLib.EngineTypes.endp = _endpos_t_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.semv = lp;
+ MenhirLib.EngineTypes.startp = _startpos_lp_;
+ MenhirLib.EngineTypes.endp = _endpos_lp_;
+ MenhirLib.EngineTypes.next = {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = s;
+ MenhirLib.EngineTypes.startp = _startpos_s_;
+ MenhirLib.EngineTypes.endp = _endpos_s_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ };
+ };
+ };
+ } = _menhir_stack in
+ let rp : (
+# 144 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 43717 "parser_cocci_menhir.ml"
+ ) = Obj.magic rp in
+ let t : 'tv_ctype = Obj.magic t in
+ let lp : (
+# 143 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 43723 "parser_cocci_menhir.ml"
+ ) = Obj.magic lp in
+ let s : (
+# 124 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 43728 "parser_cocci_menhir.ml"
+ ) = Obj.magic s in
+ let _startpos = _startpos_s_ in
+ let _endpos = _endpos_rp_ in
+ let _v : 'tv_unary_expr_bis =
+# 1528 "parser_cocci_menhir.mly"
+ ( Ast0.wrap(Ast0.SizeOfType (P.clt2mcode "sizeof" s,
+ P.clt2mcode "(" lp,t,
+ P.clt2mcode ")" rp)) )
+# 43737 "parser_cocci_menhir.ml"
+ in
+ _menhir_env.MenhirLib.EngineTypes.stack <- {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = Obj.repr _v;
+ MenhirLib.EngineTypes.startp = _startpos;
+ MenhirLib.EngineTypes.endp = _endpos;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ });
+ (fun _menhir_env ->
+ let _menhir_stack = _menhir_env.MenhirLib.EngineTypes.stack in
+ let {
+ MenhirLib.EngineTypes.state = _menhir_s;
+ MenhirLib.EngineTypes.semv = _1;
+ MenhirLib.EngineTypes.startp = _startpos__1_;
+ MenhirLib.EngineTypes.endp = _endpos__1_;
+ MenhirLib.EngineTypes.next = _menhir_stack;
+ } = _menhir_stack in
+ let _1 : (
+# 160 "parser_cocci_menhir.mly"
+ (Data.clt)
+# 43758 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_unary_op =
-# 1296 "parser_cocci_menhir.mly"
+# 1532 "parser_cocci_menhir.mly"
( P.clt2mcode Ast.GetRef _1 )
-# 37354 "parser_cocci_menhir.ml"
+# 43765 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 37375 "parser_cocci_menhir.ml"
+# 43786 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_unary_op =
-# 1297 "parser_cocci_menhir.mly"
+# 1533 "parser_cocci_menhir.mly"
( P.clt2mcode Ast.DeRef _1 )
-# 37382 "parser_cocci_menhir.ml"
+# 43793 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 98 "parser_cocci_menhir.mly"
+# 165 "parser_cocci_menhir.mly"
(Data.clt)
-# 37403 "parser_cocci_menhir.ml"
+# 43814 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_unary_op =
-# 1298 "parser_cocci_menhir.mly"
+# 1534 "parser_cocci_menhir.mly"
( P.clt2mcode Ast.UnPlus _1 )
-# 37410 "parser_cocci_menhir.ml"
+# 43821 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 98 "parser_cocci_menhir.mly"
+# 165 "parser_cocci_menhir.mly"
(Data.clt)
-# 37431 "parser_cocci_menhir.ml"
+# 43842 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_unary_op =
-# 1299 "parser_cocci_menhir.mly"
+# 1535 "parser_cocci_menhir.mly"
( P.clt2mcode Ast.UnMinus _1 )
-# 37438 "parser_cocci_menhir.ml"
+# 43849 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
MenhirLib.EngineTypes.next = _menhir_stack;
} = _menhir_stack in
let _1 : (
-# 99 "parser_cocci_menhir.mly"
+# 166 "parser_cocci_menhir.mly"
(Data.clt)
-# 37459 "parser_cocci_menhir.ml"
+# 43870 "parser_cocci_menhir.ml"
) = Obj.magic _1 in
let _startpos = _startpos__1_ in
let _endpos = _endpos__1_ in
let _v : 'tv_unary_op =
-# 1300 "parser_cocci_menhir.mly"
+# 1536 "parser_cocci_menhir.mly"
( P.clt2mcode Ast.Tilde _1 )
-# 37466 "parser_cocci_menhir.ml"
+# 43877 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_when_start =
-# 1761 "parser_cocci_menhir.mly"
+# 2154 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.DOTS((Ast0.wrap(Ast0.Exp(_1)))::_2)) )
-# 37496 "parser_cocci_menhir.ml"
+# 43907 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__2_ in
let _v : 'tv_when_start =
-# 1763 "parser_cocci_menhir.mly"
+# 2156 "parser_cocci_menhir.mly"
( Ast0.wrap(Ast0.DOTS(_1@_2)) )
-# 37526 "parser_cocci_menhir.ml"
+# 43937 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos_w_ in
let _endpos = _endpos_w_ in
let _v : 'tv_whenppdecs =
-# 887 "parser_cocci_menhir.mly"
+# 1079 "parser_cocci_menhir.mly"
( w )
-# 37550 "parser_cocci_menhir.ml"
+# 43961 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ =
-# 1829 "parser_cocci_menhir.mly"
+# 2201 "parser_cocci_menhir.mly"
( [Ast0.WhenNot w] )
-# 37586 "parser_cocci_menhir.ml"
+# 43997 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ =
-# 1830 "parser_cocci_menhir.mly"
+# 2202 "parser_cocci_menhir.mly"
( [Ast0.WhenAlways w] )
-# 37622 "parser_cocci_menhir.ml"
+# 44033 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__3_ in
let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ =
-# 1832 "parser_cocci_menhir.mly"
+# 2204 "parser_cocci_menhir.mly"
( List.map (function x -> Ast0.WhenModifier(x)) _2 )
-# 37654 "parser_cocci_menhir.ml"
+# 44065 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ =
-# 1833 "parser_cocci_menhir.mly"
+# 2205 "parser_cocci_menhir.mly"
( [Ast0.WhenNotTrue e] )
-# 37690 "parser_cocci_menhir.ml"
+# 44101 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let _startpos = _startpos__1_ in
let _endpos = _endpos__4_ in
let _v : 'tv_whens_when_start_rule_elem_statement_any_strict_ =
-# 1834 "parser_cocci_menhir.mly"
+# 2206 "parser_cocci_menhir.mly"
( [Ast0.WhenNotFalse e] )
-# 37726 "parser_cocci_menhir.ml"
+# 44137 "parser_cocci_menhir.ml"
in
_menhir_env.MenhirLib.EngineTypes.stack <- {
MenhirLib.EngineTypes.state = _menhir_s;
let rec script_meta_main =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 1781 lexer lexbuf) : (
-# 159 "parser_cocci_menhir.mly"
- (string * (string * string))
-# 37750 "parser_cocci_menhir.ml"
+ (Obj.magic (MenhirInterpreter.entry 2018 lexer lexbuf) : (
+# 228 "parser_cocci_menhir.mly"
+ ((string option (*string*) * string option (*ast*)) * (Ast_cocci.meta_name * Ast_cocci.metavar) option)
+# 44161 "parser_cocci_menhir.ml"
))
and rule_name =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 1711 lexer lexbuf) : (
-# 153 "parser_cocci_menhir.mly"
+ (Obj.magic (MenhirInterpreter.entry 1943 lexer lexbuf) : (
+# 222 "parser_cocci_menhir.mly"
(Ast_cocci.rulename)
-# 37758 "parser_cocci_menhir.ml"
+# 44169 "parser_cocci_menhir.ml"
))
and reinit =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 1709 lexer lexbuf) : (
-# 131 "parser_cocci_menhir.mly"
+ (Obj.magic (MenhirInterpreter.entry 1941 lexer lexbuf) : (
+# 200 "parser_cocci_menhir.mly"
(unit)
-# 37766 "parser_cocci_menhir.ml"
+# 44177 "parser_cocci_menhir.ml"
))
and plus_main =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 1673 lexer lexbuf) : (
-# 140 "parser_cocci_menhir.mly"
+ (Obj.magic (MenhirInterpreter.entry 1905 lexer lexbuf) : (
+# 209 "parser_cocci_menhir.mly"
(Ast0_cocci.rule)
-# 37774 "parser_cocci_menhir.ml"
+# 44185 "parser_cocci_menhir.ml"
))
and plus_exp_main =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 1665 lexer lexbuf) : (
-# 143 "parser_cocci_menhir.mly"
+ (Obj.magic (MenhirInterpreter.entry 1897 lexer lexbuf) : (
+# 212 "parser_cocci_menhir.mly"
(Ast0_cocci.rule)
-# 37782 "parser_cocci_menhir.ml"
+# 44193 "parser_cocci_menhir.ml"
))
and never_used =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 1659 lexer lexbuf) : (
-# 168 "parser_cocci_menhir.mly"
+ (Obj.magic (MenhirInterpreter.entry 1891 lexer lexbuf) : (
+# 237 "parser_cocci_menhir.mly"
(unit)
-# 37790 "parser_cocci_menhir.ml"
+# 44201 "parser_cocci_menhir.ml"
))
and minus_main =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 1579 lexer lexbuf) : (
-# 134 "parser_cocci_menhir.mly"
+ (Obj.magic (MenhirInterpreter.entry 1806 lexer lexbuf) : (
+# 203 "parser_cocci_menhir.mly"
(Ast0_cocci.rule)
-# 37798 "parser_cocci_menhir.ml"
+# 44209 "parser_cocci_menhir.ml"
))
and minus_exp_main =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 1567 lexer lexbuf) : (
-# 137 "parser_cocci_menhir.mly"
+ (Obj.magic (MenhirInterpreter.entry 1794 lexer lexbuf) : (
+# 206 "parser_cocci_menhir.mly"
(Ast0_cocci.rule)
-# 37806 "parser_cocci_menhir.ml"
+# 44217 "parser_cocci_menhir.ml"
))
and meta_main =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 1564 lexer lexbuf) : (
-# 157 "parser_cocci_menhir.mly"
+ (Obj.magic (MenhirInterpreter.entry 1791 lexer lexbuf) : (
+# 226 "parser_cocci_menhir.mly"
((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
-# 37814 "parser_cocci_menhir.ml"
+# 44225 "parser_cocci_menhir.ml"
))
and iso_rule_name =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 1560 lexer lexbuf) : (
-# 149 "parser_cocci_menhir.mly"
+ (Obj.magic (MenhirInterpreter.entry 1787 lexer lexbuf) : (
+# 218 "parser_cocci_menhir.mly"
(Ast_cocci.rulename)
-# 37822 "parser_cocci_menhir.ml"
+# 44233 "parser_cocci_menhir.ml"
))
and iso_meta_main =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 1329 lexer lexbuf) : (
-# 165 "parser_cocci_menhir.mly"
+ (Obj.magic (MenhirInterpreter.entry 1516 lexer lexbuf) : (
+# 234 "parser_cocci_menhir.mly"
((Ast_cocci.metavar,Ast_cocci.metavar) Common.either list)
-# 37830 "parser_cocci_menhir.ml"
+# 44241 "parser_cocci_menhir.ml"
))
and iso_main =
fun lexer lexbuf ->
- (Obj.magic (MenhirInterpreter.entry 11 lexer lexbuf) : (
-# 162 "parser_cocci_menhir.mly"
+ (Obj.magic (MenhirInterpreter.entry 18 lexer lexbuf) : (
+# 231 "parser_cocci_menhir.mly"
(Ast0_cocci.anything list list)
-# 37838 "parser_cocci_menhir.ml"
+# 44249 "parser_cocci_menhir.ml"
))
and include_main =
fun lexer lexbuf ->
(Obj.magic (MenhirInterpreter.entry 0 lexer lexbuf) : (
-# 146 "parser_cocci_menhir.mly"
+# 215 "parser_cocci_menhir.mly"
(Data.incl_iso list)
-# 37846 "parser_cocci_menhir.ml"
+# 44257 "parser_cocci_menhir.ml"
))