001// yacc cod file for GSQLParser component java version
002
003
004
005/*****************************************************************************}
006{         GSQLParser component   java version                                         } 
007{         Copyright (c) 2004-2019 by Gudu software                                        }
008{         http://www.sqlparser.com                                                                                                }
009{*****************************************************************************/
010
011package gudusoft.gsqlparser;
012import java.io.*;
013
014import gudusoft.gsqlparser.nodes.*;
015import gudusoft.gsqlparser.nodes.mdx.*;
016
017
018
019public class TParserMdx extends TCustomParser {
020    //final int _ILLEGAL = 1110;
021    static int  yynacts,yyngotos, yynstates, yynrules ;
022
023    static int[] yya_sym,yya_act,yyr_len,yyr_sym,yyg_sym,yyg_act;    // 1 based
024    //int[] yyg; // 1 based
025    static int[] yyd,yyal,yyah,yygl,yygh; // 0 based
026
027    //String y_yyd_file,y_yyal_file,y_yyah_file,y_yygl_file,y_yygh_file,y_yya_file,y_yyr_file,y_yyg_file;
028    static String table_file;
029
030        static {
031        table_file = "/gudusoft/gsqlparser/parser/mdx/mdx_yacc_table.txt";
032                if (TBaseType.enterprise_edition||TBaseType.mdx_edition){
033                inittable();
034            }
035        }
036
037    public TParserMdx(TSourceTokenList sourcetokens){
038        super(EDbVendor.dbvmdx);
039        
040
041        this.sourcetokenlist = sourcetokens;
042    
043    }
044
045
046    static void inittable(){
047        String line;
048        int lineno = 1,yya_sym_count = 1,yya_act_count = 1,yyg_sym_count = 1,yyg_act_count = 1,yyr_sym_count = 1,yyr_len_count = 1;
049        int yyd_count = 0,yyal_count = 0,yyah_count = 0,yygl_count = 0,yygh_count = 0;
050        boolean inyya_sym = false,inyya_act = false,inyyg_sym = false,inyyg_act = false,inyyr_sym = false,inyyr_len = false;
051        boolean inyyd = false, inyyal = false, inyyah = false, inyygl = false, inyygh = false;
052
053        BufferedReader br = new BufferedReader(new InputStreamReader(TParserMdx.class.getResourceAsStream(table_file)));
054
055            try{
056                while( (line = br.readLine()) != null){
057                           if (line.trim().startsWith("yynacts =")){
058                                String[] ss = line.split("[=;]");
059                               yynacts = Integer.parseInt(ss[1].trim());
060                               yya_sym = new int[yynacts+1];
061                               yya_act = new int[yynacts+1];
062                               //System.out.println("yynacts:"+yynacts);
063                           }else if(line.trim().startsWith("yyngotos =")){
064                               String[] ss = line.split("[=;]");
065                              yyngotos = Integer.parseInt(ss[1].trim());
066                               yyg_sym = new int[yyngotos+1];
067                               yyg_act = new int[yyngotos+1];
068                               //yyg  = new int[yyngotos];
069                              //System.out.println("yyngotos:"+yyngotos);
070                           }else if(line.trim().startsWith("yynrules =")){
071                               String[] ss = line.split("[=;]");
072                              yynrules = Integer.parseInt(ss[1].trim());
073                               yyr_len = new int[yynrules+1];
074                               yyr_sym = new int[yynrules+1];
075                              //System.out.println("yynrules:"+yynrules);
076                           }else if(line.trim().startsWith("yynstates =")){
077                               String[] ss = line.split("[=;]");
078                              yynstates = Integer.parseInt(ss[1].trim());
079                               yyd  = new int[yynstates];
080                               yyal = new int[yynstates];
081                               yyah = new int[yynstates];
082                               yygl = new int[yynstates];
083                               yygh = new int[yynstates];
084                              //System.out.println("yynstates:"+yynstates);
085                           }else if (line.trim().startsWith(";")){
086                              if (inyya_sym){
087                                  inyya_sym = false;
088                                 if (yynacts+1 != yya_sym_count ){
089                                    System.out.println("required:"+(yynacts)+" actually:"+(yya_sym_count-1));
090                                 }
091                              }
092                              else if(inyya_act){
093                                     inyya_act = false;
094                                    if (yynacts+1 != yya_act_count ){
095                                       System.out.println("required:"+(yynacts)+" actually:"+(yya_act_count-1));
096                                    }
097                              }
098                              else if(inyyg_sym){
099                                     inyyg_sym = false;
100                                    if (yyngotos+1 != yyg_sym_count ){
101                                       System.out.println("required:"+(yyngotos)+" actually:"+(yyg_sym_count-1));
102                                    }
103                              }
104                              else if(inyyg_act){
105                                     inyyg_act = false;
106                                    if (yyngotos+1 != yyg_act_count ){
107                                       System.out.println("required:"+(yyngotos)+" actually:"+(yyg_act_count-1));
108                                    }
109                              }
110                              else if(inyyr_sym){
111                                     inyyr_sym = false;
112                                    if (yynrules+1 != yyr_sym_count ){
113                                       System.out.println("required:"+(yynrules)+" actually:"+(yyr_sym_count-1));
114                                    }
115                              }
116                              else if(inyyr_len){
117                                     inyyr_len = false;
118                                    if (yynrules+1 != yyr_len_count ){
119                                       System.out.println("required:"+(yynrules)+" actually:"+(yyr_len_count-1));
120                                    }
121                              }
122                              else if(inyyd){
123                                     inyyd = false;
124                                    if (yynstates != yyd_count ){
125                                       System.out.println("required:"+(yynstates)+" actually:"+(yyd_count));
126                                    }
127                              }
128                              else if(inyyal){
129                                     inyyal = false;
130                                    if (yynstates != yyal_count ){
131                                       System.out.println("required:"+(yynstates)+" actually:"+(yyal_count));
132                                    }
133                              }
134                              else if(inyyah){
135                                     inyyah = false;
136                                    if (yynstates != yyah_count ){
137                                       System.out.println("required:"+(yynstates)+" actually:"+(yyah_count));
138                                    }
139                              }
140                              else if(inyygl){
141                                     inyygl = false;
142                                    if (yynstates != yygl_count ){
143                                       System.out.println("required:"+(yynstates)+" actually:"+(yygl_count));
144                                    }
145                              }
146                              else if(inyygh){
147                                     inyygh = false;
148                                    if (yynstates != yygh_count ){
149                                       System.out.println("required:"+(yynstates)+" actually:"+(yygh_count));
150                                    }
151                              }
152                           }else if(line.trim().startsWith("yya_sym =")){
153                             inyya_sym = true;  
154                           }else if(line.trim().startsWith("yya_act =")){
155                             inyya_act = true;
156                           }else if(line.trim().startsWith("yyg_sym =")){
157                             inyyg_sym = true;
158                           }else if(line.trim().startsWith("yyg_act =")){
159                             inyyg_act = true;
160                           }else if(line.trim().startsWith("yyr_sym =")){
161                             inyyr_sym = true;
162                           }else if(line.trim().startsWith("yyr_len =")){
163                             inyyr_len = true;
164                           }else if(line.trim().startsWith("yyd =")){
165                             inyyd = true;
166                           }else if(line.trim().startsWith("yyal =")){
167                             inyyal = true;
168                           }else if(line.trim().startsWith("yyah =")){
169                             inyyah = true;
170                           }else if(line.trim().startsWith("yygl =")){
171                             inyygl = true;
172                           }else if(line.trim().startsWith("yygh =")){
173                             inyygh = true;
174                           }else if(line.trim().length() == 0){
175                               // this is an empty line, igonre it
176                           }else if(inyya_sym){
177                             String[] ss = line.split("[,]");
178                               for(int j=0;j<ss.length;j++){
179                                   // System.out.println(ss[j].trim());
180                                 yya_sym[yya_sym_count++] = Integer.parseInt(ss[j].trim()); 
181                               }
182                           }else if(inyya_act){
183                             String[] ss = line.split("[,]");
184                               for(int j=0;j<ss.length;j++){
185                                   // System.out.println(ss[j].trim());
186                                 yya_act[yya_act_count++] = Integer.parseInt(ss[j].trim());
187                               }
188                           }else if(inyyg_sym){
189                             String[] ss = line.split("[,]");
190                               for(int j=0;j<ss.length;j++){
191                                   // System.out.println(ss[j].trim());
192                                 yyg_sym[yyg_sym_count++] = Integer.parseInt(ss[j].trim());
193                               }
194                           }else if(inyyg_act){
195                             String[] ss = line.split("[,]");
196                               for(int j=0;j<ss.length;j++){
197                                   // System.out.println(ss[j].trim());
198                                 yyg_act[yyg_act_count++] = Integer.parseInt(ss[j].trim());
199                               }
200                           }else if(inyyr_sym){
201                             String[] ss = line.split("[,]");
202                               for(int j=0;j<ss.length;j++){
203                                   // System.out.println(ss[j].trim());
204                                 yyr_sym[yyr_sym_count++] = Integer.parseInt(ss[j].trim());
205                               }
206                           }else if(inyyr_len){
207                             String[] ss = line.split("[,]");
208                               for(int j=0;j<ss.length;j++){
209                                   // System.out.println(ss[j].trim());
210                                 yyr_len[yyr_len_count++] = Integer.parseInt(ss[j].trim());
211                               }
212                           }else if(inyyd){
213                             String[] ss = line.split("[,]");
214                               for(int j=0;j<ss.length;j++){
215                                   // System.out.println(ss[j].trim());
216                                 yyd[yyd_count++] = Integer.parseInt(ss[j].trim());
217                               }
218                           }else if(inyyal){
219                             String[] ss = line.split("[,]");
220                               for(int j=0;j<ss.length;j++){
221                                   // System.out.println(ss[j].trim());
222                                 yyal[yyal_count++] = Integer.parseInt(ss[j].trim());
223                               }
224                           }else if(inyyah){
225                             String[] ss = line.split("[,]");
226                               for(int j=0;j<ss.length;j++){
227                                   // System.out.println(ss[j].trim());
228                                 yyah[yyah_count++] = Integer.parseInt(ss[j].trim());
229                               }
230                           }else if(inyygl){
231                             String[] ss = line.split("[,]");
232                               for(int j=0;j<ss.length;j++){
233                                   // System.out.println(ss[j].trim());
234                                 yygl[yygl_count++] = Integer.parseInt(ss[j].trim());
235                               }
236                           }else if(inyygh){
237                             String[] ss = line.split("[,]");
238                               for(int j=0;j<ss.length;j++){
239                                   // System.out.println(ss[j].trim());
240                                 yygh[yygh_count++] = Integer.parseInt(ss[j].trim());
241                               }
242                           }
243                }
244            }catch(IOException e){
245              System.out.println(e.toString());
246            }
247    }
248
249
250    public int yyparse(){
251        return do_yyparse(yyd
252            ,yyal,yyah,yya_sym,yya_act
253            ,yygl,yygh,yyg_sym,yyg_act
254            ,yyr_len,yyr_sym,null);
255
256    }
257
258    
259        void yyaction_1_161 ( int yyruleno ){
260                switch(yyruleno){
261                case    1 : { 
262                         
263                                        rootNode = yyv[yysp-0].yyTParseTreeNode;
264                                
265                       break;
266                       }
267                case    2 : { 
268                         
269                                        rootNode = yyv[yysp-1].yyTParseTreeNode;
270                                
271                       break;
272                       }
273                case    3 : { 
274                         yyval.copy(yyv[yysp-0]);
275                       break;
276                       }
277                case    4 : { 
278                         yyval.copy(yyv[yysp-0]);
279                       break;
280                       }
281                case    5 : { 
282                         yyval.copy(yyv[yysp-0]);
283                       break;
284                       }
285                case    6 : { 
286                         yyval.copy(yyv[yysp-0]);
287                       break;
288                       }
289                case    7 : { 
290                         yyval.copy(yyv[yysp-0]);
291                       break;
292                       }
293                case    8 : { 
294                         yyval.copy(yyv[yysp-0]);
295                       break;
296                       }
297                case    9 : { 
298                         yyval.copy(yyv[yysp-0]);
299                       break;
300                       }
301                case   10 : { 
302                         yyval.copy(yyv[yysp-0]);
303                       break;
304                       }
305                case   11 : { 
306                         yyval.copy(yyv[yysp-0]);
307                       break;
308                       }
309                case   12 : { 
310                         yyval.copy(yyv[yysp-0]);
311                       break;
312                       }
313                case   13 : { 
314                         yyval.copy(yyv[yysp-0]);
315                       break;
316                       }
317                case   14 : { 
318                         
319                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxAlterCubeNode.getId(),yyv[yysp-0].yyTSourceToken);
320                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTSourceToken);
321                                        yyval.yyTParseTreeNode.setEndToken(read_to_semicolon());                
322                                
323                       break;
324                       }
325                case   15 : { 
326                         
327                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxAlterCubeNode.getId(),yyv[yysp-0].yyTParseTreeNode);
328                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTSourceToken);
329                                        yyval.yyTParseTreeNode.setEndToken(read_to_semicolon());                
330                                
331                       break;
332                       }
333                case   16 : { 
334                         yyval.copy(yyv[yysp-0]);
335                       break;
336                       }
337                case   17 : { 
338                         yyval.copy(yyv[yysp-1]);
339                       break;
340                       }
341                case   18 : { 
342                       break;
343                       }
344                case   19 : { 
345                         
346                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCreateMeasureNode.getId(),yyv[yysp-2].yyTSourceToken,yyv[yysp-1].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
347                         
348                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-4].yyTSourceToken);
349                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
350                                
351                       break;
352                       }
353                case   20 : { 
354                         
355                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_Dummy.getId());
356                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
357                                        yyval.yyTParseTreeNode.setEndToken(read_to_semicolon());
358                                
359                       break;
360                       }
361                case   21 : { 
362                         
363                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCreateMeasureNode.getId(),yyv[yysp-2].yyTSourceToken,yyv[yysp-1].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
364                         
365                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTSourceToken);
366                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
367                                
368                       break;
369                       }
370                case   22 : { 
371                         
372                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_Dummy.getId());
373                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
374                                        yyval.yyTParseTreeNode.setEndToken(read_before_this_token(TBaseType.rrw_select));
375                                
376                       break;
377                       }
378                case   23 : { 
379                         
380                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCallNode.getId(),yyv[yysp-1].yyTParseTreeNode,null);
381                         
382                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTSourceToken);
383                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-1].yyTParseTreeNode);
384                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
385                                
386                       break;
387                       }
388                case   24 : { 
389                         
390                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCallNode.getId(),yyv[yysp-4].yyTParseTreeNode,yyv[yysp-2].yyTParseTreeNode);
391                         
392                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-5].yyTSourceToken);
393                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-1].yyTSourceToken);
394                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
395                                
396                       break;
397                       }
398                case   25 : { 
399                         yyval.copy(yyv[yysp-0]);
400                       break;
401                       }
402                case   26 : { 
403                         yyval.copy(yyv[yysp-0]);
404                       break;
405                       }
406                case   27 : { 
407                         
408                                        yyval.yyTParseTreeNode = null;
409                                
410                       break;
411                       }
412                case   28 : { 
413                         
414                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
415                                
416                       break;
417                       }
418                case   29 : { 
419                         
420                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxScopeNode.getId(),yyv[yysp-5].yyTParseTreeNode,yyv[yysp-2].yyTParseTreeNode);
421                         
422                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-7].yyTSourceToken);
423                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
424                                
425                       break;
426                       }
427                case   30 : { 
428                         
429                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxScopeNode.getId(),yyv[yysp-1].yyTParseTreeNode);
430                         
431                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTSourceToken);
432                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
433                                
434                       break;
435                       }
436                case   31 : { 
437                         
438                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TParseTreeNode)yyv[yysp-0].yyTParseTreeNode);
439                                
440                       break;
441                       }
442                case   32 : { 
443                         
444                                        ((TPTNodeList)yyv[yysp-1].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
445                                        yyval.yyTParseTreeNode = yyv[yysp-1].yyTParseTreeNode;
446                                
447                       break;
448                       }
449                case   33 : { 
450                         
451                                        yyval.yyTParseTreeNode = yyv[yysp-1].yyTParseTreeNode;
452                                
453                       break;
454                       }
455                case   34 : { 
456                         
457                                        yyval.yyTParseTreeNode = yyv[yysp-1].yyTParseTreeNode;
458                                
459                       break;
460                       }
461                case   35 : { 
462                         
463                                        yyval.yyTParseTreeNode = yyv[yysp-1].yyTParseTreeNode;
464                                
465                       break;
466                       }
467                case   36 : { 
468                         
469                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxDrillthroughNode.getId(),yyv[yysp-1].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
470                         
471                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTSourceToken);
472                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-1].yyTParseTreeNode);
473                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
474                                
475                       break;
476                       }
477                case   37 : { 
478                         yyval.copy(yyv[yysp-0]);
479                       break;
480                       }
481                case   38 : { 
482                         
483                                        yyval.yyTParseTreeNode = null;
484                                
485                       break;
486                       }
487                case   39 : { 
488                         
489                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
490                                
491                       break;
492                       }
493                case   40 : { 
494                         
495                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxExpNode)yyv[yysp-0].yyTParseTreeNode);
496                                
497                       break;
498                       }
499                case   41 : { 
500                         
501                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
502                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
503                                
504                       break;
505                       }
506                case   42 : { 
507                         yyval.copy(yyv[yysp-0]);
508                       break;
509                       }
510                case   43 : { 
511                         
512                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxFunctionNode.getId(),yyv[yysp-1].yyTParseTreeNode,yyv[yysp-3].yyTParseTreeNode,EMdxExpSyntax.Function);
513                                        
514                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTParseTreeNode);
515                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
516                                
517                       break;
518                       }
519                case   44 : { 
520                         
521                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxFunctionNode.getId(),yyv[yysp-1].yyTParseTreeNode,nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-3].yyTSourceToken,EMdxQuoting.UNQUOTED),EMdxExpSyntax.Function);
522                                        
523                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTSourceToken);
524                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
525                                
526                       break;
527                       }
528                case   45 : { 
529                         
530                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCreateSessionCubeNode.getId(),yyv[yysp-5].yyTParseTreeNode,yyv[yysp-3].yyTParseTreeNode,yyv[yysp-1].yyTParseTreeNode);
531                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-8].yyTSourceToken);
532                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
533                                
534                       break;
535                       }
536                case   46 : { 
537                         
538                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).appendList((TPTNodeList<TMdxObjectNode>)yyv[yysp-0].yyTParseTreeNode);
539                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
540                                
541                       break;
542                       }
543                case   47 : { 
544                         
545                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).appendList((TPTNodeList<TMdxObjectNode>)yyv[yysp-0].yyTParseTreeNode);
546                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
547                                
548                       break;
549                       }
550                case   48 : { 
551                         
552                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxObjectNode)yyv[yysp-0].yyTParseTreeNode);
553                                
554                       break;
555                       }
556                case   49 : { 
557                         
558                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
559                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
560                                
561                       break;
562                       }
563                case   50 : { 
564                         
565                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxMeasureNode.getId(),yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
566                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTSourceToken);
567                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-2].yyTParseTreeNode);
568                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-1].yyTSourceToken);
569                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
570                                
571                       break;
572                       }
573                case   51 : { 
574                         
575                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
576                                
577                       break;
578                       }
579                case   52 : { 
580                       break;
581                       }
582                case   53 : { 
583                         yyval.copy(yyv[yysp-0]);
584                       break;
585                       }
586                case   54 : { 
587                         
588                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxObjectNode)yyv[yysp-0].yyTParseTreeNode);
589                                
590                       break;
591                       }
592                case   55 : { 
593                         
594                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
595                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
596                                
597                       break;
598                       }
599                case   56 : { 
600                         yyval.copy(yyv[yysp-0]);
601                       break;
602                       }
603                case   57 : { 
604                         yyval.copy(yyv[yysp-0]);
605                       break;
606                       }
607                case   58 : { 
608                         
609                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxDimensionNode.getId(),yyv[yysp-5].yyTParseTreeNode,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-1].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
610                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-6].yyTSourceToken);
611                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-5].yyTParseTreeNode);
612                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-4].yyTSourceToken);
613                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-3].yyTSourceToken);
614                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-2].yyTParseTreeNode);
615                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-1].yyTParseTreeNode);
616                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
617                                
618                       break;
619                       }
620                case   59 : { 
621                         
622                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
623                                
624                       break;
625                       }
626                case   60 : { 
627                         
628                                        yyval.yyTParseTreeNode = null;
629                                
630                       break;
631                       }
632                case   61 : { 
633                         yyval.copy(yyv[yysp-0]);
634                       break;
635                       }
636                case   62 : { 
637                         yyval.copy(yyv[yysp-0]);
638                       break;
639                       }
640                case   63 : { 
641                         
642                                        yyval.yyTSourceToken = null;
643                                
644                       break;
645                       }
646                case   64 : { 
647                         yyval.copy(yyv[yysp-0]);
648                       break;
649                       }
650                case   65 : { 
651                         yyval.copy(yyv[yysp-0]);
652                       break;
653                       }
654                case   66 : { 
655                         
656                                        yyval.yyTSourceToken = null;
657                                
658                       break;
659                       }
660                case   67 : { 
661                         yyval.copy(yyv[yysp-0]);
662                       break;
663                       }
664                case   68 : { 
665                         
666                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
667                                
668                       break;
669                       }
670                case   69 : { 
671                                
672                                        yyval.yyTParseTreeNode = null;
673                                
674                       break;
675                       }
676                case   70 : { 
677                         yyval.copy(yyv[yysp-0]);
678                       break;
679                       }
680                case   71 : { 
681                         yyval.copy(yyv[yysp-0]);
682                       break;
683                       }
684                case   72 : { 
685                         
686                                        yyval.yyTParseTreeNode = null;
687                                
688                       break;
689                       }
690                case   73 : { 
691                         
692                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxDimContentNode.getId(),yyv[yysp-1].yyTParseTreeNode,null,null,null);
693                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTSourceToken);
694                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
695                                
696                       break;
697                       }
698                case   74 : { 
699                         
700                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxDimContentNode.getId(),yyv[yysp-3].yyTParseTreeNode,yyv[yysp-1].yyTParseTreeNode,null,null);
701                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-4].yyTSourceToken);
702                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
703                                
704                       break;
705                       }
706                case   75 : { 
707                         
708                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxDimContentNode.getId(),yyv[yysp-3].yyTParseTreeNode,null,yyv[yysp-1].yyTParseTreeNode,null);
709                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-4].yyTSourceToken);
710                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
711                                
712                       break;
713                       }
714                case   76 : { 
715                         
716                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxDimContentNode.getId(),yyv[yysp-3].yyTParseTreeNode,null,null,yyv[yysp-1].yyTParseTreeNode);
717                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-4].yyTSourceToken);
718                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
719                                
720                       break;
721                       }
722                case   77 : { 
723                         
724                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxLevelNode)yyv[yysp-0].yyTParseTreeNode);
725                                
726                       break;
727                       }
728                case   78 : { 
729                         
730                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
731                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
732                                
733                       break;
734                       }
735                case   79 : { 
736                         
737                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxLevelNode.getId(),yyv[yysp-3].yyTParseTreeNode,yyv[yysp-1].yyTParseTreeNode);
738                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-4].yyTSourceToken);
739                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
740                                
741                       break;
742                       }
743                case   80 : { 
744                         
745                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
746                                
747                       break;
748                       }
749                case   81 : { 
750                         
751                                        yyval.yyTParseTreeNode = null;
752                                
753                       break;
754                       }
755                case   82 : { 
756                         yyval.copy(yyv[yysp-0]);
757                       break;
758                       }
759                case   83 : { 
760                         yyval.copy(yyv[yysp-0]);
761                       break;
762                       }
763                case   84 : { 
764                         
765                                        yyval.yyTSourceToken = null;
766                                
767                       break;
768                       }
769                case   85 : { 
770                         yyval.copy(yyv[yysp-0]);
771                       break;
772                       }
773                case   86 : { 
774                         yyval.copy(yyv[yysp-0]);
775                       break;
776                       }
777                case   87 : { 
778                         
779                                        yyval.yyTParseTreeNode = null;
780                                
781                       break;
782                       }
783                case   88 : { 
784                         
785                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxLevelContentNode.getId(),yyv[yysp-1].yyTParseTreeNode);
786                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTSourceToken);
787                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
788                                
789                       break;
790                       }
791                case   89 : { 
792                         
793                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxLevelContentNode.getId());
794                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
795                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
796                                
797                       break;
798                       }
799                case   90 : { 
800                         yyval.copy(yyv[yysp-0]);
801                       break;
802                       }
803                case   91 : { 
804                         
805                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
806                                
807                       break;
808                       }
809                case   92 : { 
810                         
811                                        yyval.yyTParseTreeNode = null;
812                                
813                       break;
814                       }
815                case   93 : { 
816                         
817                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxGroupNode)yyv[yysp-0].yyTParseTreeNode);
818                                
819                       break;
820                       }
821                case   94 : { 
822                         
823                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
824                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
825                                
826                       break;
827                       }
828                case   95 : { 
829                         
830                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxGroupNode.getId(),yyv[yysp-3].yyTParseTreeNode,yyv[yysp-1].yyTParseTreeNode);
831                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-4].yyTSourceToken);
832                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
833                                
834                       break;
835                       }
836                case   96 : { 
837                         
838                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxObjectNode)yyv[yysp-0].yyTParseTreeNode);
839                                
840                       break;
841                       }
842                case   97 : { 
843                         
844                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
845                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
846                                
847                       break;
848                       }
849                case   98 : { 
850                         yyval.copy(yyv[yysp-0]);
851                       break;
852                       }
853                case   99 : { 
854                         yyval.copy(yyv[yysp-0]);
855                       break;
856                       }
857                case  100 : { 
858                         
859                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxMemberNode.getId(),yyv[yysp-0].yyTParseTreeNode,null);
860                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-1].yyTSourceToken);
861                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
862                                
863                       break;
864                       }
865                case  101 : { 
866                         
867                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
868                                
869                       break;
870                       }
871                case  102 : { 
872                         
873                                        yyval.yyTParseTreeNode = null;
874                                
875                       break;
876                       }
877                case  103 : { 
878                         yyval.copy(yyv[yysp-0]);
879                       break;
880                       }
881                case  104 : { 
882                         
883                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxMemberNode)yyv[yysp-0].yyTParseTreeNode);
884                                
885                       break;
886                       }
887                case  105 : { 
888                         
889                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
890                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
891                                
892                       break;
893                       }
894                case  106 : { 
895                         
896                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
897                                
898                       break;
899                       }
900                case  107 : { 
901                         
902                                        yyval.yyTParseTreeNode = null;
903                                
904                       break;
905                       }
906                case  108 : { 
907                         
908                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
909                                
910                       break;
911                       }
912                case  109 : { 
913                         yyval.copy(yyv[yysp-0]);
914                       break;
915                       }
916                case  110 : { 
917                         
918                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCreateSubCubeNode.getId(),yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
919                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-4].yyTSourceToken);
920                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
921                                
922                       break;
923                       }
924                case  111 : { 
925                         
926                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCreateSubCubeNode.getId(),yyv[yysp-6].yyTParseTreeNode,yyv[yysp-1].yyTParseTreeNode);
927                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-8].yyTSourceToken);
928                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
929                                
930                       break;
931                       }
932                case  112 : { 
933                         
934                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCreateMemberNode.getId(),yyv[yysp-0].yyTParseTreeNode);
935                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTSourceToken);
936                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
937                                
938                       break;
939                       }
940                case  113 : { 
941                         
942                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCreateSetNode.getId(),yyv[yysp-0].yyTParseTreeNode);
943                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTSourceToken);
944                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
945                                
946                       break;
947                       }
948                case  114 : { 
949                         yyval.copy(yyv[yysp-0]);
950                       break;
951                       }
952                case  115 : { 
953                         yyval.copy(yyv[yysp-0]);
954                       break;
955                       }
956                case  116 : { 
957                         yyval.copy(yyv[yysp-0]);
958                       break;
959                       }
960                case  117 : { 
961                       break;
962                       }
963                case  118 : { 
964                         yyval.copy(yyv[yysp-0]);
965                       break;
966                       }
967                case  119 : { 
968                         yyval.copy(yyv[yysp-0]);
969                       break;
970                       }
971                case  120 : { 
972                         yyval.copy(yyv[yysp-0]);
973                       break;
974                       }
975                case  121 : { 
976                         yyval.copy(yyv[yysp-0]);
977                       break;
978                       }
979                case  122 : { 
980                         yyval.copy(yyv[yysp-0]);
981                       break;
982                       }
983                case  123 : { 
984                         yyval.copy(yyv[yysp-0]);
985                       break;
986                       }
987                case  124 : { 
988                         yyval.copy(yyv[yysp-0]);
989                       break;
990                       }
991                case  125 : { 
992                         yyval.copy(yyv[yysp-0]);
993                       break;
994                       }
995                case  126 : { 
996                         yyval.copy(yyv[yysp-0]);
997                       break;
998                       }
999                case  127 : { 
1000                         yyval.copy(yyv[yysp-0]);
1001                       break;
1002                       }
1003                case  128 : { 
1004                         
1005                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-0].yyTSourceToken,EMdxQuoting.QUOTED);
1006                                        // start and end token was set in init method of TMdxNameSegment
1007                                
1008                       break;
1009                       }
1010                case  129 : { 
1011                         
1012                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-0].yyTSourceToken,EMdxQuoting.UNQUOTED);
1013                                
1014                       break;
1015                       }
1016                case  130 : { 
1017                         
1018                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-0].yyTSourceToken,EMdxQuoting.UNQUOTED);
1019                                
1020                       break;
1021                       }
1022                case  131 : { 
1023                         
1024                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-0].yyTSourceToken,EMdxQuoting.UNQUOTED);
1025                                
1026                       break;
1027                       }
1028                case  132 : { 
1029                         
1030                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-0].yyTSourceToken,EMdxQuoting.UNQUOTED);
1031                                
1032                       break;
1033                       }
1034                case  133 : { 
1035                         
1036                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-0].yyTSourceToken,EMdxQuoting.QUOTED);
1037                                
1038                       break;
1039                       }
1040                case  134 : { 
1041                         
1042                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-0].yyTSourceToken,EMdxQuoting.UNQUOTED);
1043                                
1044                       break;
1045                       }
1046                case  135 : { 
1047                         yyval.copy(yyv[yysp-0]);
1048                       break;
1049                       }
1050                case  136 : { 
1051                         yyval.copy(yyv[yysp-0]);
1052                       break;
1053                       }
1054                case  137 : { 
1055                         
1056                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxNameSegment)yyv[yysp-0].yyTParseTreeNode);
1057                                
1058                       break;
1059                       }
1060                case  138 : { 
1061                         
1062                                        ((TPTNodeList)yyv[yysp-1].yyTParseTreeNode).addElement((TMdxNameSegment)yyv[yysp-0].yyTParseTreeNode);
1063                                        yyval.yyTParseTreeNode = yyv[yysp-1].yyTParseTreeNode;
1064                                
1065                       break;
1066                       }
1067                case  139 : { 
1068                         
1069                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxKeySegment.getId(),yyv[yysp-0].yyTParseTreeNode);
1070                                        //start and end token was set in TMdxKeySegment.init
1071                                
1072                       break;
1073                       }
1074                case  140 : { 
1075                         yyval.copy(yyv[yysp-0]);
1076                       break;
1077                       }
1078                case  141 : { 
1079                         yyval.copy(yyv[yysp-0]);
1080                       break;
1081                       }
1082                case  142 : { 
1083                         yyval.copy(yyv[yysp-0]);
1084                       break;
1085                       }
1086                case  143 : { 
1087                         
1088                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxIdentifierNode.getId(),yyv[yysp-0].yyTParseTreeNode);
1089                                        //start and end token was set in TMdxIdentifierNode.init
1090                                
1091                       break;
1092                       }
1093                case  144 : { 
1094                         
1095                                        ((TMdxIdentifierNode)yyv[yysp-2].yyTParseTreeNode).add((IMdxIdentifierSegment)yyv[yysp-0].yyTParseTreeNode);
1096                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1097                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1098                                
1099                       break;
1100                       }
1101                case  145 : { 
1102                         
1103                                        ((TMdxIdentifierNode)yyv[yysp-2].yyTParseTreeNode).add((IMdxIdentifierSegment)yyv[yysp-0].yyTParseTreeNode);
1104                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1105                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1106                                
1107                       break;
1108                       }
1109                case  146 : { 
1110                         yyval.copy(yyv[yysp-0]);
1111                       break;
1112                       }
1113                case  147 : { 
1114                         yyval.copy(yyv[yysp-0]);
1115                       break;
1116                       }
1117                case  148 : { 
1118                         yyval.copy(yyv[yysp-0]);
1119                       break;
1120                       }
1121                case  149 : { 
1122                         yyval.copy(yyv[yysp-0]);
1123                       break;
1124                       }
1125                case  150 : { 
1126                         
1127                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxIdentifierNode.getId(),yyv[yysp-0].yyTParseTreeNode);
1128                                        //start and end token was set in TMdxIdentifierNode.init
1129                                
1130                       break;
1131                       }
1132                case  151 : { 
1133                         
1134                                        if (yyv[yysp-2].yyTParseTreeNode instanceof TMdxIdentifierNode){
1135                                                ((TMdxIdentifierNode)yyv[yysp-2].yyTParseTreeNode).add((IMdxIdentifierSegment)yyv[yysp-0].yyTParseTreeNode);                    
1136                                                yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1137                                        }else{
1138                                                yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxPropertyNode.getId(),yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode,EMdxExpSyntax.Property);
1139                                        }
1140                         
1141                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1142                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1143                                
1144                       break;
1145                       }
1146                case  152 : { 
1147                         
1148                                        if (yyv[yysp-2].yyTParseTreeNode instanceof TMdxIdentifierNode){
1149                                                ((TMdxIdentifierNode)yyv[yysp-2].yyTParseTreeNode).add((IMdxIdentifierSegment)yyv[yysp-0].yyTParseTreeNode);                    
1150                                                yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1151                                        }else{
1152                                                yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxPropertyNode.getId(),yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode,EMdxExpSyntax.QuotedProperty);
1153                                        }
1154                         
1155                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1156                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1157                                
1158                       break;
1159                       }
1160                case  153 : { 
1161                         
1162                                        if (yyv[yysp-2].yyTParseTreeNode instanceof TMdxIdentifierNode){
1163                                                ((TMdxIdentifierNode)yyv[yysp-2].yyTParseTreeNode).add((IMdxIdentifierSegment)yyv[yysp-0].yyTParseTreeNode);                    
1164                                                yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1165                                        }else{
1166                                                yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxPropertyNode.getId(),yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode,EMdxExpSyntax.AmpersandQuotedProperty);
1167                                        }
1168                         
1169                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1170                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1171                                
1172                       break;
1173                       }
1174                case  154 : { 
1175                         
1176                                        ((TPTNodeList)yyv[yysp-1].yyTParseTreeNode).insertElementAt((TMdxExpNode)yyv[yysp-5].yyTParseTreeNode,0);
1177                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxFunctionNode.getId(),yyv[yysp-1].yyTParseTreeNode,yyv[yysp-3].yyTParseTreeNode,EMdxExpSyntax.Method);
1178                         
1179                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-5].yyTParseTreeNode);
1180                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1181                                
1182                       break;
1183                       }
1184                case  155 : { 
1185                         
1186                                        if (yyv[yysp-2].yyTParseTreeNode instanceof TMdxIdentifierNode){
1187                                                ((TMdxIdentifierNode)yyv[yysp-2].yyTParseTreeNode).add((IMdxIdentifierSegment)yyv[yysp-0].yyTParseTreeNode);                    
1188                                                yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1189                                        }else{
1190                                                yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxPropertyNode.getId(),yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode,EMdxExpSyntax.Property);
1191                                        }
1192                         
1193                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1194                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1195                                
1196                       break;
1197                       }
1198                case  156 : { 
1199                         
1200                                        if (yyv[yysp-2].yyTParseTreeNode instanceof TMdxIdentifierNode){
1201                                                ((TMdxIdentifierNode)yyv[yysp-2].yyTParseTreeNode).add((IMdxIdentifierSegment)yyv[yysp-0].yyTParseTreeNode);                    
1202                                                yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1203                                        }else{
1204                                                yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxPropertyNode.getId(),yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode,EMdxExpSyntax.QuotedProperty);
1205                                        }
1206                         
1207                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1208                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1209                                
1210                       break;
1211                       }
1212                case  157 : { 
1213                         
1214                                        if (yyv[yysp-2].yyTParseTreeNode instanceof TMdxIdentifierNode){
1215                                                ((TMdxIdentifierNode)yyv[yysp-2].yyTParseTreeNode).add((IMdxIdentifierSegment)yyv[yysp-0].yyTParseTreeNode);                    
1216                                                yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1217                                        }else{
1218                                                yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxPropertyNode.getId(),yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode,EMdxExpSyntax.AmpersandQuotedProperty);
1219                                        }
1220                         
1221                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1222                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1223                                
1224                       break;
1225                       }
1226                case  158 : { 
1227                         
1228                                        ((TPTNodeList)yyv[yysp-1].yyTParseTreeNode).insertElementAt((TMdxExpNode)yyv[yysp-5].yyTParseTreeNode,0);
1229                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxFunctionNode.getId(),yyv[yysp-1].yyTParseTreeNode,yyv[yysp-3].yyTParseTreeNode,EMdxExpSyntax.Method);
1230                         
1231                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-5].yyTParseTreeNode);
1232                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1233                                
1234                       break;
1235                       }
1236                case  159 : { 
1237                         
1238                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxFunctionNode.getId(),yyv[yysp-1].yyTParseTreeNode,yyv[yysp-3].yyTParseTreeNode,EMdxExpSyntax.Function);
1239                         
1240                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTParseTreeNode);
1241                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1242                                
1243                       break;
1244                       }
1245                case  160 : { 
1246                         
1247                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxFunctionNode.getId(),null,nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-0].yyTSourceToken,EMdxQuoting.UNQUOTED),EMdxExpSyntax.Function);
1248                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
1249                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1250                                
1251                       break;
1252                       }
1253                case  161 : { 
1254                         
1255                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxFunctionNode.getId(),yyv[yysp-1].yyTParseTreeNode,nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-3].yyTSourceToken,EMdxQuoting.UNQUOTED),EMdxExpSyntax.Function);
1256                         
1257                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTSourceToken);
1258                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1259                                
1260                       break;
1261                       }
1262
1263                }
1264        }
1265        void yyaction_162_332 ( int yyruleno ){
1266                switch(yyruleno){
1267                case  162 : { 
1268                         
1269                                        tmpnode = nf.createPTNodeList((TMdxExpNode)yyv[yysp-3].yyTParseTreeNode);
1270                                        ((TPTNodeList)tmpnode).addElement((TMdxExpNode)yyv[yysp-1].yyTParseTreeNode);
1271                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxFunctionNode.getId(),tmpnode,nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-5].yyTSourceToken,EMdxQuoting.UNQUOTED),EMdxExpSyntax.Cast);
1272                         
1273                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-5].yyTSourceToken);
1274                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1275                                
1276                       break;
1277                       }
1278                case  163 : { 
1279                         
1280                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxTupleNode.getId(),yyv[yysp-1].yyTParseTreeNode);
1281                         
1282                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTSourceToken);
1283                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1284                                
1285                       break;
1286                       }
1287                case  164 : { 
1288                         
1289                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxSetNode.getId(),yyv[yysp-1].yyTParseTreeNode);
1290                         
1291                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTSourceToken);
1292                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1293                                
1294                       break;
1295                       }
1296                case  165 : { 
1297                         yyval.copy(yyv[yysp-0]);
1298                       break;
1299                       }
1300                case  166 : { 
1301                         yyval.copy(yyv[yysp-0]);
1302                       break;
1303                       }
1304                case  167 : { 
1305                         
1306                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxUnaryOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-0].yyTParseTreeNode);
1307                         
1308                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-1].yyTSourceToken);
1309                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1310                                
1311                       break;
1312                       }
1313                case  168 : { 
1314                         
1315                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxUnaryOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-0].yyTParseTreeNode);
1316                         
1317                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-1].yyTSourceToken);
1318                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1319                                
1320                       break;
1321                       }
1322                case  169 : { 
1323                         yyval.copy(yyv[yysp-0]);
1324                       break;
1325                       }
1326                case  170 : { 
1327                         
1328                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1329                         
1330                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1331                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1332                                
1333                       break;
1334                       }
1335                case  171 : { 
1336                         
1337                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1338                         
1339                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1340                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1341                                
1342                       break;
1343                       }
1344                case  172 : { 
1345                         yyval.copy(yyv[yysp-0]);
1346                       break;
1347                       }
1348                case  173 : { 
1349                         
1350                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1351                         
1352                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1353                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1354                                
1355                       break;
1356                       }
1357                case  174 : { 
1358                         
1359                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1360                         
1361                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1362                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1363                                
1364                       break;
1365                       }
1366                case  175 : { 
1367                         
1368                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1369                         
1370                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1371                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1372                                
1373                       break;
1374                       }
1375                case  176 : { 
1376                         yyval.copy(yyv[yysp-0]);
1377                       break;
1378                       }
1379                case  177 : { 
1380                         
1381                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1382                         
1383                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1384                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1385                                
1386                       break;
1387                       }
1388                case  178 : { 
1389                         
1390                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxUnaryOpNode.getId(),yyv[yysp-0].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode);
1391                         
1392                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1393                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1394                                
1395                       break;
1396                       }
1397                case  179 : { 
1398                         
1399                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1400                         
1401                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1402                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1403                                
1404                       break;
1405                       }
1406                case  180 : { 
1407                         
1408                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxUnaryOpNode.getId(),yyv[yysp-0].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode);
1409                         
1410                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1411                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1412                                
1413                       break;
1414                       }
1415                case  181 : { 
1416                         
1417                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1418                         
1419                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1420                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1421                                
1422                       break;
1423                       }
1424                case  182 : { 
1425                         
1426                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-3].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1427                         
1428                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTParseTreeNode);
1429                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1430                                
1431                       break;
1432                       }
1433                case  183 : { 
1434                         
1435                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1436                         
1437                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1438                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1439                                
1440                       break;
1441                       }
1442                case  184 : { 
1443                         
1444                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-3].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1445                         
1446                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTParseTreeNode);
1447                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1448                                
1449                       break;
1450                       }
1451                case  185 : { 
1452                         yyval.copy(yyv[yysp-0]);
1453                       break;
1454                       }
1455                case  186 : { 
1456                         
1457                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxUnaryOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-0].yyTParseTreeNode);
1458                         
1459                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-1].yyTSourceToken);
1460                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1461                                
1462                       break;
1463                       }
1464                case  187 : { 
1465                         yyval.copy(yyv[yysp-0]);
1466                       break;
1467                       }
1468                case  188 : { 
1469                         
1470                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1471                         
1472                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1473                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1474                                
1475                       break;
1476                       }
1477                case  189 : { 
1478                         yyval.copy(yyv[yysp-0]);
1479                       break;
1480                       }
1481                case  190 : { 
1482                         
1483                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1484                         
1485                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1486                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1487                                
1488                       break;
1489                       }
1490                case  191 : { 
1491                         
1492                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1493                         
1494                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1495                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1496                                
1497                       break;
1498                       }
1499                case  192 : { 
1500                         
1501                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1502                         
1503                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1504                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1505                                
1506                       break;
1507                       }
1508                case  193 : { 
1509                         
1510                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCaseNode.getId(),yyv[yysp-3].yyTParseTreeNode,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-1].yyTParseTreeNode);
1511                         
1512                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-4].yyTSourceToken);
1513                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1514                                
1515                       break;
1516                       }
1517                case  194 : { 
1518                         yyval.copy(yyv[yysp-0]);
1519                       break;
1520                       }
1521                case  195 : { 
1522                         
1523                                yyval.yyTParseTreeNode = null;
1524                         
1525                       break;
1526                       }
1527                case  196 : { 
1528                         
1529                                        ((TPTNodeList)yyv[yysp-1].yyTParseTreeNode).addElement((TMdxExpNode)yyv[yysp-0].yyTParseTreeNode);
1530                                        yyval.yyTParseTreeNode = yyv[yysp-1].yyTParseTreeNode;
1531                         
1532                       break;
1533                       }
1534                case  197 : { 
1535                         
1536                                yyval.yyTParseTreeNode = nf.createPTNodeList(null);
1537                         
1538                       break;
1539                       }
1540                case  198 : { 
1541                         
1542                                yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxWhenNode.getId(),yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1543                         
1544                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTSourceToken);
1545                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1546                         
1547                       break;
1548                       }
1549                case  199 : { 
1550                         
1551                                yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
1552                         
1553                       break;
1554                       }
1555                case  200 : { 
1556                         
1557                                yyval.yyTParseTreeNode = null;
1558                         
1559                       break;
1560                       }
1561                case  201 : { 
1562                         
1563                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxBinOpNode.getId(),yyv[yysp-1].yyTSourceToken,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1564                         
1565                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1566                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1567                                
1568                       break;
1569                       }
1570                case  202 : { 
1571                         yyval.copy(yyv[yysp-0]);
1572                       break;
1573                       }
1574                case  203 : { 
1575                         yyval.copy(yyv[yysp-0]);
1576                       break;
1577                       }
1578                case  204 : { 
1579                         
1580                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxEmptyNode.getId());
1581                                
1582                       break;
1583                       }
1584                case  205 : { 
1585                         
1586                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxExpNode)yyv[yysp-0].yyTParseTreeNode);
1587                                
1588                       break;
1589                       }
1590                case  206 : { 
1591                         
1592                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement((TMdxExpNode)yyv[yysp-0].yyTParseTreeNode);
1593                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1594                                
1595                       break;
1596                       }
1597                case  207 : { 
1598                         yyval.copy(yyv[yysp-0]);
1599                       break;
1600                       }
1601                case  208 : { 
1602                         
1603                                        yyval.yyTParseTreeNode = nf.createPTNodeList(null);
1604                                
1605                       break;
1606                       }
1607                case  209 : { 
1608                         yyval.copy(yyv[yysp-0]);
1609                       break;
1610                       }
1611                case  210 : { 
1612                         
1613                                        yyval.yyTParseTreeNode = yyv[yysp-1].yyTParseTreeNode;
1614                                
1615                       break;
1616                       }
1617                case  211 : { 
1618                         
1619                                        if (yyv[yysp-2].yyTParseTreeNode instanceof TMdxIdentifierNode){
1620                                                yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxSelectNode.getId(),yyv[yysp-6].yyTParseTreeNode,yyv[yysp-4].yyTParseTreeNode,yyv[yysp-2].yyTParseTreeNode,null,yyv[yysp-1].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1621                                        }else{
1622                                                yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxSelectNode.getId(),yyv[yysp-6].yyTParseTreeNode,yyv[yysp-4].yyTParseTreeNode,null,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-1].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1623                                        }
1624                         
1625                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-5].yyTSourceToken);
1626                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-6].yyTParseTreeNode);
1627                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-2].yyTParseTreeNode);               
1628                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-1].yyTParseTreeNode);
1629                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1630                                
1631                       break;
1632                       }
1633                case  212 : { 
1634                         
1635                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
1636                                
1637                       break;
1638                       }
1639                case  213 : { 
1640                         
1641                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
1642                                
1643                       break;
1644                       }
1645                case  214 : { 
1646                         
1647                                        yyval.yyTParseTreeNode = null;
1648                                
1649                       break;
1650                       }
1651                case  215 : { 
1652                         yyval.copy(yyv[yysp-0]);
1653                       break;
1654                       }
1655                case  216 : { 
1656                         
1657                                yyval.yyTParseTreeNode = null;
1658                         
1659                       break;
1660                       }
1661                case  217 : { 
1662                         
1663                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxAxisNode)yyv[yysp-0].yyTParseTreeNode);
1664                                
1665                       break;
1666                       }
1667                case  218 : { 
1668                         
1669                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
1670                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1671                                
1672                       break;
1673                       }
1674                case  219 : { 
1675                         
1676                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxWhereNode.getId(),yyv[yysp-0].yyTParseTreeNode);
1677                                
1678                       break;
1679                       }
1680                case  220 : { 
1681                         
1682                                        yyval.yyTParseTreeNode = null;
1683                                
1684                       break;
1685                       }
1686                case  221 : { 
1687                         yyval.copy(yyv[yysp-0]);
1688                       break;
1689                       }
1690                case  222 : { 
1691                         
1692                                        yyval.yyTParseTreeNode = null;
1693                                
1694                       break;
1695                       }
1696                case  223 : { 
1697                         
1698                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxWithNode)yyv[yysp-0].yyTParseTreeNode);
1699                                
1700                       break;
1701                       }
1702                case  224 : { 
1703                         
1704                                        ((TPTNodeList)yyv[yysp-1].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
1705                                        yyval.yyTParseTreeNode = yyv[yysp-1].yyTParseTreeNode;
1706                         
1707                       break;
1708                       }
1709                case  225 : { 
1710                         yyval.copy(yyv[yysp-0]);
1711                       break;
1712                       }
1713                case  226 : { 
1714                         yyval.copy(yyv[yysp-0]);
1715                       break;
1716                       }
1717                case  227 : { 
1718                         
1719                                yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxWithMemberNode.getId(),yyv[yysp-3].yyTParseTreeNode,yyv[yysp-1].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1720                         
1721                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-4].yyTSourceToken);
1722                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-1].yyTParseTreeNode);
1723                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1724                         
1725                       break;
1726                       }
1727                case  228 : { 
1728                         
1729                                        ((TMdxIdentifierNode)yyv[yysp-3].yyTParseTreeNode).insertAt((IMdxIdentifierSegment)nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-5].yyTSourceToken,EMdxQuoting.UNQUOTED),0);
1730                         
1731                                        ((TMdxIdentifierNode)yyv[yysp-3].yyTParseTreeNode).setStartToken(yyv[yysp-5].yyTSourceToken);
1732                                        
1733                                yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxWithMemberNode.getId(),yyv[yysp-3].yyTParseTreeNode,yyv[yysp-1].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1734                         
1735                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-6].yyTSourceToken);
1736                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-1].yyTParseTreeNode);
1737                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1738                         
1739                         
1740                       break;
1741                       }
1742                case  229 : { 
1743                         
1744                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
1745                                
1746                       break;
1747                       }
1748                case  230 : { 
1749                         
1750                                        yyval.yyTParseTreeNode = null;
1751                                
1752                       break;
1753                       }
1754                case  231 : { 
1755                         
1756                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxCalcPropNode)yyv[yysp-0].yyTParseTreeNode);
1757                                
1758                       break;
1759                       }
1760                case  232 : { 
1761                         
1762                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
1763                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1764                                
1765                       break;
1766                       }
1767                case  233 : { 
1768                         yyval.copy(yyv[yysp-0]);
1769                       break;
1770                       }
1771                case  234 : { 
1772                         
1773                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCalcPropNode.getId(),nf.createNode(ENodeType.T_MdxIdentifierNode.getId(),yyv[yysp-2].yyTParseTreeNode),yyv[yysp-0].yyTParseTreeNode);
1774                         
1775                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTParseTreeNode);
1776                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1777                                
1778                       break;
1779                       }
1780                case  235 : { 
1781                         
1782                                        tmpnode  = nf.createNode(ENodeType.T_MdxIdentifierNode.getId(),nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-2].yyTSourceToken,EMdxQuoting.UNQUOTED));
1783                                        tmpnode2 = nf.createNode(ENodeType.T_MdxIdentifierNode.getId(),nf.createNode(ENodeType.T_MdxNameSegment.getId(),yyv[yysp-0].yyTSourceToken,EMdxQuoting.UNQUOTED));
1784                         
1785                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxCalcPropNode.getId(),tmpnode,tmpnode2);
1786                         
1787                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTSourceToken);
1788                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1789                                
1790                       break;
1791                       }
1792                case  236 : { 
1793                         
1794                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxWithSetNode.getId(),yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode,null);
1795                         
1796                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTSourceToken);
1797                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1798                         
1799                       break;
1800                       }
1801                case  237 : { 
1802                         yyval.copy(yyv[yysp-0]);
1803                       break;
1804                       }
1805                case  238 : { 
1806                         
1807                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxAxisNode.getId(),yyv[yysp-4].yyTParseTreeNode,yyv[yysp-3].yyTParseTreeNode,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1808                         
1809                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTParseTreeNode);
1810                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-4].yyTParseTreeNode);
1811                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1812                                
1813                       break;
1814                       }
1815                case  239 : { 
1816                         
1817                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxAxisNode.getId(),yyv[yysp-4].yyTParseTreeNode,yyv[yysp-3].yyTParseTreeNode,yyv[yysp-2].yyTParseTreeNode,yyv[yysp-0].yyTParseTreeNode);
1818                         
1819                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTParseTreeNode);
1820                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-4].yyTParseTreeNode);
1821                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1822                                
1823                       break;
1824                       }
1825                case  240 : { 
1826                         
1827                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxNonEmptyNode.getId());
1828                         
1829                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-1].yyTSourceToken);
1830                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1831                                
1832                       break;
1833                       }
1834                case  241 : { 
1835                         
1836                                        yyval.yyTParseTreeNode = null;
1837                                
1838                       break;
1839                       }
1840                case  242 : { 
1841                         
1842                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxAxis.getId(),EMdxAxisType.Columns);
1843                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
1844                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1845                                
1846                       break;
1847                       }
1848                case  243 : { 
1849                         
1850                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxAxis.getId(),EMdxAxisType.Rows);
1851                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
1852                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1853                                
1854                       break;
1855                       }
1856                case  244 : { 
1857                         
1858                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxAxis.getId(),EMdxAxisType.Pages);
1859                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
1860                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1861                                
1862                       break;
1863                       }
1864                case  245 : { 
1865                         
1866                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxAxis.getId(),EMdxAxisType.Sections);
1867                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
1868                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1869                                
1870                       break;
1871                       }
1872                case  246 : { 
1873                         
1874                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxAxis.getId(),EMdxAxisType.Chapters);
1875                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
1876                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1877                                
1878                       break;
1879                       }
1880                case  247 : { 
1881                         
1882                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxAxis.getId(),EMdxAxisType.Ordinal);
1883                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
1884                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
1885                                
1886                       break;
1887                       }
1888                case  248 : { 
1889                         
1890                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxAxis.getId(),EMdxAxisType.Axis,yyv[yysp-1].yyTSourceToken);
1891                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-3].yyTSourceToken);
1892                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-1].yyTSourceToken);
1893                                
1894                       break;
1895                       }
1896                case  249 : { 
1897                         
1898                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxNonEmptyNode.getId(),yyv[yysp-0].yyTParseTreeNode);
1899                         
1900                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-1].yyTSourceToken);
1901                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-2].yyTSourceToken);
1902                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTParseTreeNode);
1903                                
1904                       break;
1905                       }
1906                case  250 : { 
1907                         yyval.copy(yyv[yysp-0]);
1908                       break;
1909                       }
1910                case  251 : { 
1911                         
1912                                        yyval.yyTSourceToken = null;
1913                                
1914                       break;
1915                       }
1916                case  252 : { 
1917                         
1918                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxIdentifierNode)yyv[yysp-0].yyTParseTreeNode);
1919                                
1920                       break;
1921                       }
1922                case  253 : { 
1923                         
1924                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
1925                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1926                                
1927                       break;
1928                       }
1929                case  254 : { 
1930                         yyval.copy(yyv[yysp-0]);
1931                       break;
1932                       }
1933                case  255 : { 
1934                         
1935                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxIdentifierNode)yyv[yysp-0].yyTParseTreeNode);
1936                                
1937                       break;
1938                       }
1939                case  256 : { 
1940                         
1941                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
1942                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;  
1943                                
1944                       break;
1945                       }
1946                case  257 : { 
1947                         yyval.copy(yyv[yysp-0]);
1948                       break;
1949                       }
1950                case  258 : { 
1951                         yyval.copy(yyv[yysp-0]);
1952                       break;
1953                       }
1954                case  259 : { 
1955                         
1956                                        yyval.yyTParseTreeNode = yyv[yysp-0].yyTParseTreeNode;
1957                                
1958                       break;
1959                       }
1960                case  260 : { 
1961                         yyval.copy(yyv[yysp-0]);
1962                       break;
1963                       }
1964                case  261 : { 
1965                       break;
1966                       }
1967                case  262 : { 
1968                         
1969                                        yyval.yyTParseTreeNode = nf.createPTNodeList((TMdxExpNode)yyv[yysp-0].yyTParseTreeNode);
1970                                
1971                       break;
1972                       }
1973                case  263 : { 
1974                         
1975                                        ((TPTNodeList)yyv[yysp-2].yyTParseTreeNode).addElement(yyv[yysp-0].yyTParseTreeNode);
1976                                        yyval.yyTParseTreeNode = yyv[yysp-2].yyTParseTreeNode;
1977                                
1978                       break;
1979                       }
1980                case  264 : { 
1981                         yyval.copy(yyv[yysp-0]);
1982                       break;
1983                       }
1984                case  265 : { 
1985                         yyval.copy(yyv[yysp-0]);
1986                       break;
1987                       }
1988                case  266 : { 
1989                         yyval.copy(yyv[yysp-0]);
1990                       break;
1991                       }
1992                case  267 : { 
1993                         
1994                                        yyval.yyTParseTreeNode = null;
1995                                
1996                       break;
1997                       }
1998                case  268 : { 
1999                         yyval.copy(yyv[yysp-0]);
2000                       break;
2001                       }
2002                case  269 : { 
2003                         yyval.copy(yyv[yysp-0]);
2004                       break;
2005                       }
2006                case  270 : { 
2007                         yyval.copy(yyv[yysp-2]);
2008                       break;
2009                       }
2010                case  271 : { 
2011                         yyval.copy(yyv[yysp-0]);
2012                       break;
2013                       }
2014                case  272 : { 
2015                       break;
2016                       }
2017                case  273 : { 
2018                         
2019                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxIntegerConstNode.getId(),yyv[yysp-0].yyTSourceToken);
2020                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
2021                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
2022                                
2023                       break;
2024                       }
2025                case  274 : { 
2026                         
2027                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxStringConstNode.getId(),yyv[yysp-0].yyTSourceToken);
2028                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
2029                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
2030                                
2031                       break;
2032                       }
2033                case  275 : { 
2034                         
2035                                        yyval.yyTParseTreeNode = nf.createNode(ENodeType.T_MdxFloatConstNode.getId(),yyv[yysp-0].yyTSourceToken);
2036                                        yyval.yyTParseTreeNode.setStartToken(yyv[yysp-0].yyTSourceToken);
2037                                        yyval.yyTParseTreeNode.setEndToken(yyv[yysp-0].yyTSourceToken);
2038                                
2039                       break;
2040                       }
2041                case  276 : { 
2042                         yyval.copy(yyv[yysp-0]);
2043                       break;
2044                       }
2045                case  277 : { 
2046                         yyval.copy(yyv[yysp-0]);
2047                       break;
2048                       }
2049                case  278 : { 
2050                         yyval.copy(yyv[yysp-0]);
2051                       break;
2052                       }
2053                case  279 : { 
2054                         yyval.copy(yyv[yysp-0]);
2055                       break;
2056                       }
2057                case  280 : { 
2058                         yyval.copy(yyv[yysp-0]);
2059                       break;
2060                       }
2061                case  281 : { 
2062                         yyval.copy(yyv[yysp-0]);
2063                       break;
2064                       }
2065                case  282 : { 
2066                         yyval.copy(yyv[yysp-0]);
2067                       break;
2068                       }
2069                case  283 : { 
2070                         yyval.copy(yyv[yysp-0]);
2071                       break;
2072                       }
2073                case  284 : { 
2074                         yyval.copy(yyv[yysp-0]);
2075                       break;
2076                       }
2077                case  285 : { 
2078                         yyval.copy(yyv[yysp-0]);
2079                       break;
2080                       }
2081                case  286 : { 
2082                         yyval.copy(yyv[yysp-0]);
2083                       break;
2084                       }
2085                case  287 : { 
2086                         yyval.copy(yyv[yysp-0]);
2087                       break;
2088                       }
2089                case  288 : { 
2090                         yyval.copy(yyv[yysp-0]);
2091                       break;
2092                       }
2093                case  289 : { 
2094                         yyval.copy(yyv[yysp-0]);
2095                       break;
2096                       }
2097                case  290 : { 
2098                         yyval.copy(yyv[yysp-0]);
2099                       break;
2100                       }
2101                case  291 : { 
2102                         yyval.copy(yyv[yysp-0]);
2103                       break;
2104                       }
2105                case  292 : { 
2106                         yyval.copy(yyv[yysp-0]);
2107                       break;
2108                       }
2109                case  293 : { 
2110                         yyval.copy(yyv[yysp-0]);
2111                       break;
2112                       }
2113                case  294 : { 
2114                         yyval.copy(yyv[yysp-0]);
2115                       break;
2116                       }
2117                case  295 : { 
2118                         yyval.copy(yyv[yysp-0]);
2119                       break;
2120                       }
2121                case  296 : { 
2122                         yyval.copy(yyv[yysp-0]);
2123                       break;
2124                       }
2125                case  297 : { 
2126                         yyval.copy(yyv[yysp-0]);
2127                       break;
2128                       }
2129                case  298 : { 
2130                         yyval.copy(yyv[yysp-0]);
2131                       break;
2132                       }
2133                case  299 : { 
2134                         yyval.copy(yyv[yysp-0]);
2135                       break;
2136                       }
2137                case  300 : { 
2138                         yyval.copy(yyv[yysp-0]);
2139                       break;
2140                       }
2141                case  301 : { 
2142                         yyval.copy(yyv[yysp-0]);
2143                       break;
2144                       }
2145                case  302 : { 
2146                         yyval.copy(yyv[yysp-0]);
2147                       break;
2148                       }
2149                case  303 : { 
2150                         yyval.copy(yyv[yysp-0]);
2151                       break;
2152                       }
2153                case  304 : { 
2154                         yyval.copy(yyv[yysp-0]);
2155                       break;
2156                       }
2157                case  305 : { 
2158                         yyval.copy(yyv[yysp-0]);
2159                       break;
2160                       }
2161                case  306 : { 
2162                         yyval.copy(yyv[yysp-0]);
2163                       break;
2164                       }
2165                case  307 : { 
2166                         yyval.copy(yyv[yysp-0]);
2167                       break;
2168                       }
2169                case  308 : { 
2170                         yyval.copy(yyv[yysp-0]);
2171                       break;
2172                       }
2173                case  309 : { 
2174                         yyval.copy(yyv[yysp-0]);
2175                       break;
2176                       }
2177                case  310 : { 
2178                         yyval.copy(yyv[yysp-0]);
2179                       break;
2180                       }
2181                case  311 : { 
2182                         yyval.copy(yyv[yysp-0]);
2183                       break;
2184                       }
2185                case  312 : { 
2186                         yyval.copy(yyv[yysp-0]);
2187                       break;
2188                       }
2189                case  313 : { 
2190                         yyval.copy(yyv[yysp-0]);
2191                       break;
2192                       }
2193                case  314 : { 
2194                         yyval.copy(yyv[yysp-0]);
2195                       break;
2196                       }
2197                case  315 : { 
2198                         yyval.copy(yyv[yysp-0]);
2199                       break;
2200                       }
2201                case  316 : { 
2202                         yyval.copy(yyv[yysp-0]);
2203                       break;
2204                       }
2205                case  317 : { 
2206                         yyval.copy(yyv[yysp-0]);
2207                       break;
2208                       }
2209                case  318 : { 
2210                         yyval.copy(yyv[yysp-0]);
2211                       break;
2212                       }
2213                case  319 : { 
2214                         yyval.copy(yyv[yysp-0]);
2215                       break;
2216                       }
2217                case  320 : { 
2218                         yyval.copy(yyv[yysp-0]);
2219                       break;
2220                       }
2221                case  321 : { 
2222                         yyval.copy(yyv[yysp-0]);
2223                       break;
2224                       }
2225                case  322 : { 
2226                         yyval.copy(yyv[yysp-0]);
2227                       break;
2228                       }
2229                case  323 : { 
2230                         yyval.copy(yyv[yysp-0]);
2231                       break;
2232                       }
2233                case  324 : { 
2234                         yyval.copy(yyv[yysp-0]);
2235                       break;
2236                       }
2237                case  325 : { 
2238                         yyval.copy(yyv[yysp-0]);
2239                       break;
2240                       }
2241                case  326 : { 
2242                         yyval.copy(yyv[yysp-0]);
2243                       break;
2244                       }
2245                case  327 : { 
2246                         yyval.copy(yyv[yysp-0]);
2247                       break;
2248                       }
2249                case  328 : { 
2250                         yyval.copy(yyv[yysp-0]);
2251                       break;
2252                       }
2253                case  329 : { 
2254                         yyval.copy(yyv[yysp-0]);
2255                       break;
2256                       }
2257                case  330 : { 
2258                         yyval.copy(yyv[yysp-0]);
2259                       break;
2260                       }
2261                case  331 : { 
2262                         yyval.copy(yyv[yysp-0]);
2263                       break;
2264                       }
2265                case  332 : { 
2266                         yyval.copy(yyv[yysp-0]);
2267                       break;
2268                       }
2269
2270                }
2271        }
2272        void yyaction_333_582 ( int yyruleno ){
2273                switch(yyruleno){
2274                case  333 : { 
2275                         yyval.copy(yyv[yysp-0]);
2276                       break;
2277                       }
2278                case  334 : { 
2279                         yyval.copy(yyv[yysp-0]);
2280                       break;
2281                       }
2282                case  335 : { 
2283                         yyval.copy(yyv[yysp-0]);
2284                       break;
2285                       }
2286                case  336 : { 
2287                         yyval.copy(yyv[yysp-0]);
2288                       break;
2289                       }
2290                case  337 : { 
2291                         yyval.copy(yyv[yysp-0]);
2292                       break;
2293                       }
2294                case  338 : { 
2295                         yyval.copy(yyv[yysp-0]);
2296                       break;
2297                       }
2298                case  339 : { 
2299                         yyval.copy(yyv[yysp-0]);
2300                       break;
2301                       }
2302                case  340 : { 
2303                         yyval.copy(yyv[yysp-0]);
2304                       break;
2305                       }
2306                case  341 : { 
2307                         yyval.copy(yyv[yysp-0]);
2308                       break;
2309                       }
2310                case  342 : { 
2311                         yyval.copy(yyv[yysp-0]);
2312                       break;
2313                       }
2314                case  343 : { 
2315                         yyval.copy(yyv[yysp-0]);
2316                       break;
2317                       }
2318                case  344 : { 
2319                         yyval.copy(yyv[yysp-0]);
2320                       break;
2321                       }
2322                case  345 : { 
2323                         yyval.copy(yyv[yysp-0]);
2324                       break;
2325                       }
2326                case  346 : { 
2327                         yyval.copy(yyv[yysp-0]);
2328                       break;
2329                       }
2330                case  347 : { 
2331                         yyval.copy(yyv[yysp-0]);
2332                       break;
2333                       }
2334                case  348 : { 
2335                         yyval.copy(yyv[yysp-0]);
2336                       break;
2337                       }
2338                case  349 : { 
2339                         yyval.copy(yyv[yysp-0]);
2340                       break;
2341                       }
2342                case  350 : { 
2343                         yyval.copy(yyv[yysp-0]);
2344                       break;
2345                       }
2346                case  351 : { 
2347                         yyval.copy(yyv[yysp-0]);
2348                       break;
2349                       }
2350                case  352 : { 
2351                         yyval.copy(yyv[yysp-0]);
2352                       break;
2353                       }
2354                case  353 : { 
2355                         yyval.copy(yyv[yysp-0]);
2356                       break;
2357                       }
2358                case  354 : { 
2359                         yyval.copy(yyv[yysp-0]);
2360                       break;
2361                       }
2362                case  355 : { 
2363                         yyval.copy(yyv[yysp-0]);
2364                       break;
2365                       }
2366                case  356 : { 
2367                         yyval.copy(yyv[yysp-0]);
2368                       break;
2369                       }
2370                case  357 : { 
2371                         yyval.copy(yyv[yysp-0]);
2372                       break;
2373                       }
2374                case  358 : { 
2375                         yyval.copy(yyv[yysp-0]);
2376                       break;
2377                       }
2378                case  359 : { 
2379                         yyval.copy(yyv[yysp-0]);
2380                       break;
2381                       }
2382                case  360 : { 
2383                         yyval.copy(yyv[yysp-0]);
2384                       break;
2385                       }
2386                case  361 : { 
2387                         yyval.copy(yyv[yysp-0]);
2388                       break;
2389                       }
2390                case  362 : { 
2391                         yyval.copy(yyv[yysp-0]);
2392                       break;
2393                       }
2394                case  363 : { 
2395                         yyval.copy(yyv[yysp-0]);
2396                       break;
2397                       }
2398                case  364 : { 
2399                         yyval.copy(yyv[yysp-0]);
2400                       break;
2401                       }
2402                case  365 : { 
2403                         yyval.copy(yyv[yysp-0]);
2404                       break;
2405                       }
2406                case  366 : { 
2407                         yyval.copy(yyv[yysp-0]);
2408                       break;
2409                       }
2410                case  367 : { 
2411                         yyval.copy(yyv[yysp-0]);
2412                       break;
2413                       }
2414                case  368 : { 
2415                         yyval.copy(yyv[yysp-0]);
2416                       break;
2417                       }
2418                case  369 : { 
2419                         yyval.copy(yyv[yysp-0]);
2420                       break;
2421                       }
2422                case  370 : { 
2423                         yyval.copy(yyv[yysp-0]);
2424                       break;
2425                       }
2426                case  371 : { 
2427                         yyval.copy(yyv[yysp-0]);
2428                       break;
2429                       }
2430                case  372 : { 
2431                         yyval.copy(yyv[yysp-0]);
2432                       break;
2433                       }
2434                case  373 : { 
2435                         yyval.copy(yyv[yysp-0]);
2436                       break;
2437                       }
2438                case  374 : { 
2439                         yyval.copy(yyv[yysp-0]);
2440                       break;
2441                       }
2442                case  375 : { 
2443                         yyval.copy(yyv[yysp-0]);
2444                       break;
2445                       }
2446                case  376 : { 
2447                         yyval.copy(yyv[yysp-0]);
2448                       break;
2449                       }
2450                case  377 : { 
2451                         yyval.copy(yyv[yysp-0]);
2452                       break;
2453                       }
2454                case  378 : { 
2455                         yyval.copy(yyv[yysp-0]);
2456                       break;
2457                       }
2458                case  379 : { 
2459                         yyval.copy(yyv[yysp-0]);
2460                       break;
2461                       }
2462                case  380 : { 
2463                         yyval.copy(yyv[yysp-0]);
2464                       break;
2465                       }
2466                case  381 : { 
2467                         yyval.copy(yyv[yysp-0]);
2468                       break;
2469                       }
2470                case  382 : { 
2471                         yyval.copy(yyv[yysp-0]);
2472                       break;
2473                       }
2474                case  383 : { 
2475                         yyval.copy(yyv[yysp-0]);
2476                       break;
2477                       }
2478                case  384 : { 
2479                         yyval.copy(yyv[yysp-0]);
2480                       break;
2481                       }
2482                case  385 : { 
2483                         yyval.copy(yyv[yysp-0]);
2484                       break;
2485                       }
2486                case  386 : { 
2487                         yyval.copy(yyv[yysp-0]);
2488                       break;
2489                       }
2490                case  387 : { 
2491                         yyval.copy(yyv[yysp-0]);
2492                       break;
2493                       }
2494                case  388 : { 
2495                         yyval.copy(yyv[yysp-0]);
2496                       break;
2497                       }
2498                case  389 : { 
2499                         yyval.copy(yyv[yysp-0]);
2500                       break;
2501                       }
2502                case  390 : { 
2503                         yyval.copy(yyv[yysp-0]);
2504                       break;
2505                       }
2506                case  391 : { 
2507                         yyval.copy(yyv[yysp-0]);
2508                       break;
2509                       }
2510                case  392 : { 
2511                         yyval.copy(yyv[yysp-0]);
2512                       break;
2513                       }
2514                case  393 : { 
2515                         yyval.copy(yyv[yysp-0]);
2516                       break;
2517                       }
2518                case  394 : { 
2519                         yyval.copy(yyv[yysp-0]);
2520                       break;
2521                       }
2522                case  395 : { 
2523                         yyval.copy(yyv[yysp-0]);
2524                       break;
2525                       }
2526                case  396 : { 
2527                         yyval.copy(yyv[yysp-0]);
2528                       break;
2529                       }
2530                case  397 : { 
2531                         yyval.copy(yyv[yysp-0]);
2532                       break;
2533                       }
2534                case  398 : { 
2535                         yyval.copy(yyv[yysp-0]);
2536                       break;
2537                       }
2538                case  399 : { 
2539                         yyval.copy(yyv[yysp-0]);
2540                       break;
2541                       }
2542                case  400 : { 
2543                         yyval.copy(yyv[yysp-0]);
2544                       break;
2545                       }
2546                case  401 : { 
2547                         yyval.copy(yyv[yysp-0]);
2548                       break;
2549                       }
2550                case  402 : { 
2551                         yyval.copy(yyv[yysp-0]);
2552                       break;
2553                       }
2554                case  403 : { 
2555                         yyval.copy(yyv[yysp-0]);
2556                       break;
2557                       }
2558                case  404 : { 
2559                         yyval.copy(yyv[yysp-0]);
2560                       break;
2561                       }
2562                case  405 : { 
2563                         yyval.copy(yyv[yysp-0]);
2564                       break;
2565                       }
2566                case  406 : { 
2567                         yyval.copy(yyv[yysp-0]);
2568                       break;
2569                       }
2570                case  407 : { 
2571                         yyval.copy(yyv[yysp-0]);
2572                       break;
2573                       }
2574                case  408 : { 
2575                         yyval.copy(yyv[yysp-0]);
2576                       break;
2577                       }
2578                case  409 : { 
2579                         yyval.copy(yyv[yysp-0]);
2580                       break;
2581                       }
2582                case  410 : { 
2583                         yyval.copy(yyv[yysp-0]);
2584                       break;
2585                       }
2586                case  411 : { 
2587                         yyval.copy(yyv[yysp-0]);
2588                       break;
2589                       }
2590                case  412 : { 
2591                         yyval.copy(yyv[yysp-0]);
2592                       break;
2593                       }
2594                case  413 : { 
2595                         yyval.copy(yyv[yysp-0]);
2596                       break;
2597                       }
2598                case  414 : { 
2599                         yyval.copy(yyv[yysp-0]);
2600                       break;
2601                       }
2602                case  415 : { 
2603                         yyval.copy(yyv[yysp-0]);
2604                       break;
2605                       }
2606                case  416 : { 
2607                         yyval.copy(yyv[yysp-0]);
2608                       break;
2609                       }
2610                case  417 : { 
2611                         yyval.copy(yyv[yysp-0]);
2612                       break;
2613                       }
2614                case  418 : { 
2615                         yyval.copy(yyv[yysp-0]);
2616                       break;
2617                       }
2618                case  419 : { 
2619                         yyval.copy(yyv[yysp-0]);
2620                       break;
2621                       }
2622                case  420 : { 
2623                         yyval.copy(yyv[yysp-0]);
2624                       break;
2625                       }
2626                case  421 : { 
2627                         yyval.copy(yyv[yysp-0]);
2628                       break;
2629                       }
2630                case  422 : { 
2631                         yyval.copy(yyv[yysp-0]);
2632                       break;
2633                       }
2634                case  423 : { 
2635                         yyval.copy(yyv[yysp-0]);
2636                       break;
2637                       }
2638                case  424 : { 
2639                         yyval.copy(yyv[yysp-0]);
2640                       break;
2641                       }
2642                case  425 : { 
2643                         yyval.copy(yyv[yysp-0]);
2644                       break;
2645                       }
2646                case  426 : { 
2647                         yyval.copy(yyv[yysp-0]);
2648                       break;
2649                       }
2650                case  427 : { 
2651                         yyval.copy(yyv[yysp-0]);
2652                       break;
2653                       }
2654                case  428 : { 
2655                         yyval.copy(yyv[yysp-0]);
2656                       break;
2657                       }
2658                case  429 : { 
2659                         yyval.copy(yyv[yysp-0]);
2660                       break;
2661                       }
2662                case  430 : { 
2663                         yyval.copy(yyv[yysp-0]);
2664                       break;
2665                       }
2666                case  431 : { 
2667                         yyval.copy(yyv[yysp-0]);
2668                       break;
2669                       }
2670                case  432 : { 
2671                         yyval.copy(yyv[yysp-0]);
2672                       break;
2673                       }
2674                case  433 : { 
2675                         yyval.copy(yyv[yysp-0]);
2676                       break;
2677                       }
2678                case  434 : { 
2679                         yyval.copy(yyv[yysp-0]);
2680                       break;
2681                       }
2682                case  435 : { 
2683                         yyval.copy(yyv[yysp-0]);
2684                       break;
2685                       }
2686                case  436 : { 
2687                         yyval.copy(yyv[yysp-0]);
2688                       break;
2689                       }
2690                case  437 : { 
2691                         yyval.copy(yyv[yysp-0]);
2692                       break;
2693                       }
2694                case  438 : { 
2695                         yyval.copy(yyv[yysp-0]);
2696                       break;
2697                       }
2698                case  439 : { 
2699                         yyval.copy(yyv[yysp-0]);
2700                       break;
2701                       }
2702                case  440 : { 
2703                         yyval.copy(yyv[yysp-0]);
2704                       break;
2705                       }
2706                case  441 : { 
2707                         yyval.copy(yyv[yysp-0]);
2708                       break;
2709                       }
2710                case  442 : { 
2711                         yyval.copy(yyv[yysp-0]);
2712                       break;
2713                       }
2714                case  443 : { 
2715                         yyval.copy(yyv[yysp-0]);
2716                       break;
2717                       }
2718                case  444 : { 
2719                         yyval.copy(yyv[yysp-0]);
2720                       break;
2721                       }
2722                case  445 : { 
2723                         yyval.copy(yyv[yysp-0]);
2724                       break;
2725                       }
2726                case  446 : { 
2727                         yyval.copy(yyv[yysp-0]);
2728                       break;
2729                       }
2730                case  447 : { 
2731                         yyval.copy(yyv[yysp-0]);
2732                       break;
2733                       }
2734                case  448 : { 
2735                         yyval.copy(yyv[yysp-0]);
2736                       break;
2737                       }
2738                case  449 : { 
2739                         yyval.copy(yyv[yysp-0]);
2740                       break;
2741                       }
2742                case  450 : { 
2743                         yyval.copy(yyv[yysp-0]);
2744                       break;
2745                       }
2746                case  451 : { 
2747                         yyval.copy(yyv[yysp-0]);
2748                       break;
2749                       }
2750                case  452 : { 
2751                         yyval.copy(yyv[yysp-0]);
2752                       break;
2753                       }
2754                case  453 : { 
2755                         yyval.copy(yyv[yysp-0]);
2756                       break;
2757                       }
2758                case  454 : { 
2759                         yyval.copy(yyv[yysp-0]);
2760                       break;
2761                       }
2762                case  455 : { 
2763                         yyval.copy(yyv[yysp-0]);
2764                       break;
2765                       }
2766                case  456 : { 
2767                         yyval.copy(yyv[yysp-0]);
2768                       break;
2769                       }
2770                case  457 : { 
2771                         yyval.copy(yyv[yysp-0]);
2772                       break;
2773                       }
2774                case  458 : { 
2775                         yyval.copy(yyv[yysp-0]);
2776                       break;
2777                       }
2778                case  459 : { 
2779                         yyval.copy(yyv[yysp-0]);
2780                       break;
2781                       }
2782                case  460 : { 
2783                         yyval.copy(yyv[yysp-0]);
2784                       break;
2785                       }
2786                case  461 : { 
2787                         yyval.copy(yyv[yysp-0]);
2788                       break;
2789                       }
2790                case  462 : { 
2791                         yyval.copy(yyv[yysp-0]);
2792                       break;
2793                       }
2794                case  463 : { 
2795                         yyval.copy(yyv[yysp-0]);
2796                       break;
2797                       }
2798                case  464 : { 
2799                         yyval.copy(yyv[yysp-0]);
2800                       break;
2801                       }
2802                case  465 : { 
2803                         yyval.copy(yyv[yysp-0]);
2804                       break;
2805                       }
2806                case  466 : { 
2807                         yyval.copy(yyv[yysp-0]);
2808                       break;
2809                       }
2810                case  467 : { 
2811                         yyval.copy(yyv[yysp-0]);
2812                       break;
2813                       }
2814                case  468 : { 
2815                         yyval.copy(yyv[yysp-0]);
2816                       break;
2817                       }
2818                case  469 : { 
2819                         yyval.copy(yyv[yysp-0]);
2820                       break;
2821                       }
2822                case  470 : { 
2823                         yyval.copy(yyv[yysp-0]);
2824                       break;
2825                       }
2826                case  471 : { 
2827                         yyval.copy(yyv[yysp-0]);
2828                       break;
2829                       }
2830                case  472 : { 
2831                         yyval.copy(yyv[yysp-0]);
2832                       break;
2833                       }
2834                case  473 : { 
2835                         yyval.copy(yyv[yysp-0]);
2836                       break;
2837                       }
2838                case  474 : { 
2839                         yyval.copy(yyv[yysp-0]);
2840                       break;
2841                       }
2842                case  475 : { 
2843                         yyval.copy(yyv[yysp-0]);
2844                       break;
2845                       }
2846                case  476 : { 
2847                         yyval.copy(yyv[yysp-0]);
2848                       break;
2849                       }
2850                case  477 : { 
2851                         yyval.copy(yyv[yysp-0]);
2852                       break;
2853                       }
2854                case  478 : { 
2855                         yyval.copy(yyv[yysp-0]);
2856                       break;
2857                       }
2858                case  479 : { 
2859                         yyval.copy(yyv[yysp-0]);
2860                       break;
2861                       }
2862                case  480 : { 
2863                         yyval.copy(yyv[yysp-0]);
2864                       break;
2865                       }
2866                case  481 : { 
2867                         yyval.copy(yyv[yysp-0]);
2868                       break;
2869                       }
2870                case  482 : { 
2871                         yyval.copy(yyv[yysp-0]);
2872                       break;
2873                       }
2874                case  483 : { 
2875                         yyval.copy(yyv[yysp-0]);
2876                       break;
2877                       }
2878                case  484 : { 
2879                         yyval.copy(yyv[yysp-0]);
2880                       break;
2881                       }
2882                case  485 : { 
2883                         yyval.copy(yyv[yysp-0]);
2884                       break;
2885                       }
2886                case  486 : { 
2887                         yyval.copy(yyv[yysp-0]);
2888                       break;
2889                       }
2890                case  487 : { 
2891                         yyval.copy(yyv[yysp-0]);
2892                       break;
2893                       }
2894                case  488 : { 
2895                         yyval.copy(yyv[yysp-0]);
2896                       break;
2897                       }
2898                case  489 : { 
2899                         yyval.copy(yyv[yysp-0]);
2900                       break;
2901                       }
2902                case  490 : { 
2903                         yyval.copy(yyv[yysp-0]);
2904                       break;
2905                       }
2906                case  491 : { 
2907                         yyval.copy(yyv[yysp-0]);
2908                       break;
2909                       }
2910                case  492 : { 
2911                         yyval.copy(yyv[yysp-0]);
2912                       break;
2913                       }
2914                case  493 : { 
2915                         yyval.copy(yyv[yysp-0]);
2916                       break;
2917                       }
2918                case  494 : { 
2919                         yyval.copy(yyv[yysp-0]);
2920                       break;
2921                       }
2922                case  495 : { 
2923                         yyval.copy(yyv[yysp-0]);
2924                       break;
2925                       }
2926                case  496 : { 
2927                         yyval.copy(yyv[yysp-0]);
2928                       break;
2929                       }
2930                case  497 : { 
2931                         yyval.copy(yyv[yysp-0]);
2932                       break;
2933                       }
2934                case  498 : { 
2935                         yyval.copy(yyv[yysp-0]);
2936                       break;
2937                       }
2938                case  499 : { 
2939                         yyval.copy(yyv[yysp-0]);
2940                       break;
2941                       }
2942                case  500 : { 
2943                         yyval.copy(yyv[yysp-0]);
2944                       break;
2945                       }
2946                case  501 : { 
2947                         yyval.copy(yyv[yysp-0]);
2948                       break;
2949                       }
2950                case  502 : { 
2951                         yyval.copy(yyv[yysp-0]);
2952                       break;
2953                       }
2954                case  503 : { 
2955                         yyval.copy(yyv[yysp-0]);
2956                       break;
2957                       }
2958                case  504 : { 
2959                         yyval.copy(yyv[yysp-0]);
2960                       break;
2961                       }
2962                case  505 : { 
2963                         yyval.copy(yyv[yysp-0]);
2964                       break;
2965                       }
2966                case  506 : { 
2967                         yyval.copy(yyv[yysp-0]);
2968                       break;
2969                       }
2970                case  507 : { 
2971                         yyval.copy(yyv[yysp-0]);
2972                       break;
2973                       }
2974                case  508 : { 
2975                         yyval.copy(yyv[yysp-0]);
2976                       break;
2977                       }
2978                case  509 : { 
2979                         yyval.copy(yyv[yysp-0]);
2980                       break;
2981                       }
2982                case  510 : { 
2983                         yyval.copy(yyv[yysp-0]);
2984                       break;
2985                       }
2986                case  511 : { 
2987                         yyval.copy(yyv[yysp-0]);
2988                       break;
2989                       }
2990                case  512 : { 
2991                         yyval.copy(yyv[yysp-0]);
2992                       break;
2993                       }
2994                case  513 : { 
2995                         yyval.copy(yyv[yysp-0]);
2996                       break;
2997                       }
2998                case  514 : { 
2999                         yyval.copy(yyv[yysp-0]);
3000                       break;
3001                       }
3002                case  515 : { 
3003                         yyval.copy(yyv[yysp-0]);
3004                       break;
3005                       }
3006                case  516 : { 
3007                         yyval.copy(yyv[yysp-0]);
3008                       break;
3009                       }
3010                case  517 : { 
3011                         yyval.copy(yyv[yysp-0]);
3012                       break;
3013                       }
3014                case  518 : { 
3015                         yyval.copy(yyv[yysp-0]);
3016                       break;
3017                       }
3018                case  519 : { 
3019                         yyval.copy(yyv[yysp-0]);
3020                       break;
3021                       }
3022                case  520 : { 
3023                         yyval.copy(yyv[yysp-0]);
3024                       break;
3025                       }
3026                case  521 : { 
3027                         yyval.copy(yyv[yysp-0]);
3028                       break;
3029                       }
3030                case  522 : { 
3031                         yyval.copy(yyv[yysp-0]);
3032                       break;
3033                       }
3034                case  523 : { 
3035                         yyval.copy(yyv[yysp-0]);
3036                       break;
3037                       }
3038                case  524 : { 
3039                         yyval.copy(yyv[yysp-0]);
3040                       break;
3041                       }
3042                case  525 : { 
3043                         yyval.copy(yyv[yysp-0]);
3044                       break;
3045                       }
3046                case  526 : { 
3047                         yyval.copy(yyv[yysp-0]);
3048                       break;
3049                       }
3050                case  527 : { 
3051                         yyval.copy(yyv[yysp-0]);
3052                       break;
3053                       }
3054                case  528 : { 
3055                         yyval.copy(yyv[yysp-0]);
3056                       break;
3057                       }
3058                case  529 : { 
3059                         yyval.copy(yyv[yysp-0]);
3060                       break;
3061                       }
3062                case  530 : { 
3063                         yyval.copy(yyv[yysp-0]);
3064                       break;
3065                       }
3066                case  531 : { 
3067                         yyval.copy(yyv[yysp-0]);
3068                       break;
3069                       }
3070                case  532 : { 
3071                         yyval.copy(yyv[yysp-0]);
3072                       break;
3073                       }
3074                case  533 : { 
3075                         yyval.copy(yyv[yysp-0]);
3076                       break;
3077                       }
3078                case  534 : { 
3079                         yyval.copy(yyv[yysp-0]);
3080                       break;
3081                       }
3082                case  535 : { 
3083                         yyval.copy(yyv[yysp-0]);
3084                       break;
3085                       }
3086                case  536 : { 
3087                         yyval.copy(yyv[yysp-0]);
3088                       break;
3089                       }
3090                case  537 : { 
3091                         yyval.copy(yyv[yysp-0]);
3092                       break;
3093                       }
3094                case  538 : { 
3095                         yyval.copy(yyv[yysp-0]);
3096                       break;
3097                       }
3098                case  539 : { 
3099                         yyval.copy(yyv[yysp-0]);
3100                       break;
3101                       }
3102                case  540 : { 
3103                         yyval.copy(yyv[yysp-0]);
3104                       break;
3105                       }
3106                case  541 : { 
3107                         yyval.copy(yyv[yysp-0]);
3108                       break;
3109                       }
3110                case  542 : { 
3111                         yyval.copy(yyv[yysp-0]);
3112                       break;
3113                       }
3114                case  543 : { 
3115                         yyval.copy(yyv[yysp-0]);
3116                       break;
3117                       }
3118                case  544 : { 
3119                         yyval.copy(yyv[yysp-0]);
3120                       break;
3121                       }
3122                case  545 : { 
3123                         yyval.copy(yyv[yysp-0]);
3124                       break;
3125                       }
3126                case  546 : { 
3127                         yyval.copy(yyv[yysp-0]);
3128                       break;
3129                       }
3130                case  547 : { 
3131                         yyval.copy(yyv[yysp-0]);
3132                       break;
3133                       }
3134                case  548 : { 
3135                         yyval.copy(yyv[yysp-0]);
3136                       break;
3137                       }
3138                case  549 : { 
3139                         yyval.copy(yyv[yysp-0]);
3140                       break;
3141                       }
3142                case  550 : { 
3143                         yyval.copy(yyv[yysp-0]);
3144                       break;
3145                       }
3146                case  551 : { 
3147                         yyval.copy(yyv[yysp-0]);
3148                       break;
3149                       }
3150                case  552 : { 
3151                         yyval.copy(yyv[yysp-0]);
3152                       break;
3153                       }
3154                case  553 : { 
3155                         yyval.copy(yyv[yysp-0]);
3156                       break;
3157                       }
3158                case  554 : { 
3159                         yyval.copy(yyv[yysp-0]);
3160                       break;
3161                       }
3162                case  555 : { 
3163                         yyval.copy(yyv[yysp-0]);
3164                       break;
3165                       }
3166                case  556 : { 
3167                         yyval.copy(yyv[yysp-0]);
3168                       break;
3169                       }
3170                case  557 : { 
3171                         yyval.copy(yyv[yysp-0]);
3172                       break;
3173                       }
3174                case  558 : { 
3175                         yyval.copy(yyv[yysp-0]);
3176                       break;
3177                       }
3178                case  559 : { 
3179                         yyval.copy(yyv[yysp-0]);
3180                       break;
3181                       }
3182                case  560 : { 
3183                         yyval.copy(yyv[yysp-0]);
3184                       break;
3185                       }
3186                case  561 : { 
3187                         yyval.copy(yyv[yysp-0]);
3188                       break;
3189                       }
3190                case  562 : { 
3191                         yyval.copy(yyv[yysp-0]);
3192                       break;
3193                       }
3194                case  563 : { 
3195                         yyval.copy(yyv[yysp-0]);
3196                       break;
3197                       }
3198                case  564 : { 
3199                         yyval.copy(yyv[yysp-0]);
3200                       break;
3201                       }
3202                case  565 : { 
3203                         yyval.copy(yyv[yysp-0]);
3204                       break;
3205                       }
3206                case  566 : { 
3207                         yyval.copy(yyv[yysp-0]);
3208                       break;
3209                       }
3210                case  567 : { 
3211                         yyval.copy(yyv[yysp-0]);
3212                       break;
3213                       }
3214                case  568 : { 
3215                         yyval.copy(yyv[yysp-0]);
3216                       break;
3217                       }
3218                case  569 : { 
3219                         yyval.copy(yyv[yysp-0]);
3220                       break;
3221                       }
3222                case  570 : { 
3223                         yyval.copy(yyv[yysp-0]);
3224                       break;
3225                       }
3226                case  571 : { 
3227                         yyval.copy(yyv[yysp-0]);
3228                       break;
3229                       }
3230                case  572 : { 
3231                         yyval.copy(yyv[yysp-0]);
3232                       break;
3233                       }
3234                case  573 : { 
3235                         yyval.copy(yyv[yysp-0]);
3236                       break;
3237                       }
3238                case  574 : { 
3239                         yyval.copy(yyv[yysp-0]);
3240                       break;
3241                       }
3242                case  575 : { 
3243                         yyval.copy(yyv[yysp-0]);
3244                       break;
3245                       }
3246                case  576 : { 
3247                         yyval.copy(yyv[yysp-0]);
3248                       break;
3249                       }
3250                case  577 : { 
3251                         yyval.copy(yyv[yysp-0]);
3252                       break;
3253                       }
3254                case  578 : { 
3255                         yyval.copy(yyv[yysp-0]);
3256                       break;
3257                       }
3258                case  579 : { 
3259                         yyval.copy(yyv[yysp-0]);
3260                       break;
3261                       }
3262                case  580 : { 
3263                         yyval.copy(yyv[yysp-0]);
3264                       break;
3265                       }
3266                case  581 : { 
3267                         yyval.copy(yyv[yysp-0]);
3268                       break;
3269                       }
3270                case  582 : { 
3271                         yyval.copy(yyv[yysp-0]);
3272                       break;
3273                       }
3274
3275                }
3276        }
3277        void yyaction_583_629 ( int yyruleno ){
3278                switch(yyruleno){
3279                case  583 : { 
3280                         yyval.copy(yyv[yysp-0]);
3281                       break;
3282                       }
3283                case  584 : { 
3284                         yyval.copy(yyv[yysp-0]);
3285                       break;
3286                       }
3287                case  585 : { 
3288                         yyval.copy(yyv[yysp-0]);
3289                       break;
3290                       }
3291                case  586 : { 
3292                         yyval.copy(yyv[yysp-0]);
3293                       break;
3294                       }
3295                case  587 : { 
3296                         yyval.copy(yyv[yysp-0]);
3297                       break;
3298                       }
3299                case  588 : { 
3300                         yyval.copy(yyv[yysp-0]);
3301                       break;
3302                       }
3303                case  589 : { 
3304                         yyval.copy(yyv[yysp-0]);
3305                       break;
3306                       }
3307                case  590 : { 
3308                         yyval.copy(yyv[yysp-0]);
3309                       break;
3310                       }
3311                case  591 : { 
3312                         yyval.copy(yyv[yysp-0]);
3313                       break;
3314                       }
3315                case  592 : { 
3316                         yyval.copy(yyv[yysp-0]);
3317                       break;
3318                       }
3319                case  593 : { 
3320                         yyval.copy(yyv[yysp-0]);
3321                       break;
3322                       }
3323                case  594 : { 
3324                         yyval.copy(yyv[yysp-0]);
3325                       break;
3326                       }
3327                case  595 : { 
3328                         yyval.copy(yyv[yysp-0]);
3329                       break;
3330                       }
3331                case  596 : { 
3332                         yyval.copy(yyv[yysp-0]);
3333                       break;
3334                       }
3335                case  597 : { 
3336                         yyval.copy(yyv[yysp-0]);
3337                       break;
3338                       }
3339                case  598 : { 
3340                         yyval.copy(yyv[yysp-0]);
3341                       break;
3342                       }
3343                case  599 : { 
3344                         yyval.copy(yyv[yysp-0]);
3345                       break;
3346                       }
3347                case  600 : { 
3348                         yyval.copy(yyv[yysp-0]);
3349                       break;
3350                       }
3351                case  601 : { 
3352                         yyval.copy(yyv[yysp-0]);
3353                       break;
3354                       }
3355                case  602 : { 
3356                         yyval.copy(yyv[yysp-0]);
3357                       break;
3358                       }
3359                case  603 : { 
3360                         yyval.copy(yyv[yysp-0]);
3361                       break;
3362                       }
3363                case  604 : { 
3364                         yyval.copy(yyv[yysp-0]);
3365                       break;
3366                       }
3367                case  605 : { 
3368                         yyval.copy(yyv[yysp-0]);
3369                       break;
3370                       }
3371                case  606 : { 
3372                         yyval.copy(yyv[yysp-0]);
3373                       break;
3374                       }
3375                case  607 : { 
3376                         yyval.copy(yyv[yysp-0]);
3377                       break;
3378                       }
3379                case  608 : { 
3380                         yyval.copy(yyv[yysp-0]);
3381                       break;
3382                       }
3383                case  609 : { 
3384                         yyval.copy(yyv[yysp-0]);
3385                       break;
3386                       }
3387                case  610 : { 
3388                         yyval.copy(yyv[yysp-0]);
3389                       break;
3390                       }
3391                case  611 : { 
3392                         yyval.copy(yyv[yysp-0]);
3393                       break;
3394                       }
3395                case  612 : { 
3396                         yyval.copy(yyv[yysp-0]);
3397                       break;
3398                       }
3399                case  613 : { 
3400                         yyval.copy(yyv[yysp-0]);
3401                       break;
3402                       }
3403                case  614 : { 
3404                         yyval.copy(yyv[yysp-0]);
3405                       break;
3406                       }
3407                case  615 : { 
3408                         yyval.copy(yyv[yysp-0]);
3409                       break;
3410                       }
3411                case  616 : { 
3412                         yyval.copy(yyv[yysp-0]);
3413                       break;
3414                       }
3415                case  617 : { 
3416                         yyval.copy(yyv[yysp-0]);
3417                       break;
3418                       }
3419                case  618 : { 
3420                         yyval.copy(yyv[yysp-0]);
3421                       break;
3422                       }
3423                case  619 : { 
3424                         yyval.copy(yyv[yysp-0]);
3425                       break;
3426                       }
3427                case  620 : { 
3428                         yyval.copy(yyv[yysp-0]);
3429                       break;
3430                       }
3431                case  621 : { 
3432                         yyval.copy(yyv[yysp-0]);
3433                       break;
3434                       }
3435                case  622 : { 
3436                         yyval.copy(yyv[yysp-0]);
3437                       break;
3438                       }
3439                case  623 : { 
3440                         yyval.copy(yyv[yysp-0]);
3441                       break;
3442                       }
3443                case  624 : { 
3444                         yyval.copy(yyv[yysp-0]);
3445                       break;
3446                       }
3447                case  625 : { 
3448                         yyval.copy(yyv[yysp-0]);
3449                       break;
3450                       }
3451                case  626 : { 
3452                         yyval.copy(yyv[yysp-0]);
3453                       break;
3454                       }
3455                case  627 : { 
3456                         yyval.copy(yyv[yysp-0]);
3457                       break;
3458                       }
3459                case  628 : { 
3460                         yyval.copy(yyv[yysp-0]);
3461                       break;
3462                       }
3463                case  629 : { 
3464                         yyval.copy(yyv[yysp-0]);
3465                       break;
3466                       }
3467                           
3468                           default:{
3469                               break;
3470                           } 
3471
3472                }
3473        }
3474void yyaction (int yyruleno){
3475if (yyruleno >= 583) { yyaction_583_629( yyruleno ); } else{
3476if (yyruleno >= 333) { yyaction_333_582( yyruleno ); } else{
3477if (yyruleno >= 162) { yyaction_162_332( yyruleno ); } else{
3478if (yyruleno >= 1) { yyaction_1_161( yyruleno ); }
3479}
3480}
3481}
3482}
3483
3484} // end of class