1478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* A Bison parser, made by GNU Bison 2.1.  */
2478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
3478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Skeleton parser for Yacc-like parsing with Bison,
4478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
5478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
6478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   This program is free software; you can redistribute it and/or modify
7478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   it under the terms of the GNU General Public License as published by
8478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   the Free Software Foundation; either version 2, or (at your option)
9478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   any later version.
10478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
11478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   This program is distributed in the hope that it will be useful,
12478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   but WITHOUT ANY WARRANTY; without even the implied warranty of
13478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   GNU General Public License for more details.
15478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
16478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   You should have received a copy of the GNU General Public License
17478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   along with this program; if not, write to the Free Software
18478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   Foundation, Inc., 51 Franklin Street, Fifth Floor,
19478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   Boston, MA 02110-1301, USA.  */
20478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
21478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* As a special exception, when this file is copied by Bison into a
22478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   Bison output file, you may use that output file without restriction.
23478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   This special exception was added by the Free Software Foundation
24478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   in version 1.24 of Bison.  */
25478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
26478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Written by Richard Stallman by simplifying the original so called
27478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   ``semantic'' parser.  */
28478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
29478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* All symbols defined below should begin with yy or YY, to avoid
30478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   infringing on user name space.  This should be done even for local
31478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   variables, as they might otherwise be expanded by user macros.
32478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   There are some unavoidable exceptions within include files to
33478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   define necessary library symbols; they are noted "INFRINGES ON
34478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   USER NAME SPACE" below.  */
35478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
36478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Identify Bison output.  */
37478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYBISON 1
38478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
39478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Bison version.  */
40478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYBISON_VERSION "2.1"
41478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
42478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Skeleton name.  */
43478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYSKELETON_NAME "yacc.c"
44478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
45478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Pure parsers.  */
46478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYPURE 0
47478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
48478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Using locations.  */
49478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYLSP_NEEDED 0
50478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
51478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Substitute the variable and function names.  */
52478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define yyparse pcap_parse
53478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define yylex   pcap_lex
54478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define yyerror pcap_error
55478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define yylval  pcap_lval
56478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define yychar  pcap_char
57478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define yydebug pcap_debug
58478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define yynerrs pcap_nerrs
59478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
60478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
61478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Tokens.  */
62478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef YYTOKENTYPE
63478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYTOKENTYPE
64478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   /* Put the tokens into the symbol table, so that GDB and other debuggers
65478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      know about them.  */
66478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   enum yytokentype {
67478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     DST = 258,
68478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     SRC = 259,
69478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     HOST = 260,
70478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     GATEWAY = 261,
71478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     NET = 262,
72478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     NETMASK = 263,
73478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PORT = 264,
74478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PORTRANGE = 265,
75478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     LESS = 266,
76478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     GREATER = 267,
77478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PROTO = 268,
78478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PROTOCHAIN = 269,
79478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     CBYTE = 270,
80478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     ARP = 271,
81478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     RARP = 272,
82478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     IP = 273,
83478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     SCTP = 274,
84478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     TCP = 275,
85478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     UDP = 276,
86478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     ICMP = 277,
87478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     IGMP = 278,
88478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     IGRP = 279,
89478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PIM = 280,
90478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     VRRP = 281,
91478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     ATALK = 282,
92478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     AARP = 283,
93478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     DECNET = 284,
94478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     LAT = 285,
95478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     SCA = 286,
96478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     MOPRC = 287,
97478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     MOPDL = 288,
98478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     TK_BROADCAST = 289,
99478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     TK_MULTICAST = 290,
100478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     NUM = 291,
101478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     INBOUND = 292,
102478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     OUTBOUND = 293,
103478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PF_IFNAME = 294,
104478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PF_RSET = 295,
105478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PF_RNR = 296,
106478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PF_SRNR = 297,
107478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PF_REASON = 298,
108478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PF_ACTION = 299,
109478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     LINK = 300,
110478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     GEQ = 301,
111478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     LEQ = 302,
112478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     NEQ = 303,
113478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     ID = 304,
114478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     EID = 305,
115478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     HID = 306,
116478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     HID6 = 307,
117478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     AID = 308,
118478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     LSH = 309,
119478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     RSH = 310,
120478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     LEN = 311,
121478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     IPV6 = 312,
122478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     ICMPV6 = 313,
123478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     AH = 314,
124478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     ESP = 315,
125478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     VLAN = 316,
126478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     MPLS = 317,
127478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PPPOED = 318,
128478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PPPOES = 319,
129478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     ISO = 320,
130478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     ESIS = 321,
131478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     CLNP = 322,
132478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     ISIS = 323,
133478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     L1 = 324,
134478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     L2 = 325,
135478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     IIH = 326,
136478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     LSP = 327,
137478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     SNP = 328,
138478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     CSNP = 329,
139478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     PSNP = 330,
140478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     STP = 331,
141478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     IPX = 332,
142478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     NETBEUI = 333,
143478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     LANE = 334,
144478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     LLC = 335,
145478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     METAC = 336,
146478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     BCC = 337,
147478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     SC = 338,
148478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     ILMIC = 339,
149478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     OAMF4EC = 340,
150478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     OAMF4SC = 341,
151478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     OAM = 342,
152478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     OAMF4 = 343,
153478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     CONNECTMSG = 344,
154478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     METACONNECT = 345,
155478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     VPI = 346,
156478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     VCI = 347,
157478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     RADIO = 348,
158478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     FISU = 349,
159478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     LSSU = 350,
160478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     MSU = 351,
161478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     SIO = 352,
162478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     OPC = 353,
163478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     DPC = 354,
164478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     SLS = 355,
165478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     AND = 356,
166478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     OR = 357,
167478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     UMINUS = 358
168478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   };
169478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
170478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Tokens.  */
171478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define DST 258
172478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define SRC 259
173478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define HOST 260
174478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define GATEWAY 261
175478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define NET 262
176478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define NETMASK 263
177478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PORT 264
178478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PORTRANGE 265
179478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define LESS 266
180478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define GREATER 267
181478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PROTO 268
182478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PROTOCHAIN 269
183478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define CBYTE 270
184478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ARP 271
185478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define RARP 272
186478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define IP 273
187478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define SCTP 274
188478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define TCP 275
189478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define UDP 276
190478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ICMP 277
191478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define IGMP 278
192478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define IGRP 279
193478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PIM 280
194478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define VRRP 281
195478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ATALK 282
196478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define AARP 283
197478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define DECNET 284
198478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define LAT 285
199478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define SCA 286
200478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define MOPRC 287
201478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define MOPDL 288
202478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define TK_BROADCAST 289
203478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define TK_MULTICAST 290
204478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define NUM 291
205478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define INBOUND 292
206478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define OUTBOUND 293
207478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PF_IFNAME 294
208478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PF_RSET 295
209478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PF_RNR 296
210478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PF_SRNR 297
211478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PF_REASON 298
212478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PF_ACTION 299
213478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define LINK 300
214478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define GEQ 301
215478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define LEQ 302
216478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define NEQ 303
217478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ID 304
218478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define EID 305
219478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define HID 306
220478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define HID6 307
221478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define AID 308
222478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define LSH 309
223478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define RSH 310
224478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define LEN 311
225478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define IPV6 312
226478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ICMPV6 313
227478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define AH 314
228478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ESP 315
229478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define VLAN 316
230478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define MPLS 317
231478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PPPOED 318
232478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PPPOES 319
233478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ISO 320
234478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ESIS 321
235478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define CLNP 322
236478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ISIS 323
237478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define L1 324
238478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define L2 325
239478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define IIH 326
240478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define LSP 327
241478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define SNP 328
242478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define CSNP 329
243478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define PSNP 330
244478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define STP 331
245478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define IPX 332
246478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define NETBEUI 333
247478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define LANE 334
248478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define LLC 335
249478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define METAC 336
250478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define BCC 337
251478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define SC 338
252478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define ILMIC 339
253478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define OAMF4EC 340
254478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define OAMF4SC 341
255478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define OAM 342
256478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define OAMF4 343
257478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define CONNECTMSG 344
258478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define METACONNECT 345
259478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define VPI 346
260478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define VCI 347
261478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define RADIO 348
262478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define FISU 349
263478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define LSSU 350
264478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define MSU 351
265478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define SIO 352
266478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define OPC 353
267478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define DPC 354
268478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define SLS 355
269478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define AND 356
270478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define OR 357
271478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define UMINUS 358
272478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
273478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
274478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
275478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
276478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Copy the first part of user declarations.  */
277478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 1 "grammar.y"
278478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
279478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*
280478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * Copyright (c) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996
281478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project *	The Regents of the University of California.  All rights reserved.
282478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project *
283478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * Redistribution and use in source and binary forms, with or without
284478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * modification, are permitted provided that: (1) source code distributions
285478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * retain the above copyright notice and this paragraph in its entirety, (2)
286478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * distributions including binary code include the above copyright notice and
287478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * this paragraph in its entirety in the documentation or other materials
288478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * provided with the distribution, and (3) all advertising materials mentioning
289478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * features or use of this software display the following acknowledgement:
290478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * ``This product includes software developed by the University of California,
291478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of
292478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * the University nor the names of its contributors may be used to endorse
293478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * or promote products derived from this software without specific prior
294478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * written permission.
295478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
296478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
297478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
298478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project *
299478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project */
300478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef lint
301478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const char rcsid[] _U_ =
302478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    "@(#) $Header: /tcpdump/master/libpcap/grammar.y,v 1.86.2.9 2007/09/12 19:17:25 guy Exp $ (LBL)";
303478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
304478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
305478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef HAVE_CONFIG_H
306478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include "config.h"
307478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
308478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
309478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef WIN32
310478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include <pcap-stdinc.h>
311478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else /* WIN32 */
312478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include <sys/types.h>
313478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include <sys/socket.h>
314478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /* WIN32 */
315478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
316478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include <stdlib.h>
317478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
318478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef WIN32
319478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if __STDC__
320478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstruct mbuf;
321478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstruct rtentry;
322478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
323478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
324478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include <netinet/in.h>
325478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /* WIN32 */
326478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
327478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include <stdio.h>
328478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
329478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include "pcap-int.h"
330478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
331478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include "gencode.h"
332478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef HAVE_NET_PFVAR_H
333478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include <net/if.h>
334478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include <net/pfvar.h>
335478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include <net/if_pflog.h>
336478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
337478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include <pcap-namedb.h>
338478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
339478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef HAVE_OS_PROTO_H
340478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#include "os-proto.h"
341478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
342478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
343478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define QSET(q, p, d, a) (q).proto = (p),\
344478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project			 (q).dir = (d),\
345478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project			 (q).addr = (a)
346478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
347478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint n_errors = 0;
348478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
349478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic struct qual qerr = { Q_UNDEF, Q_UNDEF, Q_UNDEF, Q_UNDEF };
350478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
351478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic void
352478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyerror(const char *msg)
353478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
354478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	++n_errors;
355478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	bpf_error("%s", msg);
356478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	/* NOTREACHED */
357478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
358478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
359478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef YYBISON
360478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint yyparse(void);
361478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
362478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint
363478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectpcap_parse()
364478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
365478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	return (yyparse());
366478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
367478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
368478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
369478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef HAVE_NET_PFVAR_H
370478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic int
371478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectpfreason_to_num(const char *reason)
372478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
373478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	const char *reasons[] = PFRES_NAMES;
374478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	int i;
375478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
376478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	for (i = 0; reasons[i]; i++) {
377478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		if (pcap_strcasecmp(reason, reasons[i]) == 0)
378478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project			return (i);
379478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	}
380478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	bpf_error("unknown PF reason");
381478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	/*NOTREACHED*/
382478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
383478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
384478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic int
385478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectpfaction_to_num(const char *action)
386478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
387478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	if (pcap_strcasecmp(action, "pass") == 0 ||
388478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    pcap_strcasecmp(action, "accept") == 0)
389478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		return (PF_PASS);
390478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	else if (pcap_strcasecmp(action, "drop") == 0 ||
391478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		pcap_strcasecmp(action, "block") == 0)
392478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		return (PF_DROP);
393478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	else {
394478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		bpf_error("unknown PF action");
395478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		/*NOTREACHED*/
396478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	}
397478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
398478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else /* !HAVE_NET_PFVAR_H */
399478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic int
400478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectpfreason_to_num(const char *reason)
401478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
402478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	bpf_error("libpcap was compiled on a machine without pf support");
403478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	/*NOTREACHED*/
404478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
405478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
406478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic int
407478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectpfaction_to_num(const char *action)
408478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
409478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	bpf_error("libpcap was compiled on a machine without pf support");
410478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	/*NOTREACHED*/
411478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
412478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /* HAVE_NET_PFVAR_H */
413478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
414478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
415478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Enabling traces.  */
416478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef YYDEBUG
417478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYDEBUG 0
418478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
419478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
420478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Enabling verbose error messages.  */
421478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef YYERROR_VERBOSE
422478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# undef YYERROR_VERBOSE
423478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYERROR_VERBOSE 1
424478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else
425478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYERROR_VERBOSE 0
426478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
427478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
428478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Enabling the token table.  */
429478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef YYTOKEN_TABLE
430478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYTOKEN_TABLE 0
431478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
432478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
433478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
434478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 138 "grammar.y"
435478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projecttypedef union YYSTYPE {
436478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	int i;
437478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	bpf_u_int32 h;
438478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	u_char *e;
439478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	char *s;
440478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	struct stmt *stmt;
441478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	struct arth *a;
442478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	struct {
443478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		struct qual q;
444478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		int atmfieldtype;
445478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		int mtp3fieldtype;
446478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		struct block *b;
447478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	} blk;
448478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	struct block *rblk;
449478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project} YYSTYPE;
450478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Line 196 of yacc.c.  */
451478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 452 "y.tab.c"
452478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define yystype YYSTYPE /* obsolescent; will be withdrawn */
453478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYSTYPE_IS_DECLARED 1
454478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYSTYPE_IS_TRIVIAL 1
455478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
456478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
457478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
458478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
459478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Copy the second part of user declarations.  */
460478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
461478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
462478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Line 219 of yacc.c.  */
463478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 464 "y.tab.c"
464478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
465478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
466478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYSIZE_T __SIZE_TYPE__
467478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
468478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if ! defined (YYSIZE_T) && defined (size_t)
469478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYSIZE_T size_t
470478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
471478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if ! defined (YYSIZE_T) && (defined (__STDC__) || defined (__cplusplus))
472478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
473478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYSIZE_T size_t
474478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
475478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if ! defined (YYSIZE_T)
476478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYSIZE_T unsigned int
477478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
478478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
479478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef YY_
480478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# if YYENABLE_NLS
481478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  if ENABLE_NLS
482478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
483478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   define YY_(msgid) dgettext ("bison-runtime", msgid)
484478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  endif
485478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
486478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# ifndef YY_
487478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  define YY_(msgid) msgid
488478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
489478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
490478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
491478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if ! defined (yyoverflow) || YYERROR_VERBOSE
492478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
493478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* The parser invokes alloca or malloc; define the necessary symbols.  */
494478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
495478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# ifdef YYSTACK_USE_ALLOCA
496478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  if YYSTACK_USE_ALLOCA
497478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   ifdef __GNUC__
498478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#    define YYSTACK_ALLOC __builtin_alloca
499478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   else
500478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#    define YYSTACK_ALLOC alloca
501478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#    if defined (__STDC__) || defined (__cplusplus)
502478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
503478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#     define YYINCLUDED_STDLIB_H
504478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#    endif
505478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   endif
506478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  endif
507478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
508478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
509478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# ifdef YYSTACK_ALLOC
510478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   /* Pacify GCC's `empty if-body' warning. */
511478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
512478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  ifndef YYSTACK_ALLOC_MAXIMUM
513478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    /* The OS might guarantee only one guard page at the bottom of the stack,
514478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       and a page size can be as small as 4096 bytes.  So we cannot safely
515478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
516478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       to allow for a few compiler-allocated temporary stack slots.  */
517478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2005 */
518478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  endif
519478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# else
520478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  define YYSTACK_ALLOC YYMALLOC
521478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  define YYSTACK_FREE YYFREE
522478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  ifndef YYSTACK_ALLOC_MAXIMUM
523478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   define YYSTACK_ALLOC_MAXIMUM ((YYSIZE_T) -1)
524478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  endif
525478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  ifdef __cplusplus
526478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectextern "C" {
527478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  endif
528478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  ifndef YYMALLOC
529478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   define YYMALLOC malloc
530478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   if (! defined (malloc) && ! defined (YYINCLUDED_STDLIB_H) \
531478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	&& (defined (__STDC__) || defined (__cplusplus)))
532478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectvoid *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
533478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   endif
534478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  endif
535478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  ifndef YYFREE
536478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   define YYFREE free
537478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   if (! defined (free) && ! defined (YYINCLUDED_STDLIB_H) \
538478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	&& (defined (__STDC__) || defined (__cplusplus)))
539478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectvoid free (void *); /* INFRINGES ON USER NAME SPACE */
540478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   endif
541478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  endif
542478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  ifdef __cplusplus
543478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
544478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  endif
545478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
546478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
547478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
548478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
549478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if (! defined (yyoverflow) \
550478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     && (! defined (__cplusplus) \
551478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	 || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
552478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
553478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* A type that is properly aligned for any stack member.  */
554478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectunion yyalloc
555478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
556478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  short int yyss;
557478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYSTYPE yyvs;
558478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  };
559478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
560478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* The size of the maximum gap between one aligned stack and the next.  */
561478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
562478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
563478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* The size of an array large to enough to hold all stacks, each with
564478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   N elements.  */
565478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYSTACK_BYTES(N) \
566478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     ((N) * (sizeof (short int) + sizeof (YYSTYPE))			\
567478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      + YYSTACK_GAP_MAXIMUM)
568478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
569478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Copy COUNT objects from FROM to TO.  The source and destination do
570478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   not overlap.  */
571478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# ifndef YYCOPY
572478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  if defined (__GNUC__) && 1 < __GNUC__
573478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   define YYCOPY(To, From, Count) \
574478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
575478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  else
576478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   define YYCOPY(To, From, Count)		\
577478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      do					\
578478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	{					\
579478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  YYSIZE_T yyi;				\
580478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  for (yyi = 0; yyi < (Count); yyi++)	\
581478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    (To)[yyi] = (From)[yyi];		\
582478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	}					\
583478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      while (0)
584478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  endif
585478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
586478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
587478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Relocate STACK from its old location to the new one.  The
588478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   local variables YYSIZE and YYSTACKSIZE give the old and new number of
589478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   elements in the stack, and YYPTR gives the new location of the
590478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   stack.  Advance YYPTR to a properly aligned location for the next
591478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   stack.  */
592478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYSTACK_RELOCATE(Stack)					\
593478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    do									\
594478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      {									\
595478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	YYSIZE_T yynewbytes;						\
596478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	YYCOPY (&yyptr->Stack, Stack, yysize);				\
597478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	Stack = &yyptr->Stack;						\
598478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
599478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	yyptr += yynewbytes / sizeof (*yyptr);				\
600478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      }									\
601478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    while (0)
602478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
603478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
604478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
605478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if defined (__STDC__) || defined (__cplusplus)
606478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   typedef signed char yysigned_char;
607478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else
608478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   typedef short int yysigned_char;
609478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
610478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
611478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYFINAL -- State number of the termination state. */
612478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYFINAL  3
613478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYLAST -- Last index in YYTABLE.  */
614478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYLAST   605
615478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
616478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYNTOKENS -- Number of terminals. */
617478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYNTOKENS  119
618478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYNNTS -- Number of nonterminals. */
619478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYNNTS  41
620478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYNRULES -- Number of rules. */
621478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYNRULES  186
622478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYNRULES -- Number of states. */
623478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYNSTATES  254
624478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
625478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
626478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYUNDEFTOK  2
627478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYMAXUTOK   358
628478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
629478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYTRANSLATE(YYX)						\
630478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
631478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
632478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
633478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const unsigned char yytranslate[] =
634478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
635478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
636478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
637478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
638478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,   103,     2,     2,     2,     2,   105,     2,
639478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     112,   111,   108,   106,     2,   107,     2,   109,     2,     2,
640478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,   118,     2,
641478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     115,   114,   113,     2,     2,     2,     2,     2,     2,     2,
642478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
643478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
644478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,   116,     2,   117,     2,     2,     2,     2,     2,     2,
645478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
646478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
647478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,   104,     2,     2,     2,     2,     2,
648478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
649478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
650478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
651478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
652478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
653478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
654478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
655478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
656478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
657478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
658478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
659478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
660478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
661478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
662478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
663478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
664478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
665478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
666478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
667478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
668478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
669478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
670478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      95,    96,    97,    98,    99,   100,   101,   102,   110
671478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
672478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
673478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if YYDEBUG
674478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
675478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   YYRHS.  */
676478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const unsigned short int yyprhs[] =
677478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
678478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     0,     3,     6,     8,     9,    11,    15,    19,    23,
679478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      27,    29,    31,    33,    35,    39,    41,    45,    49,    51,
680478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      55,    57,    59,    61,    64,    66,    68,    70,    74,    78,
681478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      80,    82,    84,    87,    91,    94,    97,   100,   103,   106,
682478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     109,   113,   115,   119,   123,   125,   127,   129,   132,   134,
683478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     137,   139,   140,   142,   144,   148,   152,   156,   160,   162,
684478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     164,   166,   168,   170,   172,   174,   176,   178,   180,   182,
685478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     184,   186,   188,   190,   192,   194,   196,   198,   200,   202,
686478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     204,   206,   208,   210,   212,   214,   216,   218,   220,   222,
687478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     224,   226,   228,   230,   232,   234,   236,   238,   240,   242,
688478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     244,   246,   249,   252,   255,   258,   263,   265,   267,   270,
689478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     272,   275,   277,   279,   281,   283,   286,   289,   292,   295,
690478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     298,   301,   303,   305,   307,   309,   311,   313,   315,   317,
691478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     319,   321,   323,   328,   335,   339,   343,   347,   351,   355,
692478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     359,   363,   367,   370,   374,   376,   378,   380,   382,   384,
693478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     386,   388,   392,   394,   396,   398,   400,   402,   404,   406,
694478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     408,   410,   412,   414,   416,   418,   420,   422,   425,   428,
695478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     432,   434,   436,   440,   442,   444,   446,   448,   450,   452,
696478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     454,   456,   459,   462,   466,   468,   470
697478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
698478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
699478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYRHS -- A `-1'-separated list of the rules' RHS. */
700478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const short int yyrhs[] =
701478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
702478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     120,     0,    -1,   121,   122,    -1,   121,    -1,    -1,   131,
703478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,   122,   123,   131,    -1,   122,   123,   125,    -1,   122,
704478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     124,   131,    -1,   122,   124,   125,    -1,   101,    -1,   102,
705478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,   126,    -1,   148,    -1,   128,   129,   111,    -1,    49,
706478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,    51,   109,    36,    -1,    51,     8,    51,    -1,    51,
707478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,    52,   109,    36,    -1,    52,    -1,    50,    -1,    53,
708478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,   127,   125,    -1,   103,    -1,   112,    -1,   126,    -1,
709478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     130,   123,   125,    -1,   130,   124,   125,    -1,   148,    -1,
710478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     129,    -1,   133,    -1,   127,   131,    -1,   134,   135,   136,
711478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,   134,   135,    -1,   134,   136,    -1,   134,    13,    -1,
712478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     134,    14,    -1,   134,   137,    -1,   132,   125,    -1,   128,
713478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     122,   111,    -1,   138,    -1,   145,   143,   145,    -1,   145,
714478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     144,   145,    -1,   139,    -1,   149,    -1,   150,    -1,   151,
715478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     152,    -1,   155,    -1,   156,   157,    -1,   138,    -1,    -1,
716478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       4,    -1,     3,    -1,     4,   102,     3,    -1,     3,   102,
717478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       4,    -1,     4,   101,     3,    -1,     3,   101,     4,    -1,
718478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       5,    -1,     7,    -1,     9,    -1,    10,    -1,     6,    -1,
719478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      45,    -1,    18,    -1,    16,    -1,    17,    -1,    19,    -1,
720478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      20,    -1,    21,    -1,    22,    -1,    23,    -1,    24,    -1,
721478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      25,    -1,    26,    -1,    27,    -1,    28,    -1,    29,    -1,
722478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      30,    -1,    31,    -1,    33,    -1,    32,    -1,    57,    -1,
723478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      58,    -1,    59,    -1,    60,    -1,    65,    -1,    66,    -1,
724478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      68,    -1,    69,    -1,    70,    -1,    71,    -1,    72,    -1,
725478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      73,    -1,    75,    -1,    74,    -1,    67,    -1,    76,    -1,
726478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      77,    -1,    78,    -1,    93,    -1,   134,    34,    -1,   134,
727478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      35,    -1,    11,    36,    -1,    12,    36,    -1,    15,    36,
728478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     147,    36,    -1,    37,    -1,    38,    -1,    61,   148,    -1,
729478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      61,    -1,    62,   148,    -1,    62,    -1,    63,    -1,    64,
730478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,   140,    -1,    39,    49,    -1,    40,    49,    -1,    41,
731478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      36,    -1,    42,    36,    -1,    43,   141,    -1,    44,   142,
732478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,    36,    -1,    49,    -1,    49,    -1,   113,    -1,    46,
733478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,   114,    -1,    47,    -1,   115,    -1,    48,    -1,   148,
734478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,   146,    -1,   138,   116,   145,   117,    -1,   138,   116,
735478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     145,   118,    36,   117,    -1,   145,   106,   145,    -1,   145,
736478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     107,   145,    -1,   145,   108,   145,    -1,   145,   109,   145,
737478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,   145,   105,   145,    -1,   145,   104,   145,    -1,   145,
738478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      54,   145,    -1,   145,    55,   145,    -1,   107,   145,    -1,
739478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     128,   146,   111,    -1,    56,    -1,   105,    -1,   104,    -1,
740478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     115,    -1,   113,    -1,   114,    -1,    36,    -1,   128,   148,
741478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     111,    -1,    79,    -1,    80,    -1,    81,    -1,    82,    -1,
742478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      85,    -1,    86,    -1,    83,    -1,    84,    -1,    87,    -1,
743478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      88,    -1,    89,    -1,    90,    -1,    91,    -1,    92,    -1,
744478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     153,    -1,   143,    36,    -1,   144,    36,    -1,   128,   154,
745478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     111,    -1,    36,    -1,   153,    -1,   154,   124,   153,    -1,
746478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      94,    -1,    95,    -1,    96,    -1,    97,    -1,    98,    -1,
747478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      99,    -1,   100,    -1,   158,    -1,   143,    36,    -1,   144,
748478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      36,    -1,   128,   159,   111,    -1,    36,    -1,   158,    -1,
749478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     159,   124,   158,    -1
750478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
751478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
752478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
753478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const unsigned short int yyrline[] =
754478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
755478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,   210,   210,   214,   216,   218,   219,   220,   221,   222,
756478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     224,   226,   228,   229,   231,   233,   234,   236,   238,   243,
757478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     252,   261,   270,   279,   281,   283,   285,   286,   287,   289,
758478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     291,   293,   294,   296,   297,   298,   299,   300,   301,   303,
759478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     304,   305,   306,   308,   310,   311,   312,   313,   314,   315,
760478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     318,   319,   322,   323,   324,   325,   326,   327,   330,   331,
761478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     332,   333,   336,   338,   339,   340,   341,   342,   343,   344,
762478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
763478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
764478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
765478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     375,   377,   378,   379,   380,   381,   382,   383,   384,   385,
766478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     386,   387,   388,   389,   390,   393,   394,   395,   396,   397,
767478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     398,   401,   402,   405,   408,   409,   410,   412,   413,   414,
768478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     416,   417,   419,   420,   421,   422,   423,   424,   425,   426,
769478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     427,   428,   429,   430,   431,   433,   434,   435,   436,   437,
770478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     439,   440,   442,   443,   444,   445,   446,   447,   448,   449,
771478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     451,   452,   453,   454,   457,   458,   460,   461,   462,   463,
772478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     465,   472,   473,   476,   477,   478,   481,   482,   483,   484,
773478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     486,   487,   488,   489,   491,   500,   501
774478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
775478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
776478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
777478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
778478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
779478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   First, the terminals, then, starting at YYNTOKENS, nonterminals. */
780478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const char *const yytname[] =
781478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
782478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "$end", "error", "$undefined", "DST", "SRC", "HOST", "GATEWAY", "NET",
783478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "NETMASK", "PORT", "PORTRANGE", "LESS", "GREATER", "PROTO", "PROTOCHAIN",
784478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "CBYTE", "ARP", "RARP", "IP", "SCTP", "TCP", "UDP", "ICMP", "IGMP",
785478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "IGRP", "PIM", "VRRP", "ATALK", "AARP", "DECNET", "LAT", "SCA", "MOPRC",
786478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "MOPDL", "TK_BROADCAST", "TK_MULTICAST", "NUM", "INBOUND", "OUTBOUND",
787478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "PF_IFNAME", "PF_RSET", "PF_RNR", "PF_SRNR", "PF_REASON", "PF_ACTION",
788478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "LINK", "GEQ", "LEQ", "NEQ", "ID", "EID", "HID", "HID6", "AID", "LSH",
789478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "RSH", "LEN", "IPV6", "ICMPV6", "AH", "ESP", "VLAN", "MPLS", "PPPOED",
790478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "PPPOES", "ISO", "ESIS", "CLNP", "ISIS", "L1", "L2", "IIH", "LSP", "SNP",
791478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "CSNP", "PSNP", "STP", "IPX", "NETBEUI", "LANE", "LLC", "METAC", "BCC",
792478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "SC", "ILMIC", "OAMF4EC", "OAMF4SC", "OAM", "OAMF4", "CONNECTMSG",
793478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "METACONNECT", "VPI", "VCI", "RADIO", "FISU", "LSSU", "MSU", "SIO",
794478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "OPC", "DPC", "SLS", "AND", "OR", "'!'", "'|'", "'&'", "'+'", "'-'",
795478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "'*'", "'/'", "UMINUS", "')'", "'('", "'>'", "'='", "'<'", "'['", "']'",
796478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "':'", "$accept", "prog", "null", "expr", "and", "or", "id", "nid",
797478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "not", "paren", "pid", "qid", "term", "head", "rterm", "pqual", "dqual",
798478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "aqual", "ndaqual", "pname", "other", "pfvar", "reason", "action",
799478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "relop", "irelop", "arth", "narth", "byteop", "pnum", "atmtype",
800478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "atmmultitype", "atmfield", "atmvalue", "atmfieldvalue", "atmlistvalue",
801478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  "mtp2type", "mtp3field", "mtp3value", "mtp3fieldvalue", "mtp3listvalue", 0
802478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
803478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
804478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
805478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# ifdef YYPRINT
806478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
807478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   token YYLEX-NUM.  */
808478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const unsigned short int yytoknum[] =
809478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
810478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
811478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
812478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
813478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
814478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
815478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
816478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
817478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
818478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
819478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
820478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     355,   356,   357,    33,   124,    38,    43,    45,    42,    47,
821478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     358,    41,    40,    62,    61,    60,    91,    93,    58
822478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
823478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
824478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
825478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
826478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const unsigned char yyr1[] =
827478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
828478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,   119,   120,   120,   121,   122,   122,   122,   122,   122,
829478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     123,   124,   125,   125,   125,   126,   126,   126,   126,   126,
830478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     126,   126,   126,   126,   127,   128,   129,   129,   129,   130,
831478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     130,   131,   131,   132,   132,   132,   132,   132,   132,   133,
832478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     133,   133,   133,   133,   133,   133,   133,   133,   133,   133,
833478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     134,   134,   135,   135,   135,   135,   135,   135,   136,   136,
834478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     136,   136,   137,   138,   138,   138,   138,   138,   138,   138,
835478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     138,   138,   138,   138,   138,   138,   138,   138,   138,   138,
836478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     138,   138,   138,   138,   138,   138,   138,   138,   138,   138,
837478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     138,   138,   138,   138,   138,   138,   138,   138,   138,   138,
838478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     138,   139,   139,   139,   139,   139,   139,   139,   139,   139,
839478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     139,   139,   139,   139,   139,   140,   140,   140,   140,   140,
840478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     140,   141,   141,   142,   143,   143,   143,   144,   144,   144,
841478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     145,   145,   146,   146,   146,   146,   146,   146,   146,   146,
842478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     146,   146,   146,   146,   146,   147,   147,   147,   147,   147,
843478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     148,   148,   149,   149,   149,   149,   149,   149,   149,   149,
844478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     150,   150,   150,   150,   151,   151,   152,   152,   152,   152,
845478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     153,   154,   154,   155,   155,   155,   156,   156,   156,   156,
846478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     157,   157,   157,   157,   158,   159,   159
847478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
848478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
849478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
850478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const unsigned char yyr2[] =
851478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
852478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     2,     2,     1,     0,     1,     3,     3,     3,     3,
853478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     1,     1,     1,     3,     1,     3,     3,     1,     3,
854478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     1,     1,     2,     1,     1,     1,     3,     3,     1,
855478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     1,     2,     3,     2,     2,     2,     2,     2,     2,
856478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       3,     1,     3,     3,     1,     1,     1,     2,     1,     2,
857478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     0,     1,     1,     3,     3,     3,     3,     1,     1,
858478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
859478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
860478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
861478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
862478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     2,     2,     2,     2,     4,     1,     1,     2,     1,
863478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     1,     1,     1,     1,     2,     2,     2,     2,     2,
864478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,     1,     1,     1,     1,     1,     1,     1,     1,     1,
865478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     1,     4,     6,     3,     3,     3,     3,     3,     3,
866478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       3,     3,     2,     3,     1,     1,     1,     1,     1,     1,
867478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     3,     1,     1,     1,     1,     1,     1,     1,     1,
868478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     1,     1,     1,     1,     1,     1,     2,     2,     3,
869478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     1,     3,     1,     1,     1,     1,     1,     1,     1,
870478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       1,     2,     2,     3,     1,     1,     3
871478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
872478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
873478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
874478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
875478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   means the default is an error.  */
876478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const unsigned char yydefact[] =
877478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
878478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       4,     0,    51,     1,     0,     0,     0,    65,    66,    64,
879478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
880478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      77,    78,    79,    81,    80,   150,   106,   107,     0,     0,
881478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     0,     0,     0,    63,   144,    82,    83,    84,    85,
882478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     109,   111,   112,   113,    86,    87,    96,    88,    89,    90,
883478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      91,    92,    93,    95,    94,    97,    98,    99,   152,   153,
884478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     154,   155,   158,   159,   156,   157,   160,   161,   162,   163,
885478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     164,   165,   100,   173,   174,   175,   176,   177,   178,   179,
886478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      24,     0,    25,     2,    51,    51,     5,     0,    31,     0,
887478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      50,    44,   114,     0,   131,   130,    45,    46,     0,    48,
888478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,   103,   104,     0,   115,   116,   117,   118,   121,   122,
889478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     119,   123,   120,     0,   108,   110,     0,     0,   142,    10,
890478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      11,    51,    51,    32,     0,   131,   130,    15,    21,    18,
891478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      20,    22,    39,    12,     0,     0,    13,    53,    52,    58,
892478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      62,    59,    60,    61,    36,    37,   101,   102,    34,    35,
893478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      38,     0,   125,   127,   129,     0,     0,     0,     0,     0,
894478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     0,     0,   124,   126,   128,     0,     0,   170,     0,
895478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     0,    47,   166,   184,     0,     0,     0,    49,   180,
896478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     146,   145,   148,   149,   147,     0,     0,     0,     7,    51,
897478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      51,     6,   130,     9,     8,    40,   143,   151,     0,     0,
898478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,    23,    26,    30,     0,    29,     0,     0,     0,     0,
899478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      33,     0,   140,   141,   139,   138,   134,   135,   136,   137,
900478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      42,    43,   171,     0,   167,   168,   185,     0,   181,   182,
901478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     105,   130,    17,    16,    19,    14,     0,     0,    57,    55,
902478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      56,    54,   132,     0,   169,     0,   183,     0,    27,    28,
903478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,   172,   186,   133
904478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
905478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
906478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYDEFGOTO[NTERM-NUM]. */
907478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const short int yydefgoto[] =
908478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
909478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,     1,     2,   124,   121,   122,   201,   133,   134,   116,
910478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     203,   204,    86,    87,    88,    89,   148,   149,   150,   117,
911478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      91,    92,   110,   112,   166,   167,    93,    94,   185,    95,
912478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      96,    97,    98,   172,   173,   223,    99,   100,   178,   179,
913478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     227
914478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
915478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
916478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
917478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   STATE-NUM.  */
918478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYPACT_NINF -181
919478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const short int yypact[] =
920478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
921478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,    19,   200,  -181,    -3,     1,    15,  -181,  -181,  -181,
922478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,
923478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,    13,    20,
924478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      18,    44,   -26,    35,  -181,  -181,  -181,  -181,  -181,  -181,
925478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     -19,   -19,  -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,
926478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,
927478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,
928478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,
929478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,   493,  -181,    41,   396,   396,  -181,   -24,  -181,   155,
930478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,  -181,  -181,   488,  -181,  -181,  -181,  -181,     9,  -181,
931478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     134,  -181,  -181,    62,  -181,  -181,  -181,  -181,  -181,  -181,
932478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,   -19,  -181,  -181,   493,    -9,  -181,  -181,
933478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,   298,   298,  -181,   -53,   -14,    -1,  -181,  -181,     0,
934478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       3,  -181,  -181,  -181,   -24,   -24,  -181,    77,    82,  -181,
935478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,  -181,  -181,  -181,  -181,  -181,   437,  -181,
936478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,   493,  -181,  -181,  -181,   493,   493,   493,   493,   493,
937478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     493,   493,   493,  -181,  -181,  -181,   493,   493,  -181,    78,
938478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      81,    89,  -181,  -181,  -181,    95,   108,   113,  -181,  -181,
939478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,  -181,  -181,   120,    -1,   -34,  -181,   298,
940478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     298,  -181,     4,  -181,  -181,  -181,  -181,  -181,   112,   149,
941478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     150,  -181,  -181,    80,    41,    -1,   188,   189,   205,   206,
942478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,   -41,    65,    65,    98,   144,   -93,   -93,  -181,  -181,
943478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     -34,   -34,  -181,   -80,  -181,  -181,  -181,   -58,  -181,  -181,
944478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,    46,  -181,  -181,  -181,  -181,   -24,   -24,  -181,  -181,
945478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,   174,  -181,    78,  -181,    95,  -181,  -181,
946478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      96,  -181,  -181,  -181
947478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
948478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
949478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYPGOTO[NTERM-NUM].  */
950478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const short int yypgoto[] =
951478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
952478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,   212,    50,  -180,   -86,   -89,     5,    -2,
953478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,   -81,  -181,  -181,  -181,  -181,   107,  -181,     7,
954478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,  -181,   -66,   -39,   -21,   -74,  -181,   -35,
955478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181,  -181,  -181,  -181,  -151,  -181,  -181,  -181,  -181,  -145,
956478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    -181
957478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
958478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
959478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
960478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   positive, shift that token.  If negative, reduce the rule which
961478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   number is the opposite.  If zero, do what YYDEFACT says.
962478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   If YYTABLE_NINF, syntax error.  */
963478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYTABLE_NINF -42
964478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const short int yytable[] =
965478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
966478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      85,   132,   -41,   123,   -13,   114,   115,    84,   198,    90,
967478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     108,   125,    25,   155,   156,   161,   162,    25,   222,     3,
968478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     155,   156,   120,   109,   237,   127,   128,   129,   130,   131,
969478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     226,   244,   170,   101,   176,   188,   193,   102,   113,   113,
970478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     191,   194,   125,   245,   120,   168,   202,   247,   119,   120,
971478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     126,   103,   136,   246,   106,   152,   153,   154,   195,   171,
972478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     118,   177,   104,   157,   158,   159,   160,   161,   162,   105,
973478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     157,   158,   159,   160,   161,   162,   242,   243,   186,    80,
974478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     107,   126,    85,    85,   111,   135,   192,   192,    82,    84,
975478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      84,    90,    90,    82,   251,   187,   169,   196,   175,   136,
976478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     205,   202,   252,   -41,   -41,   -13,   -13,   151,   123,   199,
977478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     197,   113,   200,   -41,   168,   -13,   125,   224,   151,   190,
978478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     190,    82,   163,   164,   165,   225,   189,   189,    90,    90,
979478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     211,   174,   135,   113,   212,   213,   214,   215,   216,   217,
980478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     218,   219,   119,   120,   228,   220,   221,   -29,   -29,   229,
981478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     248,   249,   155,   156,   192,   231,   230,   197,   137,   138,
982478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     139,   140,   141,   232,   142,   143,   180,   181,   144,   145,
983478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     174,   159,   160,   161,   162,   182,   183,   184,   206,   207,
984478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     152,   153,   154,   208,   209,   233,   234,   190,    85,   146,
985478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     147,   235,   238,   239,   189,   189,    90,    90,   155,   156,
986478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -3,   136,   136,   158,   159,   160,   161,   162,   240,   241,
987478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     250,     4,     5,   253,    83,     6,     7,     8,     9,    10,
988478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
989478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      21,    22,    23,    24,   135,   135,    25,    26,    27,    28,
990478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      29,    30,    31,    32,    33,    34,    82,   163,   164,   165,
991478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     159,   160,   161,   162,   236,   210,    35,    36,    37,    38,
992478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
993478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
994478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      59,    60,    61,    62,    63,    64,    65,    66,    67,    68,
995478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
996478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      79,     0,     0,    80,     0,     0,     0,    81,     0,     4,
997478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       5,     0,    82,     6,     7,     8,     9,    10,    11,    12,
998478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
999478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      23,    24,     0,     0,    25,    26,    27,    28,    29,    30,
1000478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      31,    32,    33,    34,     0,     0,     0,   127,   128,   129,
1001478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     130,   131,     0,     0,    35,    36,    37,    38,    39,    40,
1002478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
1003478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      51,    52,    53,    54,    55,    56,    57,    58,    59,    60,
1004478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
1005478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      71,    72,    73,    74,    75,    76,    77,    78,    79,     0,
1006478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,    80,     0,     0,     0,    81,     0,     4,     5,     0,
1007478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      82,     6,     7,     8,     9,    10,    11,    12,    13,    14,
1008478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
1009478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     0,    25,    26,    27,    28,    29,    30,    31,    32,
1010478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      33,    34,   139,     0,   141,     0,   142,   143,     0,     0,
1011478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     0,    35,    36,    37,    38,    39,    40,    41,    42,
1012478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
1013478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      53,    54,    55,    56,    57,    58,    59,    60,    61,    62,
1014478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
1015478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      73,    74,    75,    76,    77,    78,    79,     0,     0,    80,
1016478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     0,     0,    81,     0,     0,     0,     0,    82,     7,
1017478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
1018478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      18,    19,    20,    21,    22,    23,    24,     0,     0,    25,
1019478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     0,     0,     0,   152,   153,   154,     0,    34,     0,
1020478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     0,   155,   156,     0,     0,     0,     0,     0,    35,
1021478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      36,    37,    38,    39,     0,     0,     0,     0,    44,    45,
1022478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
1023478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      56,    57,     0,     0,     0,     0,     0,     0,     0,     0,
1024478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     0,     0,     0,     0,     0,    72,     0,     0,     0,
1025478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,     0,   157,   158,   159,   160,   161,   162,     0,     0,
1026478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      81,   163,   164,   165,     0,    82
1027478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
1028478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1029478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const short int yycheck[] =
1030478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
1031478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       2,    87,     0,    84,     0,    40,    41,     2,     8,     2,
1032478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      36,    85,    36,    54,    55,   108,   109,    36,   169,     0,
1033478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      54,    55,   102,    49,   204,    49,    50,    51,    52,    53,
1034478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     175,   111,    98,    36,   100,   121,   122,    36,    40,    41,
1035478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     121,   122,   116,   223,   102,    36,   135,   227,   101,   102,
1036478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      85,    36,    87,   111,    36,    46,    47,    48,   111,    98,
1037478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      81,   100,    49,   104,   105,   106,   107,   108,   109,    49,
1038478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     104,   105,   106,   107,   108,   109,   117,   118,   113,   103,
1039478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      36,   116,    84,    85,    49,    87,   121,   122,   112,    84,
1040478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      85,    84,    85,   112,   245,   116,    98,   111,   100,   134,
1041478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     135,   190,   247,   101,   102,   101,   102,   116,   189,   109,
1042478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     111,   113,   109,   111,    36,   111,   190,    36,   116,   121,
1043478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     122,   112,   113,   114,   115,    36,   121,   122,   121,   122,
1044478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     151,    36,   134,   135,   155,   156,   157,   158,   159,   160,
1045478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     161,   162,   101,   102,    36,   166,   167,   101,   102,    36,
1046478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     236,   237,    54,    55,   189,   190,    36,   111,     3,     4,
1047478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       5,     6,     7,    51,     9,    10,   104,   105,    13,    14,
1048478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      36,   106,   107,   108,   109,   113,   114,   115,   101,   102,
1049478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      46,    47,    48,   101,   102,    36,    36,   189,   190,    34,
1050478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      35,   111,     4,     4,   189,   190,   189,   190,    54,    55,
1051478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,   236,   237,   105,   106,   107,   108,   109,     3,     3,
1052478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      36,    11,    12,   117,     2,    15,    16,    17,    18,    19,
1053478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
1054478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      30,    31,    32,    33,   236,   237,    36,    37,    38,    39,
1055478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      40,    41,    42,    43,    44,    45,   112,   113,   114,   115,
1056478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     106,   107,   108,   109,   204,   148,    56,    57,    58,    59,
1057478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      60,    61,    62,    63,    64,    65,    66,    67,    68,    69,
1058478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1059478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      80,    81,    82,    83,    84,    85,    86,    87,    88,    89,
1060478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
1061478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     100,    -1,    -1,   103,    -1,    -1,    -1,   107,    -1,    11,
1062478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      12,    -1,   112,    15,    16,    17,    18,    19,    20,    21,
1063478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
1064478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      32,    33,    -1,    -1,    36,    37,    38,    39,    40,    41,
1065478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      42,    43,    44,    45,    -1,    -1,    -1,    49,    50,    51,
1066478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      52,    53,    -1,    -1,    56,    57,    58,    59,    60,    61,
1067478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
1068478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1069478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
1070478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      92,    93,    94,    95,    96,    97,    98,    99,   100,    -1,
1071478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,   103,    -1,    -1,    -1,   107,    -1,    11,    12,    -1,
1072478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     112,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1073478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
1074478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,    -1,    36,    37,    38,    39,    40,    41,    42,    43,
1075478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      44,    45,     5,    -1,     7,    -1,     9,    10,    -1,    -1,
1076478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,    -1,    56,    57,    58,    59,    60,    61,    62,    63,
1077478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
1078478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1079478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
1080478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      94,    95,    96,    97,    98,    99,   100,    -1,    -1,   103,
1081478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,    -1,    -1,   107,    -1,    -1,    -1,    -1,   112,    16,
1082478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
1083478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      27,    28,    29,    30,    31,    32,    33,    -1,    -1,    36,
1084478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,    -1,    -1,    -1,    46,    47,    48,    -1,    45,    -1,
1085478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,    -1,    54,    55,    -1,    -1,    -1,    -1,    -1,    56,
1086478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      57,    58,    59,    60,    -1,    -1,    -1,    -1,    65,    66,
1087478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1088478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      77,    78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1089478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,    -1,    -1,    -1,    -1,    -1,    93,    -1,    -1,    -1,
1090478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      -1,    -1,   104,   105,   106,   107,   108,   109,    -1,    -1,
1091478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     107,   113,   114,   115,    -1,   112
1092478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
1093478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1094478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1095478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   symbol of state STATE-NUM.  */
1096478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic const unsigned char yystos[] =
1097478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
1098478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       0,   120,   121,     0,    11,    12,    15,    16,    17,    18,
1099478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
1100478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      29,    30,    31,    32,    33,    36,    37,    38,    39,    40,
1101478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      41,    42,    43,    44,    45,    56,    57,    58,    59,    60,
1102478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
1103478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1104478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
1105478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
1106478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     103,   107,   112,   122,   127,   128,   131,   132,   133,   134,
1107478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     138,   139,   140,   145,   146,   148,   149,   150,   151,   155,
1108478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     156,    36,    36,    36,    49,    49,    36,    36,    36,    49,
1109478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     141,    49,   142,   128,   148,   148,   128,   138,   145,   101,
1110478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     102,   123,   124,   131,   122,   146,   148,    49,    50,    51,
1111478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      52,    53,   125,   126,   127,   128,   148,     3,     4,     5,
1112478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       6,     7,     9,    10,    13,    14,    34,    35,   135,   136,
1113478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     137,   116,    46,    47,    48,    54,    55,   104,   105,   106,
1114478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     107,   108,   109,   113,   114,   115,   143,   144,    36,   128,
1115478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     143,   144,   152,   153,    36,   128,   143,   144,   157,   158,
1116478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     104,   105,   113,   114,   115,   147,   148,   145,   125,   127,
1117478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     128,   131,   148,   125,   131,   111,   111,   111,     8,   109,
1118478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     109,   125,   126,   129,   130,   148,   101,   102,   101,   102,
1119478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     136,   145,   145,   145,   145,   145,   145,   145,   145,   145,
1120478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     145,   145,   153,   154,    36,    36,   158,   159,    36,    36,
1121478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      36,   148,    51,    36,    36,   111,   123,   124,     4,     4,
1122478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project       3,     3,   117,   118,   111,   124,   111,   124,   125,   125,
1123478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      36,   153,   158,   117
1124478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project};
1125478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1126478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define yyerrok		(yyerrstatus = 0)
1127478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define yyclearin	(yychar = YYEMPTY)
1128478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYEMPTY		(-2)
1129478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYEOF		0
1130478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1131478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYACCEPT	goto yyacceptlab
1132478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYABORT		goto yyabortlab
1133478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYERROR		goto yyerrorlab
1134478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1135478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1136478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Like YYERROR except do call yyerror.  This remains here temporarily
1137478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   to ease the transition to the new meaning of YYERROR, for GCC.
1138478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   Once GCC version 2 has supplanted version 1, this can go.  */
1139478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1140478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYFAIL		goto yyerrlab
1141478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1142478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYRECOVERING()  (!!yyerrstatus)
1143478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1144478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYBACKUP(Token, Value)					\
1145478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectdo								\
1146478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yychar == YYEMPTY && yylen == 1)				\
1147478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {								\
1148478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yychar = (Token);						\
1149478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yylval = (Value);						\
1150478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yytoken = YYTRANSLATE (yychar);				\
1151478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YYPOPSTACK;						\
1152478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      goto yybackup;						\
1153478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }								\
1154478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  else								\
1155478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {								\
1156478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yyerror (YY_("syntax error: cannot back up")); \
1157478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YYERROR;							\
1158478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }								\
1159478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectwhile (0)
1160478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1161478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1162478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYTERROR	1
1163478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYERRCODE	256
1164478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1165478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1166478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
1167478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   If N is 0, then set CURRENT to the empty location which ends
1168478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   the previous symbol: RHS[0] (always defined).  */
1169478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1170478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYRHSLOC(Rhs, K) ((Rhs)[K])
1171478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef YYLLOC_DEFAULT
1172478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYLLOC_DEFAULT(Current, Rhs, N)				\
1173478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    do									\
1174478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      if (N)								\
1175478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	{								\
1176478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;	\
1177478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  (Current).first_column = YYRHSLOC (Rhs, 1).first_column;	\
1178478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  (Current).last_line    = YYRHSLOC (Rhs, N).last_line;		\
1179478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  (Current).last_column  = YYRHSLOC (Rhs, N).last_column;	\
1180478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	}								\
1181478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      else								\
1182478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	{								\
1183478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  (Current).first_line   = (Current).last_line   =		\
1184478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    YYRHSLOC (Rhs, 0).last_line;				\
1185478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  (Current).first_column = (Current).last_column =		\
1186478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    YYRHSLOC (Rhs, 0).last_column;				\
1187478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	}								\
1188478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    while (0)
1189478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1190478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1191478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1192478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YY_LOCATION_PRINT -- Print the location on the stream.
1193478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   This macro was not mandated originally: define only if we know
1194478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   we won't break user code: when these are the locations we know.  */
1195478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1196478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef YY_LOCATION_PRINT
1197478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# if YYLTYPE_IS_TRIVIAL
1198478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  define YY_LOCATION_PRINT(File, Loc)			\
1199478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     fprintf (File, "%d.%d-%d.%d",			\
1200478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project              (Loc).first_line, (Loc).first_column,	\
1201478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project              (Loc).last_line,  (Loc).last_column)
1202478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# else
1203478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
1204478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
1205478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1206478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1207478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1208478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYLEX -- calling `yylex' with the right arguments.  */
1209478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1210478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef YYLEX_PARAM
1211478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYLEX yylex (YYLEX_PARAM)
1212478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else
1213478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYLEX yylex ()
1214478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1215478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1216478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Enable debugging if requested.  */
1217478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if YYDEBUG
1218478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1219478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# ifndef YYFPRINTF
1220478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
1221478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  define YYFPRINTF fprintf
1222478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
1223478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1224478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYDPRINTF(Args)			\
1225478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectdo {						\
1226478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yydebug)					\
1227478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    YYFPRINTF Args;				\
1228478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project} while (0)
1229478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1230478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YY_SYMBOL_PRINT(Title, Type, Value, Location)		\
1231478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectdo {								\
1232478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yydebug)							\
1233478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {								\
1234478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YYFPRINTF (stderr, "%s ", Title);				\
1235478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yysymprint (stderr,					\
1236478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project                  Type, Value);	\
1237478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YYFPRINTF (stderr, "\n");					\
1238478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }								\
1239478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project} while (0)
1240478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1241478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*------------------------------------------------------------------.
1242478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yy_stack_print -- Print the state stack from its BOTTOM up to its |
1243478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| TOP (included).                                                   |
1244478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`------------------------------------------------------------------*/
1245478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1246478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if defined (__STDC__) || defined (__cplusplus)
1247478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic void
1248478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyy_stack_print (short int *bottom, short int *top)
1249478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else
1250478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic void
1251478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyy_stack_print (bottom, top)
1252478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    short int *bottom;
1253478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    short int *top;
1254478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1255478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
1256478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYFPRINTF (stderr, "Stack now");
1257478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  for (/* Nothing. */; bottom <= top; ++bottom)
1258478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    YYFPRINTF (stderr, " %d", *bottom);
1259478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYFPRINTF (stderr, "\n");
1260478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
1261478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1262478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YY_STACK_PRINT(Bottom, Top)				\
1263478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectdo {								\
1264478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yydebug)							\
1265478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    yy_stack_print ((Bottom), (Top));				\
1266478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project} while (0)
1267478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1268478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1269478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*------------------------------------------------.
1270478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| Report that the YYRULE is going to be reduced.  |
1271478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`------------------------------------------------*/
1272478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1273478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if defined (__STDC__) || defined (__cplusplus)
1274478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic void
1275478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyy_reduce_print (int yyrule)
1276478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else
1277478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic void
1278478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyy_reduce_print (yyrule)
1279478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    int yyrule;
1280478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1281478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
1282478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  int yyi;
1283478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  unsigned long int yylno = yyrline[yyrule];
1284478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu), ",
1285478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project             yyrule - 1, yylno);
1286478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Print the symbols being reduced, and their result.  */
1287478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
1288478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]);
1289478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYFPRINTF (stderr, "-> %s\n", yytname[yyr1[yyrule]]);
1290478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
1291478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1292478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YY_REDUCE_PRINT(Rule)		\
1293478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectdo {					\
1294478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yydebug)				\
1295478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    yy_reduce_print (Rule);		\
1296478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project} while (0)
1297478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1298478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Nonzero means print parse trace.  It is left uninitialized so that
1299478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   multiple parsers can coexist.  */
1300478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint yydebug;
1301478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else /* !YYDEBUG */
1302478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYDPRINTF(Args)
1303478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
1304478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YY_STACK_PRINT(Bottom, Top)
1305478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YY_REDUCE_PRINT(Rule)
1306478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /* !YYDEBUG */
1307478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1308478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1309478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYINITDEPTH -- initial size of the parser's stacks.  */
1310478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef	YYINITDEPTH
1311478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYINITDEPTH 200
1312478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1313478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1314478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
1315478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   if the built-in stack extension method is used).
1316478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1317478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   Do not make this value too large; the results are undefined if
1318478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
1319478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   evaluated with infinite-precision integer arithmetic.  */
1320478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1321478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef YYMAXDEPTH
1322478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# define YYMAXDEPTH 10000
1323478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1324478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1325478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1326478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1327478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if YYERROR_VERBOSE
1328478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1329478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# ifndef yystrlen
1330478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  if defined (__GLIBC__) && defined (_STRING_H)
1331478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   define yystrlen strlen
1332478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  else
1333478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Return the length of YYSTR.  */
1334478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic YYSIZE_T
1335478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   if defined (__STDC__) || defined (__cplusplus)
1336478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyystrlen (const char *yystr)
1337478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   else
1338478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyystrlen (yystr)
1339478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     const char *yystr;
1340478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   endif
1341478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
1342478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  const char *yys = yystr;
1343478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1344478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  while (*yys++ != '\0')
1345478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    continue;
1346478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1347478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  return yys - yystr - 1;
1348478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
1349478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  endif
1350478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
1351478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1352478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# ifndef yystpcpy
1353478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
1354478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   define yystpcpy stpcpy
1355478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  else
1356478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
1357478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   YYDEST.  */
1358478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic char *
1359478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   if defined (__STDC__) || defined (__cplusplus)
1360478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyystpcpy (char *yydest, const char *yysrc)
1361478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   else
1362478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyystpcpy (yydest, yysrc)
1363478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     char *yydest;
1364478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     const char *yysrc;
1365478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#   endif
1366478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
1367478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  char *yyd = yydest;
1368478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  const char *yys = yysrc;
1369478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1370478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  while ((*yyd++ = *yys++) != '\0')
1371478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    continue;
1372478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1373478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  return yyd - 1;
1374478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
1375478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  endif
1376478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
1377478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1378478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# ifndef yytnamerr
1379478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
1380478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   quotes and backslashes, so that it's suitable for yyerror.  The
1381478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   heuristic is that double-quoting is unnecessary unless the string
1382478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   contains an apostrophe, a comma, or backslash (other than
1383478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
1384478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   null, do not copy; instead, return the length of what the result
1385478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project   would have been.  */
1386478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic YYSIZE_T
1387478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyytnamerr (char *yyres, const char *yystr)
1388478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
1389478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (*yystr == '"')
1390478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1391478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      size_t yyn = 0;
1392478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      char const *yyp = yystr;
1393478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1394478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      for (;;)
1395478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	switch (*++yyp)
1396478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  {
1397478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  case '\'':
1398478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  case ',':
1399478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    goto do_not_strip_quotes;
1400478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1401478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  case '\\':
1402478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    if (*++yyp != '\\')
1403478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      goto do_not_strip_quotes;
1404478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    /* Fall through.  */
1405478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  default:
1406478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    if (yyres)
1407478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      yyres[yyn] = *yyp;
1408478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    yyn++;
1409478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    break;
1410478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1411478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  case '"':
1412478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    if (yyres)
1413478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      yyres[yyn] = '\0';
1414478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    return yyn;
1415478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  }
1416478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    do_not_strip_quotes: ;
1417478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
1418478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1419478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (! yyres)
1420478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    return yystrlen (yystr);
1421478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1422478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  return yystpcpy (yyres, yystr) - yyres;
1423478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
1424478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
1425478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1426478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /* YYERROR_VERBOSE */
1427478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1428478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1429478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1430478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if YYDEBUG
1431478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*--------------------------------.
1432478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| Print this symbol on YYOUTPUT.  |
1433478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`--------------------------------*/
1434478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1435478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if defined (__STDC__) || defined (__cplusplus)
1436478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic void
1437478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
1438478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else
1439478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic void
1440478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyysymprint (yyoutput, yytype, yyvaluep)
1441478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    FILE *yyoutput;
1442478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    int yytype;
1443478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    YYSTYPE *yyvaluep;
1444478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1445478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
1446478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Pacify ``unused variable'' warnings.  */
1447478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  (void) yyvaluep;
1448478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1449478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yytype < YYNTOKENS)
1450478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
1451478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  else
1452478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
1453478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1454478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1455478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# ifdef YYPRINT
1456478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yytype < YYNTOKENS)
1457478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
1458478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
1459478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  switch (yytype)
1460478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1461478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      default:
1462478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project        break;
1463478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
1464478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYFPRINTF (yyoutput, ")");
1465478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
1466478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1467478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /* ! YYDEBUG */
1468478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*-----------------------------------------------.
1469478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| Release the memory associated to this symbol.  |
1470478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`-----------------------------------------------*/
1471478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1472478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if defined (__STDC__) || defined (__cplusplus)
1473478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic void
1474478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
1475478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else
1476478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectstatic void
1477478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyydestruct (yymsg, yytype, yyvaluep)
1478478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    const char *yymsg;
1479478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    int yytype;
1480478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    YYSTYPE *yyvaluep;
1481478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1482478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
1483478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Pacify ``unused variable'' warnings.  */
1484478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  (void) yyvaluep;
1485478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1486478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (!yymsg)
1487478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    yymsg = "Deleting";
1488478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
1489478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1490478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  switch (yytype)
1491478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1492478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1493478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      default:
1494478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project        break;
1495478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
1496478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
1497478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1498478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1499478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Prevent warnings from -Wmissing-prototypes.  */
1500478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1501478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef YYPARSE_PARAM
1502478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# if defined (__STDC__) || defined (__cplusplus)
1503478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint yyparse (void *YYPARSE_PARAM);
1504478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# else
1505478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint yyparse ();
1506478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
1507478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else /* ! YYPARSE_PARAM */
1508478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if defined (__STDC__) || defined (__cplusplus)
1509478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint yyparse (void);
1510478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else
1511478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint yyparse ();
1512478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1513478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /* ! YYPARSE_PARAM */
1514478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1515478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1516478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1517478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* The look-ahead symbol.  */
1518478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint yychar;
1519478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1520478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* The semantic value of the look-ahead symbol.  */
1521478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source ProjectYYSTYPE yylval;
1522478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1523478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Number of syntax errors so far.  */
1524478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint yynerrs;
1525478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1526478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1527478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1528478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*----------.
1529478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yyparse.  |
1530478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`----------*/
1531478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1532478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef YYPARSE_PARAM
1533478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# if defined (__STDC__) || defined (__cplusplus)
1534478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint yyparse (void *YYPARSE_PARAM)
1535478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# else
1536478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint yyparse (YYPARSE_PARAM)
1537478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  void *YYPARSE_PARAM;
1538478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
1539478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else /* ! YYPARSE_PARAM */
1540478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if defined (__STDC__) || defined (__cplusplus)
1541478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint
1542478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyparse (void)
1543478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else
1544478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectint
1545478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyparse ()
1546478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    ;
1547478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1548478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
1549478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project{
1550478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1551478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  int yystate;
1552478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  int yyn;
1553478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  int yyresult;
1554478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Number of tokens to shift before error messages enabled.  */
1555478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  int yyerrstatus;
1556478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Look-ahead token as an internal (translated) token number.  */
1557478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  int yytoken = 0;
1558478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1559478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Three stacks and their tools:
1560478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     `yyss': related to states,
1561478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     `yyvs': related to semantic values,
1562478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     `yyls': related to locations.
1563478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1564478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     Refer to the stacks thru separate pointers, to allow yyoverflow
1565478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     to reallocate them elsewhere.  */
1566478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1567478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* The state stack.  */
1568478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  short int yyssa[YYINITDEPTH];
1569478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  short int *yyss = yyssa;
1570478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  short int *yyssp;
1571478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1572478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* The semantic value stack.  */
1573478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYSTYPE yyvsa[YYINITDEPTH];
1574478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYSTYPE *yyvs = yyvsa;
1575478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYSTYPE *yyvsp;
1576478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1577478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1578478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1579478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#define YYPOPSTACK   (yyvsp--, yyssp--)
1580478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1581478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYSIZE_T yystacksize = YYINITDEPTH;
1582478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1583478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* The variables used to return semantic value and location from the
1584478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     action routines.  */
1585478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYSTYPE yyval;
1586478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1587478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1588478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* When reducing, the number of symbols on the RHS of the reduced
1589478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     rule.  */
1590478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  int yylen;
1591478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1592478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYDPRINTF ((stderr, "Starting parse\n"));
1593478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1594478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yystate = 0;
1595478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyerrstatus = 0;
1596478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yynerrs = 0;
1597478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yychar = YYEMPTY;		/* Cause a token to be read.  */
1598478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1599478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Initialize stack pointers.
1600478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     Waste one element of value and location stack
1601478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     so that they stay on the same level as the state stack.
1602478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     The wasted elements are never initialized.  */
1603478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1604478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyssp = yyss;
1605478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyvsp = yyvs;
1606478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1607478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  goto yysetstate;
1608478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1609478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*------------------------------------------------------------.
1610478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yynewstate -- Push a new state, which is found in yystate.  |
1611478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`------------------------------------------------------------*/
1612478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project yynewstate:
1613478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* In all cases, when you get here, the value and location stacks
1614478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     have just been pushed. so pushing a state here evens the stacks.
1615478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     */
1616478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyssp++;
1617478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1618478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project yysetstate:
1619478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  *yyssp = yystate;
1620478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1621478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yyss + yystacksize - 1 <= yyssp)
1622478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1623478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      /* Get the current used size of the three stacks, in elements.  */
1624478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YYSIZE_T yysize = yyssp - yyss + 1;
1625478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1626478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef yyoverflow
1627478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      {
1628478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	/* Give user a chance to reallocate the stack. Use copies of
1629478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	   these so that the &'s don't force the real ones into
1630478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	   memory.  */
1631478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	YYSTYPE *yyvs1 = yyvs;
1632478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	short int *yyss1 = yyss;
1633478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1634478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1635478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	/* Each stack pointer address is followed by the size of the
1636478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	   data in use in that stack, in bytes.  This used to be a
1637478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	   conditional around just the two extra args, but that might
1638478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	   be undefined if yyoverflow is a macro.  */
1639478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	yyoverflow (YY_("memory exhausted"),
1640478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		    &yyss1, yysize * sizeof (*yyssp),
1641478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		    &yyvs1, yysize * sizeof (*yyvsp),
1642478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1643478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		    &yystacksize);
1644478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1645478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	yyss = yyss1;
1646478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	yyvs = yyvs1;
1647478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      }
1648478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else /* no yyoverflow */
1649478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# ifndef YYSTACK_RELOCATE
1650478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      goto yyexhaustedlab;
1651478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# else
1652478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      /* Extend the stack our own way.  */
1653478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      if (YYMAXDEPTH <= yystacksize)
1654478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	goto yyexhaustedlab;
1655478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yystacksize *= 2;
1656478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      if (YYMAXDEPTH < yystacksize)
1657478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	yystacksize = YYMAXDEPTH;
1658478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1659478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      {
1660478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	short int *yyss1 = yyss;
1661478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	union yyalloc *yyptr =
1662478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
1663478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	if (! yyptr)
1664478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  goto yyexhaustedlab;
1665478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	YYSTACK_RELOCATE (yyss);
1666478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	YYSTACK_RELOCATE (yyvs);
1667478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1668478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#  undef YYSTACK_RELOCATE
1669478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	if (yyss1 != yyssa)
1670478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  YYSTACK_FREE (yyss1);
1671478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      }
1672478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project# endif
1673478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /* no yyoverflow */
1674478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1675478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yyssp = yyss + yysize - 1;
1676478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yyvsp = yyvs + yysize - 1;
1677478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1678478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1679478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YYDPRINTF ((stderr, "Stack size increased to %lu\n",
1680478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		  (unsigned long int) yystacksize));
1681478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1682478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      if (yyss + yystacksize - 1 <= yyssp)
1683478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	YYABORT;
1684478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
1685478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1686478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
1687478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1688478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  goto yybackup;
1689478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1690478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*-----------.
1691478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yybackup.  |
1692478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`-----------*/
1693478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyybackup:
1694478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1695478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Do appropriate processing given the current state.  */
1696478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Read a look-ahead token if we need one and don't already have one.  */
1697478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* yyresume: */
1698478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1699478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* First try to decide what to do without reference to look-ahead token.  */
1700478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1701478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyn = yypact[yystate];
1702478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yyn == YYPACT_NINF)
1703478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    goto yydefault;
1704478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1705478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Not known => get a look-ahead token if don't already have one.  */
1706478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1707478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol.  */
1708478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yychar == YYEMPTY)
1709478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1710478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YYDPRINTF ((stderr, "Reading a token: "));
1711478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yychar = YYLEX;
1712478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
1713478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1714478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yychar <= YYEOF)
1715478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1716478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yychar = yytoken = YYEOF;
1717478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YYDPRINTF ((stderr, "Now at end of input.\n"));
1718478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
1719478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  else
1720478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1721478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yytoken = YYTRANSLATE (yychar);
1722478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
1723478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
1724478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1725478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* If the proper action on seeing token YYTOKEN is to reduce or to
1726478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     detect an error, take that action.  */
1727478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyn += yytoken;
1728478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
1729478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    goto yydefault;
1730478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyn = yytable[yyn];
1731478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yyn <= 0)
1732478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1733478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      if (yyn == 0 || yyn == YYTABLE_NINF)
1734478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	goto yyerrlab;
1735478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yyn = -yyn;
1736478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      goto yyreduce;
1737478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
1738478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1739478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yyn == YYFINAL)
1740478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    YYACCEPT;
1741478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1742478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Shift the look-ahead token.  */
1743478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
1744478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1745478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Discard the token being shifted unless it is eof.  */
1746478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yychar != YYEOF)
1747478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    yychar = YYEMPTY;
1748478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1749478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  *++yyvsp = yylval;
1750478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1751478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1752478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Count tokens shifted since error; after three, turn off error
1753478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     status.  */
1754478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yyerrstatus)
1755478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    yyerrstatus--;
1756478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1757478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yystate = yyn;
1758478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  goto yynewstate;
1759478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1760478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1761478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*-----------------------------------------------------------.
1762478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yydefault -- do the default action for the current state.  |
1763478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`-----------------------------------------------------------*/
1764478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyydefault:
1765478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyn = yydefact[yystate];
1766478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yyn == 0)
1767478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    goto yyerrlab;
1768478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  goto yyreduce;
1769478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1770478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1771478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*-----------------------------.
1772478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yyreduce -- Do a reduction.  |
1773478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`-----------------------------*/
1774478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyreduce:
1775478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* yyn is the number of a rule to reduce with.  */
1776478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yylen = yyr2[yyn];
1777478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1778478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* If YYLEN is nonzero, implement the default value of the action:
1779478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     `$$ = $1'.
1780478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1781478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     Otherwise, the following line sets YYVAL to garbage.
1782478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     This behavior is undocumented and Bison
1783478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     users should not rely upon it.  Assigning to YYVAL
1784478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     unconditionally makes the parser a bit smaller, and it avoids a
1785478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     GCC warning that YYVAL may be used uninitialized.  */
1786478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyval = yyvsp[1-yylen];
1787478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1788478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1789478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YY_REDUCE_PRINT (yyn);
1790478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  switch (yyn)
1791478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1792478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project        case 2:
1793478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 211 "grammar.y"
1794478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1795478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	finish_parse((yyvsp[0].blk).b);
1796478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
1797478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1798478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1799478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 4:
1800478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 216 "grammar.y"
1801478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).q = qerr; }
1802478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1803478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1804478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 6:
1805478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 219 "grammar.y"
1806478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { gen_and((yyvsp[-2].blk).b, (yyvsp[0].blk).b); (yyval.blk) = (yyvsp[0].blk); }
1807478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1808478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1809478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 7:
1810478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 220 "grammar.y"
1811478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { gen_and((yyvsp[-2].blk).b, (yyvsp[0].blk).b); (yyval.blk) = (yyvsp[0].blk); }
1812478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1813478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1814478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 8:
1815478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 221 "grammar.y"
1816478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { gen_or((yyvsp[-2].blk).b, (yyvsp[0].blk).b); (yyval.blk) = (yyvsp[0].blk); }
1817478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1818478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1819478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 9:
1820478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 222 "grammar.y"
1821478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { gen_or((yyvsp[-2].blk).b, (yyvsp[0].blk).b); (yyval.blk) = (yyvsp[0].blk); }
1822478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1823478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1824478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 10:
1825478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 224 "grammar.y"
1826478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk) = (yyvsp[-1].blk); }
1827478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1828478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1829478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 11:
1830478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 226 "grammar.y"
1831478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk) = (yyvsp[-1].blk); }
1832478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1833478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1834478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 13:
1835478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 229 "grammar.y"
1836478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_ncode(NULL, (bpf_u_int32)(yyvsp[0].i),
1837478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project						   (yyval.blk).q = (yyvsp[-1].blk).q); }
1838478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1839478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1840478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 14:
1841478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 231 "grammar.y"
1842478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk) = (yyvsp[-1].blk); }
1843478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1844478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1845478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 15:
1846478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 233 "grammar.y"
1847478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_scode((yyvsp[0].s), (yyval.blk).q = (yyvsp[-1].blk).q); }
1848478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1849478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1850478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 16:
1851478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 234 "grammar.y"
1852478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_mcode((yyvsp[-2].s), NULL, (yyvsp[0].i),
1853478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				    (yyval.blk).q = (yyvsp[-3].blk).q); }
1854478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1855478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1856478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 17:
1857478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 236 "grammar.y"
1858478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_mcode((yyvsp[-2].s), (yyvsp[0].s), 0,
1859478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				    (yyval.blk).q = (yyvsp[-3].blk).q); }
1860478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1861478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1862478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 18:
1863478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 238 "grammar.y"
1864478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1865478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  /* Decide how to parse HID based on proto */
1866478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  (yyval.blk).q = (yyvsp[-1].blk).q;
1867478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  (yyval.blk).b = gen_ncode((yyvsp[0].s), 0, (yyval.blk).q);
1868478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				}
1869478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1870478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1871478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 19:
1872478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 243 "grammar.y"
1873478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1874478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef INET6
1875478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  (yyval.blk).b = gen_mcode6((yyvsp[-2].s), NULL, (yyvsp[0].i),
1876478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				    (yyval.blk).q = (yyvsp[-3].blk).q);
1877478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else
1878478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  bpf_error("'ip6addr/prefixlen' not supported "
1879478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project					"in this configuration");
1880478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /*INET6*/
1881478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				}
1882478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1883478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1884478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 20:
1885478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 252 "grammar.y"
1886478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1887478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifdef INET6
1888478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  (yyval.blk).b = gen_mcode6((yyvsp[0].s), 0, 128,
1889478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				    (yyval.blk).q = (yyvsp[-1].blk).q);
1890478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#else
1891478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  bpf_error("'ip6addr' not supported "
1892478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project					"in this configuration");
1893478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /*INET6*/
1894478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				}
1895478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1896478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1897478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 21:
1898478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 261 "grammar.y"
1899478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1900478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  (yyval.blk).b = gen_ecode((yyvsp[0].e), (yyval.blk).q = (yyvsp[-1].blk).q);
1901478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  /*
1902478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				   * $1 was allocated by "pcap_ether_aton()",
1903478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				   * so we must free it now that we're done
1904478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				   * with it.
1905478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				   */
1906478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  free((yyvsp[0].e));
1907478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				}
1908478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1909478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1910478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 22:
1911478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 270 "grammar.y"
1912478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
1913478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  (yyval.blk).b = gen_acode((yyvsp[0].e), (yyval.blk).q = (yyvsp[-1].blk).q);
1914478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  /*
1915478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				   * $1 was allocated by "pcap_ether_aton()",
1916478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				   * so we must free it now that we're done
1917478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				   * with it.
1918478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				   */
1919478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  free((yyvsp[0].e));
1920478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				}
1921478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1922478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1923478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 23:
1924478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 279 "grammar.y"
1925478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { gen_not((yyvsp[0].blk).b); (yyval.blk) = (yyvsp[0].blk); }
1926478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1927478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1928478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 24:
1929478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 281 "grammar.y"
1930478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk) = (yyvsp[-1].blk); }
1931478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1932478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1933478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 25:
1934478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 283 "grammar.y"
1935478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk) = (yyvsp[-1].blk); }
1936478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1937478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1938478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 27:
1939478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 286 "grammar.y"
1940478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { gen_and((yyvsp[-2].blk).b, (yyvsp[0].blk).b); (yyval.blk) = (yyvsp[0].blk); }
1941478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1942478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1943478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 28:
1944478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 287 "grammar.y"
1945478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { gen_or((yyvsp[-2].blk).b, (yyvsp[0].blk).b); (yyval.blk) = (yyvsp[0].blk); }
1946478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1947478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1948478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 29:
1949478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 289 "grammar.y"
1950478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_ncode(NULL, (bpf_u_int32)(yyvsp[0].i),
1951478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project						   (yyval.blk).q = (yyvsp[-1].blk).q); }
1952478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1953478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1954478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 32:
1955478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 294 "grammar.y"
1956478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { gen_not((yyvsp[0].blk).b); (yyval.blk) = (yyvsp[0].blk); }
1957478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1958478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1959478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 33:
1960478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 296 "grammar.y"
1961478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { QSET((yyval.blk).q, (yyvsp[-2].i), (yyvsp[-1].i), (yyvsp[0].i)); }
1962478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1963478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1964478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 34:
1965478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 297 "grammar.y"
1966478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { QSET((yyval.blk).q, (yyvsp[-1].i), (yyvsp[0].i), Q_DEFAULT); }
1967478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1968478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1969478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 35:
1970478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 298 "grammar.y"
1971478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { QSET((yyval.blk).q, (yyvsp[-1].i), Q_DEFAULT, (yyvsp[0].i)); }
1972478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1973478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1974478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 36:
1975478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 299 "grammar.y"
1976478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { QSET((yyval.blk).q, (yyvsp[-1].i), Q_DEFAULT, Q_PROTO); }
1977478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1978478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1979478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 37:
1980478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 300 "grammar.y"
1981478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { QSET((yyval.blk).q, (yyvsp[-1].i), Q_DEFAULT, Q_PROTOCHAIN); }
1982478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1983478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1984478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 38:
1985478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 301 "grammar.y"
1986478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { QSET((yyval.blk).q, (yyvsp[-1].i), Q_DEFAULT, (yyvsp[0].i)); }
1987478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1988478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1989478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 39:
1990478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 303 "grammar.y"
1991478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk) = (yyvsp[0].blk); }
1992478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1993478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1994478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 40:
1995478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 304 "grammar.y"
1996478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = (yyvsp[-1].blk).b; (yyval.blk).q = (yyvsp[-2].blk).q; }
1997478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
1998478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
1999478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 41:
2000478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 305 "grammar.y"
2001478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_proto_abbrev((yyvsp[0].i)); (yyval.blk).q = qerr; }
2002478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2003478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2004478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 42:
2005478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 306 "grammar.y"
2006478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_relation((yyvsp[-1].i), (yyvsp[-2].a), (yyvsp[0].a), 0);
2007478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  (yyval.blk).q = qerr; }
2008478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2009478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2010478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 43:
2011478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 308 "grammar.y"
2012478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_relation((yyvsp[-1].i), (yyvsp[-2].a), (yyvsp[0].a), 1);
2013478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project				  (yyval.blk).q = qerr; }
2014478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2015478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2016478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 44:
2017478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 310 "grammar.y"
2018478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = (yyvsp[0].rblk); (yyval.blk).q = qerr; }
2019478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2020478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2021478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 45:
2022478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 311 "grammar.y"
2023478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_atmtype_abbrev((yyvsp[0].i)); (yyval.blk).q = qerr; }
2024478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2025478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2026478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 46:
2027478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 312 "grammar.y"
2028478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_atmmulti_abbrev((yyvsp[0].i)); (yyval.blk).q = qerr; }
2029478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2030478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2031478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 47:
2032478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 313 "grammar.y"
2033478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = (yyvsp[0].blk).b; (yyval.blk).q = qerr; }
2034478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2035478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2036478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 48:
2037478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 314 "grammar.y"
2038478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_mtp2type_abbrev((yyvsp[0].i)); (yyval.blk).q = qerr; }
2039478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2040478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2041478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 49:
2042478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 315 "grammar.y"
2043478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = (yyvsp[0].blk).b; (yyval.blk).q = qerr; }
2044478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2045478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2046478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 51:
2047478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 319 "grammar.y"
2048478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_DEFAULT; }
2049478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2050478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2051478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 52:
2052478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 322 "grammar.y"
2053478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_SRC; }
2054478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2055478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2056478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 53:
2057478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 323 "grammar.y"
2058478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_DST; }
2059478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2060478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2061478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 54:
2062478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 324 "grammar.y"
2063478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_OR; }
2064478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2065478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2066478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 55:
2067478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 325 "grammar.y"
2068478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_OR; }
2069478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2070478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2071478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 56:
2072478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 326 "grammar.y"
2073478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_AND; }
2074478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2075478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2076478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 57:
2077478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 327 "grammar.y"
2078478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_AND; }
2079478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2080478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2081478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 58:
2082478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 330 "grammar.y"
2083478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_HOST; }
2084478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2085478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2086478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 59:
2087478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 331 "grammar.y"
2088478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_NET; }
2089478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2090478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2091478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 60:
2092478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 332 "grammar.y"
2093478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_PORT; }
2094478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2095478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2096478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 61:
2097478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 333 "grammar.y"
2098478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_PORTRANGE; }
2099478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2100478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2101478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 62:
2102478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 336 "grammar.y"
2103478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_GATEWAY; }
2104478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2105478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2106478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 63:
2107478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 338 "grammar.y"
2108478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_LINK; }
2109478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2110478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2111478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 64:
2112478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 339 "grammar.y"
2113478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_IP; }
2114478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2115478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2116478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 65:
2117478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 340 "grammar.y"
2118478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ARP; }
2119478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2120478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2121478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 66:
2122478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 341 "grammar.y"
2123478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_RARP; }
2124478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2125478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2126478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 67:
2127478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 342 "grammar.y"
2128478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_SCTP; }
2129478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2130478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2131478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 68:
2132478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 343 "grammar.y"
2133478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_TCP; }
2134478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2135478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2136478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 69:
2137478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 344 "grammar.y"
2138478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_UDP; }
2139478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2140478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2141478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 70:
2142478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 345 "grammar.y"
2143478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ICMP; }
2144478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2145478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2146478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 71:
2147478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 346 "grammar.y"
2148478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_IGMP; }
2149478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2150478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2151478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 72:
2152478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 347 "grammar.y"
2153478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_IGRP; }
2154478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2155478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2156478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 73:
2157478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 348 "grammar.y"
2158478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_PIM; }
2159478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2160478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2161478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 74:
2162478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 349 "grammar.y"
2163478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_VRRP; }
2164478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2165478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2166478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 75:
2167478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 350 "grammar.y"
2168478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ATALK; }
2169478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2170478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2171478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 76:
2172478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 351 "grammar.y"
2173478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_AARP; }
2174478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2175478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2176478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 77:
2177478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 352 "grammar.y"
2178478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_DECNET; }
2179478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2180478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2181478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 78:
2182478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 353 "grammar.y"
2183478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_LAT; }
2184478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2185478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2186478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 79:
2187478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 354 "grammar.y"
2188478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_SCA; }
2189478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2190478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2191478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 80:
2192478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 355 "grammar.y"
2193478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_MOPDL; }
2194478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2195478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2196478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 81:
2197478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 356 "grammar.y"
2198478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_MOPRC; }
2199478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2200478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2201478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 82:
2202478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 357 "grammar.y"
2203478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_IPV6; }
2204478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2205478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2206478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 83:
2207478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 358 "grammar.y"
2208478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ICMPV6; }
2209478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2210478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2211478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 84:
2212478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 359 "grammar.y"
2213478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_AH; }
2214478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2215478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2216478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 85:
2217478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 360 "grammar.y"
2218478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ESP; }
2219478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2220478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2221478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 86:
2222478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 361 "grammar.y"
2223478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ISO; }
2224478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2225478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2226478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 87:
2227478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 362 "grammar.y"
2228478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ESIS; }
2229478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2230478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2231478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 88:
2232478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 363 "grammar.y"
2233478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ISIS; }
2234478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2235478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2236478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 89:
2237478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 364 "grammar.y"
2238478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ISIS_L1; }
2239478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2240478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2241478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 90:
2242478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 365 "grammar.y"
2243478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ISIS_L2; }
2244478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2245478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2246478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 91:
2247478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 366 "grammar.y"
2248478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ISIS_IIH; }
2249478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2250478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2251478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 92:
2252478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 367 "grammar.y"
2253478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ISIS_LSP; }
2254478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2255478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2256478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 93:
2257478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 368 "grammar.y"
2258478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ISIS_SNP; }
2259478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2260478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2261478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 94:
2262478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 369 "grammar.y"
2263478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ISIS_PSNP; }
2264478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2265478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2266478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 95:
2267478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 370 "grammar.y"
2268478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_ISIS_CSNP; }
2269478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2270478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2271478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 96:
2272478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 371 "grammar.y"
2273478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_CLNP; }
2274478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2275478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2276478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 97:
2277478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 372 "grammar.y"
2278478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_STP; }
2279478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2280478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2281478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 98:
2282478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 373 "grammar.y"
2283478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_IPX; }
2284478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2285478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2286478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 99:
2287478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 374 "grammar.y"
2288478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_NETBEUI; }
2289478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2290478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2291478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 100:
2292478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 375 "grammar.y"
2293478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = Q_RADIO; }
2294478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2295478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2296478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 101:
2297478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 377 "grammar.y"
2298478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_broadcast((yyvsp[-1].i)); }
2299478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2300478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2301478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 102:
2302478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 378 "grammar.y"
2303478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_multicast((yyvsp[-1].i)); }
2304478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2305478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2306478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 103:
2307478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 379 "grammar.y"
2308478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_less((yyvsp[0].i)); }
2309478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2310478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2311478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 104:
2312478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 380 "grammar.y"
2313478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_greater((yyvsp[0].i)); }
2314478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2315478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2316478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 105:
2317478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 381 "grammar.y"
2318478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_byteop((yyvsp[-1].i), (yyvsp[-2].i), (yyvsp[0].i)); }
2319478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2320478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2321478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 106:
2322478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 382 "grammar.y"
2323478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_inbound(0); }
2324478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2325478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2326478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 107:
2327478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 383 "grammar.y"
2328478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_inbound(1); }
2329478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2330478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2331478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 108:
2332478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 384 "grammar.y"
2333478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_vlan((yyvsp[0].i)); }
2334478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2335478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2336478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 109:
2337478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 385 "grammar.y"
2338478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_vlan(-1); }
2339478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2340478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2341478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 110:
2342478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 386 "grammar.y"
2343478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_mpls((yyvsp[0].i)); }
2344478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2345478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2346478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 111:
2347478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 387 "grammar.y"
2348478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_mpls(-1); }
2349478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2350478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2351478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 112:
2352478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 388 "grammar.y"
2353478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_pppoed(); }
2354478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2355478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2356478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 113:
2357478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 389 "grammar.y"
2358478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_pppoes(); }
2359478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2360478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2361478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 114:
2362478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 390 "grammar.y"
2363478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = (yyvsp[0].rblk); }
2364478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2365478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2366478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 115:
2367478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 393 "grammar.y"
2368478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_pf_ifname((yyvsp[0].s)); }
2369478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2370478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2371478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 116:
2372478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 394 "grammar.y"
2373478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_pf_ruleset((yyvsp[0].s)); }
2374478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2375478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2376478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 117:
2377478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 395 "grammar.y"
2378478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_pf_rnr((yyvsp[0].i)); }
2379478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2380478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2381478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 118:
2382478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 396 "grammar.y"
2383478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_pf_srnr((yyvsp[0].i)); }
2384478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2385478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2386478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 119:
2387478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 397 "grammar.y"
2388478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_pf_reason((yyvsp[0].i)); }
2389478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2390478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2391478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 120:
2392478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 398 "grammar.y"
2393478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.rblk) = gen_pf_action((yyvsp[0].i)); }
2394478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2395478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2396478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 121:
2397478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 401 "grammar.y"
2398478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = (yyvsp[0].i); }
2399478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2400478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2401478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 122:
2402478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 402 "grammar.y"
2403478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = pfreason_to_num((yyvsp[0].s)); }
2404478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2405478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2406478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 123:
2407478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 405 "grammar.y"
2408478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = pfaction_to_num((yyvsp[0].s)); }
2409478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2410478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2411478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 124:
2412478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 408 "grammar.y"
2413478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = BPF_JGT; }
2414478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2415478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2416478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 125:
2417478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 409 "grammar.y"
2418478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = BPF_JGE; }
2419478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2420478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2421478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 126:
2422478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 410 "grammar.y"
2423478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = BPF_JEQ; }
2424478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2425478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2426478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 127:
2427478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 412 "grammar.y"
2428478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = BPF_JGT; }
2429478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2430478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2431478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 128:
2432478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 413 "grammar.y"
2433478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = BPF_JGE; }
2434478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2435478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2436478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 129:
2437478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 414 "grammar.y"
2438478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = BPF_JEQ; }
2439478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2440478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2441478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 130:
2442478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 416 "grammar.y"
2443478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_loadi((yyvsp[0].i)); }
2444478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2445478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2446478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 132:
2447478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 419 "grammar.y"
2448478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_load((yyvsp[-3].i), (yyvsp[-1].a), 1); }
2449478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2450478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2451478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 133:
2452478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 420 "grammar.y"
2453478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_load((yyvsp[-5].i), (yyvsp[-3].a), (yyvsp[-1].i)); }
2454478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2455478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2456478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 134:
2457478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 421 "grammar.y"
2458478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_arth(BPF_ADD, (yyvsp[-2].a), (yyvsp[0].a)); }
2459478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2460478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2461478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 135:
2462478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 422 "grammar.y"
2463478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_arth(BPF_SUB, (yyvsp[-2].a), (yyvsp[0].a)); }
2464478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2465478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2466478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 136:
2467478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 423 "grammar.y"
2468478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_arth(BPF_MUL, (yyvsp[-2].a), (yyvsp[0].a)); }
2469478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2470478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2471478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 137:
2472478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 424 "grammar.y"
2473478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_arth(BPF_DIV, (yyvsp[-2].a), (yyvsp[0].a)); }
2474478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2475478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2476478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 138:
2477478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 425 "grammar.y"
2478478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_arth(BPF_AND, (yyvsp[-2].a), (yyvsp[0].a)); }
2479478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2480478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2481478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 139:
2482478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 426 "grammar.y"
2483478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_arth(BPF_OR, (yyvsp[-2].a), (yyvsp[0].a)); }
2484478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2485478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2486478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 140:
2487478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 427 "grammar.y"
2488478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_arth(BPF_LSH, (yyvsp[-2].a), (yyvsp[0].a)); }
2489478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2490478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2491478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 141:
2492478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 428 "grammar.y"
2493478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_arth(BPF_RSH, (yyvsp[-2].a), (yyvsp[0].a)); }
2494478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2495478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2496478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 142:
2497478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 429 "grammar.y"
2498478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_neg((yyvsp[0].a)); }
2499478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2500478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2501478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 143:
2502478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 430 "grammar.y"
2503478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = (yyvsp[-1].a); }
2504478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2505478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2506478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 144:
2507478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 431 "grammar.y"
2508478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.a) = gen_loadlen(); }
2509478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2510478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2511478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 145:
2512478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 433 "grammar.y"
2513478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = '&'; }
2514478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2515478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2516478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 146:
2517478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 434 "grammar.y"
2518478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = '|'; }
2519478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2520478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2521478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 147:
2522478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 435 "grammar.y"
2523478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = '<'; }
2524478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2525478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2526478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 148:
2527478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 436 "grammar.y"
2528478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = '>'; }
2529478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2530478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2531478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 149:
2532478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 437 "grammar.y"
2533478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = '='; }
2534478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2535478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2536478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 151:
2537478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 440 "grammar.y"
2538478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = (yyvsp[-1].i); }
2539478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2540478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2541478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 152:
2542478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 442 "grammar.y"
2543478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_LANE; }
2544478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2545478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2546478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 153:
2547478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 443 "grammar.y"
2548478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_LLC; }
2549478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2550478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2551478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 154:
2552478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 444 "grammar.y"
2553478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_METAC;	}
2554478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2555478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2556478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 155:
2557478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 445 "grammar.y"
2558478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_BCC; }
2559478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2560478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2561478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 156:
2562478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 446 "grammar.y"
2563478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_OAMF4EC; }
2564478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2565478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2566478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 157:
2567478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 447 "grammar.y"
2568478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_OAMF4SC; }
2569478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2570478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2571478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 158:
2572478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 448 "grammar.y"
2573478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_SC; }
2574478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2575478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2576478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 159:
2577478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 449 "grammar.y"
2578478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_ILMIC; }
2579478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2580478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2581478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 160:
2582478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 451 "grammar.y"
2583478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_OAM; }
2584478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2585478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2586478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 161:
2587478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 452 "grammar.y"
2588478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_OAMF4; }
2589478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2590478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2591478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 162:
2592478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 453 "grammar.y"
2593478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_CONNECTMSG; }
2594478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2595478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2596478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 163:
2597478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 454 "grammar.y"
2598478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = A_METACONNECT; }
2599478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2600478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2601478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 164:
2602478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 457 "grammar.y"
2603478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).atmfieldtype = A_VPI; }
2604478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2605478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2606478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 165:
2607478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 458 "grammar.y"
2608478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).atmfieldtype = A_VCI; }
2609478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2610478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2611478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 167:
2612478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 461 "grammar.y"
2613478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_atmfield_code((yyvsp[-2].blk).atmfieldtype, (bpf_int32)(yyvsp[0].i), (bpf_u_int32)(yyvsp[-1].i), 0); }
2614478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2615478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2616478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 168:
2617478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 462 "grammar.y"
2618478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_atmfield_code((yyvsp[-2].blk).atmfieldtype, (bpf_int32)(yyvsp[0].i), (bpf_u_int32)(yyvsp[-1].i), 1); }
2619478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2620478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2621478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 169:
2622478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 463 "grammar.y"
2623478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = (yyvsp[-1].blk).b; (yyval.blk).q = qerr; }
2624478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2625478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2626478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 170:
2627478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 465 "grammar.y"
2628478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
2629478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	(yyval.blk).atmfieldtype = (yyvsp[-1].blk).atmfieldtype;
2630478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	if ((yyval.blk).atmfieldtype == A_VPI ||
2631478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    (yyval.blk).atmfieldtype == A_VCI)
2632478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		(yyval.blk).b = gen_atmfield_code((yyval.blk).atmfieldtype, (bpf_int32) (yyvsp[0].i), BPF_JEQ, 0);
2633478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	}
2634478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2635478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2636478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 172:
2637478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 473 "grammar.y"
2638478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { gen_or((yyvsp[-2].blk).b, (yyvsp[0].blk).b); (yyval.blk) = (yyvsp[0].blk); }
2639478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2640478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2641478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 173:
2642478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 476 "grammar.y"
2643478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = M_FISU; }
2644478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2645478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2646478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 174:
2647478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 477 "grammar.y"
2648478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = M_LSSU; }
2649478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2650478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2651478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 175:
2652478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 478 "grammar.y"
2653478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.i) = M_MSU; }
2654478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2655478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2656478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 176:
2657478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 481 "grammar.y"
2658478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).mtp3fieldtype = M_SIO; }
2659478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2660478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2661478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 177:
2662478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 482 "grammar.y"
2663478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).mtp3fieldtype = M_OPC; }
2664478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2665478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2666478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 178:
2667478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 483 "grammar.y"
2668478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).mtp3fieldtype = M_DPC; }
2669478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2670478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2671478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 179:
2672478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 484 "grammar.y"
2673478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).mtp3fieldtype = M_SLS; }
2674478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2675478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2676478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 181:
2677478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 487 "grammar.y"
2678478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_mtp3field_code((yyvsp[-2].blk).mtp3fieldtype, (u_int)(yyvsp[0].i), (u_int)(yyvsp[-1].i), 0); }
2679478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2680478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2681478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 182:
2682478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 488 "grammar.y"
2683478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = gen_mtp3field_code((yyvsp[-2].blk).mtp3fieldtype, (u_int)(yyvsp[0].i), (u_int)(yyvsp[-1].i), 1); }
2684478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2685478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2686478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 183:
2687478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 489 "grammar.y"
2688478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { (yyval.blk).b = (yyvsp[-1].blk).b; (yyval.blk).q = qerr; }
2689478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2690478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2691478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 184:
2692478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 491 "grammar.y"
2693478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
2694478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	(yyval.blk).mtp3fieldtype = (yyvsp[-1].blk).mtp3fieldtype;
2695478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	if ((yyval.blk).mtp3fieldtype == M_SIO ||
2696478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    (yyval.blk).mtp3fieldtype == M_OPC ||
2697478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    (yyval.blk).mtp3fieldtype == M_DPC ||
2698478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    (yyval.blk).mtp3fieldtype == M_SLS )
2699478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		(yyval.blk).b = gen_mtp3field_code((yyval.blk).mtp3fieldtype, (u_int) (yyvsp[0].i), BPF_JEQ, 0);
2700478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	}
2701478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2702478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2703478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  case 186:
2704478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 501 "grammar.y"
2705478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    { gen_or((yyvsp[-2].blk).b, (yyvsp[0].blk).b); (yyval.blk) = (yyvsp[0].blk); }
2706478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    break;
2707478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2708478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2709478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      default: break;
2710478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
2711478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2712478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/* Line 1126 of yacc.c.  */
2713478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 2714 "y.tab.c"
2714478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2715478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyvsp -= yylen;
2716478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyssp -= yylen;
2717478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2718478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2719478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YY_STACK_PRINT (yyss, yyssp);
2720478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2721478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  *++yyvsp = yyval;
2722478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2723478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2724478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Now `shift' the result of the reduction.  Determine what state
2725478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     that goes to, based on the state we popped back to and the rule
2726478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     number reduced by.  */
2727478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2728478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyn = yyr1[yyn];
2729478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2730478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
2731478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
2732478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    yystate = yytable[yystate];
2733478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  else
2734478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    yystate = yydefgoto[yyn - YYNTOKENS];
2735478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2736478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  goto yynewstate;
2737478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2738478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2739478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*------------------------------------.
2740478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yyerrlab -- here on detecting error |
2741478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`------------------------------------*/
2742478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyerrlab:
2743478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* If not already recovering from an error, report this error.  */
2744478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (!yyerrstatus)
2745478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
2746478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      ++yynerrs;
2747478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if YYERROR_VERBOSE
2748478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yyn = yypact[yystate];
2749478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2750478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      if (YYPACT_NINF < yyn && yyn < YYLAST)
2751478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	{
2752478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  int yytype = YYTRANSLATE (yychar);
2753478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2754478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  YYSIZE_T yysize = yysize0;
2755478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  YYSIZE_T yysize1;
2756478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  int yysize_overflow = 0;
2757478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  char *yymsg = 0;
2758478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#	  define YYERROR_VERBOSE_ARGS_MAXIMUM 5
2759478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2760478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  int yyx;
2761478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2762478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#if 0
2763478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  /* This is so xgettext sees the translatable formats that are
2764478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	     constructed on the fly.  */
2765478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  YY_("syntax error, unexpected %s");
2766478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  YY_("syntax error, unexpected %s, expecting %s");
2767478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  YY_("syntax error, unexpected %s, expecting %s or %s");
2768478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  YY_("syntax error, unexpected %s, expecting %s or %s or %s");
2769478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
2770478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
2771478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  char *yyfmt;
2772478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  char const *yyf;
2773478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  static char const yyunexpected[] = "syntax error, unexpected %s";
2774478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  static char const yyexpecting[] = ", expecting %s";
2775478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  static char const yyor[] = " or %s";
2776478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  char yyformat[sizeof yyunexpected
2777478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project			+ sizeof yyexpecting - 1
2778478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project			+ ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2779478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project			   * (sizeof yyor - 1))];
2780478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  char const *yyprefix = yyexpecting;
2781478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2782478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  /* Start YYX at -YYN if negative to avoid negative indexes in
2783478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	     YYCHECK.  */
2784478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  int yyxbegin = yyn < 0 ? -yyn : 0;
2785478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2786478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  /* Stay within bounds of both yycheck and yytname.  */
2787478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  int yychecklim = YYLAST - yyn;
2788478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2789478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  int yycount = 1;
2790478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2791478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  yyarg[0] = yytname[yytype];
2792478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  yyfmt = yystpcpy (yyformat, yyunexpected);
2793478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2794478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2795478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
2796478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      {
2797478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2798478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		  {
2799478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		    yycount = 1;
2800478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		    yysize = yysize0;
2801478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		    yyformat[sizeof yyunexpected - 1] = '\0';
2802478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		    break;
2803478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		  }
2804478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		yyarg[yycount++] = yytname[yyx];
2805478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2806478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		yysize_overflow |= yysize1 < yysize;
2807478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		yysize = yysize1;
2808478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		yyfmt = yystpcpy (yyfmt, yyprefix);
2809478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		yyprefix = yyor;
2810478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      }
2811478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2812478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  yyf = YY_(yyformat);
2813478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  yysize1 = yysize + yystrlen (yyf);
2814478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  yysize_overflow |= yysize1 < yysize;
2815478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  yysize = yysize1;
2816478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2817478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  if (!yysize_overflow && yysize <= YYSTACK_ALLOC_MAXIMUM)
2818478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    yymsg = (char *) YYSTACK_ALLOC (yysize);
2819478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  if (yymsg)
2820478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    {
2821478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      /* Avoid sprintf, as that infringes on the user's name space.
2822478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		 Don't have undefined behavior even if the translation
2823478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		 produced a string with the wrong number of "%s"s.  */
2824478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      char *yyp = yymsg;
2825478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      int yyi = 0;
2826478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      while ((*yyp = *yyf))
2827478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		{
2828478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		  if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
2829478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		    {
2830478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		      yyp += yytnamerr (yyp, yyarg[yyi++]);
2831478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		      yyf += 2;
2832478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		    }
2833478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		  else
2834478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		    {
2835478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		      yyp++;
2836478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		      yyf++;
2837478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		    }
2838478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		}
2839478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      yyerror (yymsg);
2840478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      YYSTACK_FREE (yymsg);
2841478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    }
2842478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  else
2843478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    {
2844478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      yyerror (YY_("syntax error"));
2845478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      goto yyexhaustedlab;
2846478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    }
2847478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	}
2848478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      else
2849478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif /* YYERROR_VERBOSE */
2850478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	yyerror (YY_("syntax error"));
2851478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
2852478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2853478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2854478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2855478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yyerrstatus == 3)
2856478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
2857478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      /* If just tried and failed to reuse look-ahead token after an
2858478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	 error, discard it.  */
2859478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2860478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      if (yychar <= YYEOF)
2861478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project        {
2862478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  /* Return failure if at end of input.  */
2863478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  if (yychar == YYEOF)
2864478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    YYABORT;
2865478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project        }
2866478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      else
2867478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	{
2868478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  yydestruct ("Error: discarding", yytoken, &yylval);
2869478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  yychar = YYEMPTY;
2870478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	}
2871478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
2872478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2873478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Else will try to reuse look-ahead token after shifting the error
2874478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     token.  */
2875478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  goto yyerrlab1;
2876478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2877478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2878478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*---------------------------------------------------.
2879478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yyerrorlab -- error raised explicitly by YYERROR.  |
2880478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`---------------------------------------------------*/
2881478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyerrorlab:
2882478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2883478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Pacify compilers like GCC when the user code never invokes
2884478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     YYERROR and the label yyerrorlab therefore never appears in user
2885478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     code.  */
2886478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (0)
2887478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     goto yyerrorlab;
2888478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2889478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyvsp -= yylen;
2890478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyssp -= yylen;
2891478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yystate = *yyssp;
2892478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  goto yyerrlab1;
2893478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2894478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2895478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*-------------------------------------------------------------.
2896478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yyerrlab1 -- common code for both syntax error and YYERROR.  |
2897478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`-------------------------------------------------------------*/
2898478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyerrlab1:
2899478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyerrstatus = 3;	/* Each real token shifted decrements this.  */
2900478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2901478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  for (;;)
2902478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
2903478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yyn = yypact[yystate];
2904478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      if (yyn != YYPACT_NINF)
2905478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	{
2906478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  yyn += YYTERROR;
2907478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	  if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
2908478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    {
2909478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      yyn = yytable[yyn];
2910478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	      if (0 < yyn)
2911478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		break;
2912478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	    }
2913478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	}
2914478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2915478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      /* Pop the current state because it cannot handle the error token.  */
2916478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      if (yyssp == yyss)
2917478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project	YYABORT;
2918478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2919478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2920478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yydestruct ("Error: popping", yystos[yystate], yyvsp);
2921478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YYPOPSTACK;
2922478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yystate = *yyssp;
2923478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YY_STACK_PRINT (yyss, yyssp);
2924478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
2925478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2926478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yyn == YYFINAL)
2927478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    YYACCEPT;
2928478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2929478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  *++yyvsp = yylval;
2930478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2931478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2932478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Shift the error token. */
2933478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
2934478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2935478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yystate = yyn;
2936478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  goto yynewstate;
2937478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2938478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2939478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*-------------------------------------.
2940478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yyacceptlab -- YYACCEPT comes here.  |
2941478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`-------------------------------------*/
2942478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyacceptlab:
2943478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyresult = 0;
2944478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  goto yyreturn;
2945478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2946478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*-----------------------------------.
2947478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yyabortlab -- YYABORT comes here.  |
2948478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`-----------------------------------*/
2949478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyabortlab:
2950478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyresult = 1;
2951478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  goto yyreturn;
2952478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2953478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef yyoverflow
2954478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project/*-------------------------------------------------.
2955478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project| yyexhaustedlab -- memory exhaustion comes here.  |
2956478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project`-------------------------------------------------*/
2957478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyexhaustedlab:
2958478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyerror (YY_("memory exhausted"));
2959478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  yyresult = 2;
2960478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  /* Fall through.  */
2961478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
2962478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2963478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Projectyyreturn:
2964478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yychar != YYEOF && yychar != YYEMPTY)
2965478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project     yydestruct ("Cleanup: discarding lookahead",
2966478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		 yytoken, &yylval);
2967478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  while (yyssp != yyss)
2968478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    {
2969478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      yydestruct ("Cleanup: popping",
2970478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project		  yystos[*yyssp], yyvsp);
2971478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project      YYPOPSTACK;
2972478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    }
2973478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#ifndef yyoverflow
2974478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  if (yyss != yyssa)
2975478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project    YYSTACK_FREE (yyss);
2976478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#endif
2977478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project  return yyresult;
2978478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project}
2979478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2980478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2981478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project#line 503 "grammar.y"
2982478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2983478ab6c8b5bc982589be32eae1e5736efe721b58The Android Open Source Project
2984