#################################################################### # # This file was generated using Parse::Yapp version 1.21. # # Don't edit this file, use source file instead. # # ANY CHANGE MADE HERE WILL BE LOST ! # #################################################################### package Parser; use vars qw ( @ISA ); use strict; @ISA= qw ( Parse::Yapp::Driver ); use Parse::Yapp::Driver; #line 1 "task38.yp" my $count = 0; sub new { my($class)=shift; ref($class) and $class=ref($class); my($self)=$class->SUPER::new( yyversion => '1.21', yystates => [ {#State 0 ACTIONS => { 'C' => 7, "H" => 3, "O" => 8, "N" => 4 }, GOTOS => { 'O' => 1, 'H' => 2, 'N' => 5, 'e' => 6 } }, {#State 1 ACTIONS => { "Mg" => 10, "B" => 12, "Ti" => 15, 'Rn' => 11 }, GOTOS => { 'Mg' => 9, 'B' => 14, 'Ti' => 13 } }, {#State 2 ACTIONS => { "F" => 17, "Ca" => 23, "P" => 20, "Si" => 19 }, GOTOS => { 'P' => 18, 'Si' => 22, 'Ca' => 16, 'F' => 21 } }, {#State 3 DEFAULT => -19 }, {#State 4 DEFAULT => -33 }, {#State 5 ACTIONS => { "Th" => 28, "Al" => 24, 'Rn' => 27 }, GOTOS => { 'Th' => 25, 'Al' => 26 } }, {#State 6 ACTIONS => { '' => 29 } }, {#State 7 ACTIONS => { 'Rn' => 30 } }, {#State 8 DEFAULT => -36 }, {#State 9 DEFAULT => -55 }, {#State 10 DEFAULT => -30 }, {#State 11 ACTIONS => { "Ca" => 23, "F" => 17, "P" => 20, "Si" => 19 }, GOTOS => { 'F' => 33, 'Ca' => 31, 'Si' => 34, 'P' => 32 } }, {#State 12 DEFAULT => -4 }, {#State 13 ACTIONS => { "Mg" => 10, "B" => 12, 'Rn' => 38, "Ti" => 15 }, GOTOS => { 'B' => 35, 'Mg' => 37, 'Ti' => 36 } }, {#State 14 ACTIONS => { "Si" => 19, "P" => 20, "F" => 17, "Ca" => 23 }, GOTOS => { 'F' => 41, 'Ca' => 40, 'Si' => 34, 'P' => 39 } }, {#State 15 DEFAULT => -50 }, {#State 16 ACTIONS => { "P" => 20, "Si" => 19, "F" => 17, "Ca" => 23 }, GOTOS => { 'Si' => 45, 'P' => 43, 'Ca' => 42, 'F' => 44 } }, {#State 17 DEFAULT => -15 }, {#State 18 ACTIONS => { "B" => 12, "Mg" => 10, "Ti" => 15, 'Rn' => 47 }, GOTOS => { 'B' => 49, 'Mg' => 46, 'Ti' => 48 } }, {#State 19 DEFAULT => -46 }, {#State 20 DEFAULT => -42 }, {#State 21 DEFAULT => -53 }, {#State 22 ACTIONS => { "Th" => 28, 'Rn' => 51, "Al" => 24 }, GOTOS => { 'Th' => 50, 'Al' => 52 } }, {#State 23 DEFAULT => -8 }, {#State 24 DEFAULT => -1 }, {#State 25 ACTIONS => { "F" => 17, 'Rn' => 53, "Ca" => 23, "Si" => 19, "P" => 20 }, GOTOS => { 'Si' => 34, 'P' => 32, 'Ca' => 55, 'F' => 54 } }, {#State 26 DEFAULT => -54 }, {#State 27 ACTIONS => { "Ca" => 23, "Si" => 19, "P" => 20, "Mg" => 10, "F" => 17, "Ti" => 15, "B" => 12 }, GOTOS => { 'Mg' => 58, 'F' => 56, 'Si' => 34, 'Ti' => 59, 'B' => 57, 'Ca' => 31, 'P' => 32 } }, {#State 28 DEFAULT => -48 }, {#State 29 DEFAULT => 0 }, {#State 30 ACTIONS => { "Al" => 24, "Ti" => 15, "F" => 17, "B" => 12, "Ca" => 23, "Th" => 28, "Mg" => 10, "P" => 20, "Si" => 19 }, GOTOS => { 'F' => 62, 'Mg' => 60, 'Si' => 34, 'Al' => 63, 'Th' => 61, 'Ca' => 31, 'B' => 57, 'Ti' => 59, 'P' => 32 } }, {#State 31 ACTIONS => { "Ca" => 23, "F" => 17, "Si" => 19, "P" => 20 }, GOTOS => { 'Si' => 45, 'P' => 43, 'Ca' => 42, 'F' => 44 } }, {#State 32 ACTIONS => { "B" => 12, "Mg" => 10, "Ti" => 15, 'Rn' => 47 }, GOTOS => { 'Mg' => 46, 'B' => 49, 'Ti' => 48 } }, {#State 33 ACTIONS => { 'Ar' => 64 } }, {#State 34 ACTIONS => { "Th" => 28, "Al" => 24, 'Rn' => 51 }, GOTOS => { 'Al' => 52, 'Th' => 50 } }, {#State 35 ACTIONS => { "Ca" => 23, "Si" => 19, "P" => 20, "F" => 17 }, DEFAULT => -6, GOTOS => { 'Ca' => 40, 'F' => 41, 'P' => 39, 'Si' => 34 } }, {#State 36 ACTIONS => { "Mg" => 10, "B" => 12, "Ti" => 15, 'Rn' => 38 }, GOTOS => { 'Mg' => 37, 'B' => 35, 'Ti' => 36 } }, {#State 37 DEFAULT => -32 }, {#State 38 ACTIONS => { "Si" => 19, "P" => 20, "F" => 17, "Ca" => 23 }, GOTOS => { 'Si' => 34, 'P' => 32, 'Ca' => 31, 'F' => 65 } }, {#State 39 ACTIONS => { "Ti" => 15, 'Rn' => 47, "Mg" => 10, "B" => 12 }, GOTOS => { 'Ti' => 48, 'Mg' => 46, 'B' => 49 } }, {#State 40 ACTIONS => { "F" => 17, "Ca" => 23, "Si" => 19, "P" => 20 }, DEFAULT => -5, GOTOS => { 'Si' => 45, 'P' => 43, 'Ca' => 42, 'F' => 44 } }, {#State 41 DEFAULT => -31 }, {#State 42 ACTIONS => { "F" => 17, "Si" => 19, "P" => 20, "Ca" => 23 }, DEFAULT => -9, GOTOS => { 'P' => 43, 'Si' => 45, 'F' => 44, 'Ca' => 42 } }, {#State 43 ACTIONS => { "Mg" => 10, "B" => 12, "Ti" => 15, 'Rn' => 47 }, GOTOS => { 'Mg' => 46, 'Ti' => 48, 'B' => 49 } }, {#State 44 DEFAULT => -16 }, {#State 45 ACTIONS => { "Al" => 24, 'Rn' => 51, "Th" => 28 }, GOTOS => { 'Al' => 52, 'Th' => 50 } }, {#State 46 DEFAULT => -17 }, {#State 47 ACTIONS => { "F" => 17, "Ca" => 23, "Si" => 19, "P" => 20 }, GOTOS => { 'F' => 66, 'Ca' => 31, 'P' => 32, 'Si' => 34 } }, {#State 48 ACTIONS => { "Ti" => 15, 'Rn' => 38, "B" => 12, "Mg" => 10 }, GOTOS => { 'Mg' => 37, 'Ti' => 36, 'B' => 35 } }, {#State 49 ACTIONS => { "F" => 17, "P" => 20, "Si" => 19, "Ca" => 23 }, DEFAULT => -10, GOTOS => { 'Si' => 34, 'P' => 39, 'F' => 41, 'Ca' => 40 } }, {#State 50 ACTIONS => { "Si" => 19, "P" => 20, "Ca" => 23, 'Rn' => 53, "F" => 17 }, GOTOS => { 'Ca' => 55, 'F' => 54, 'Si' => 34, 'P' => 32 } }, {#State 51 ACTIONS => { "F" => 17, "Ti" => 15, "B" => 12, "Ca" => 23, "Mg" => 10, "Si" => 19, "P" => 20 }, GOTOS => { 'Mg' => 68, 'F' => 67, 'Si' => 34, 'B' => 57, 'Ti' => 59, 'Ca' => 31, 'P' => 32 } }, {#State 52 DEFAULT => -18 }, {#State 53 ACTIONS => { "Ca" => 23, "F" => 17, "Si" => 19, "P" => 20 }, GOTOS => { 'P' => 32, 'Si' => 34, 'F' => 69, 'Ca' => 31 } }, {#State 54 DEFAULT => -2 }, {#State 55 ACTIONS => { "P" => 20, "Si" => 19, "Ca" => 23, "F" => 17 }, DEFAULT => -49, GOTOS => { 'Si' => 45, 'P' => 43, 'Ca' => 42, 'F' => 44 } }, {#State 56 ACTIONS => { 'Y' => 70, 'Ar' => 71 } }, {#State 57 ACTIONS => { "F" => 17, "Ca" => 23, "P" => 20, "Si" => 19 }, GOTOS => { 'Si' => 34, 'P' => 39, 'F' => 41, 'Ca' => 40 } }, {#State 58 ACTIONS => { 'Ar' => 72 } }, {#State 59 ACTIONS => { "Mg" => 10, "B" => 12, "Ti" => 15, 'Rn' => 38 }, GOTOS => { 'B' => 35, 'Ti' => 36, 'Mg' => 37 } }, {#State 60 ACTIONS => { 'Ar' => 73, 'Y' => 74 } }, {#State 61 ACTIONS => { "P" => 20, "Si" => 19, "Ca" => 23, 'Rn' => 53, "F" => 17 }, GOTOS => { 'Si' => 34, 'P' => 32, 'F' => 54, 'Ca' => 55 } }, {#State 62 ACTIONS => { 'Ar' => 75, 'Y' => 76 } }, {#State 63 ACTIONS => { 'Ar' => 77 } }, {#State 64 DEFAULT => -29 }, {#State 65 ACTIONS => { 'Ar' => 78 } }, {#State 66 ACTIONS => { 'Ar' => 79 } }, {#State 67 ACTIONS => { 'Y' => 81, 'Ar' => 80 } }, {#State 68 ACTIONS => { 'Ar' => 82 } }, {#State 69 ACTIONS => { 'Ar' => 83 } }, {#State 70 ACTIONS => { "Si" => 19, "P" => 20, "Ca" => 23, "F" => 17 }, GOTOS => { 'Si' => 34, 'P' => 32, 'Ca' => 31, 'F' => 84 } }, {#State 71 DEFAULT => -40 }, {#State 72 DEFAULT => -26 }, {#State 73 DEFAULT => -38 }, {#State 74 ACTIONS => { "Si" => 19, "P" => 20, "Ca" => 23, "F" => 17 }, GOTOS => { 'P' => 32, 'Si' => 34, 'Ca' => 31, 'F' => 85 } }, {#State 75 DEFAULT => -34 }, {#State 76 ACTIONS => { "B" => 12, "F" => 17, "Ti" => 15, "Mg" => 10, "Si" => 19, "P" => 20, "Ca" => 23 }, GOTOS => { 'P' => 32, 'Ti' => 59, 'B' => 57, 'Ca' => 31, 'Si' => 34, 'Mg' => 87, 'F' => 86 } }, {#State 77 DEFAULT => -20 }, {#State 78 DEFAULT => -7 }, {#State 79 DEFAULT => -11 }, {#State 80 DEFAULT => -45 }, {#State 81 ACTIONS => { "Ca" => 23, "F" => 17, "Si" => 19, "P" => 20 }, GOTOS => { 'Si' => 34, 'P' => 32, 'Ca' => 31, 'F' => 88 } }, {#State 82 DEFAULT => -13 }, {#State 83 DEFAULT => -3 }, {#State 84 ACTIONS => { 'Ar' => 89 } }, {#State 85 ACTIONS => { 'Ar' => 90 } }, {#State 86 ACTIONS => { 'Y' => 91, 'Ar' => 92 } }, {#State 87 ACTIONS => { 'Ar' => 93 } }, {#State 88 ACTIONS => { 'Ar' => 94 } }, {#State 89 DEFAULT => -25 }, {#State 90 DEFAULT => -23 }, {#State 91 ACTIONS => { "F" => 17, "Ca" => 23, "P" => 20, "Si" => 19 }, GOTOS => { 'Si' => 34, 'P' => 32, 'F' => 95, 'Ca' => 31 } }, {#State 92 DEFAULT => -37 }, {#State 93 DEFAULT => -22 }, {#State 94 DEFAULT => -12 }, {#State 95 ACTIONS => { 'Ar' => 96 } }, {#State 96 DEFAULT => -21 } ], yyrules => [ [#Rule 0 '$start', 2, undef ], [#Rule 1 'Al', 1, undef ], [#Rule 2 'Al', 2, sub #line 10 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 3 'Al', 4, sub #line 11 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 4 'B', 1, undef ], [#Rule 5 'B', 2, sub #line 14 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 6 'B', 2, sub #line 15 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 7 'B', 4, sub #line 16 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 8 'Ca', 1, undef ], [#Rule 9 'Ca', 2, sub #line 19 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 10 'Ca', 2, sub #line 20 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 11 'Ca', 4, sub #line 21 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 12 'Ca', 6, sub #line 22 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 13 'Ca', 4, sub #line 23 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 14 'Ca', 2, sub #line 24 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 15 'F', 1, undef ], [#Rule 16 'F', 2, sub #line 27 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 17 'F', 2, sub #line 28 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 18 'F', 2, sub #line 29 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 19 'H', 1, undef ], [#Rule 20 'H', 4, sub #line 32 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 21 'H', 8, sub #line 33 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 22 'H', 6, sub #line 34 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 23 'H', 6, sub #line 35 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 24 'H', 2, sub #line 36 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 25 'H', 6, sub #line 37 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 26 'H', 4, sub #line 38 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 27 'H', 2, sub #line 39 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 28 'H', 2, sub #line 40 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 29 'H', 4, sub #line 41 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 30 'Mg', 1, undef ], [#Rule 31 'Mg', 2, sub #line 44 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 32 'Mg', 2, sub #line 45 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 33 'N', 1, undef ], [#Rule 34 'N', 4, sub #line 48 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 35 'N', 2, sub #line 49 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 36 'O', 1, undef ], [#Rule 37 'O', 6, sub #line 52 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 38 'O', 4, sub #line 53 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 39 'O', 2, sub #line 54 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 40 'O', 4, sub #line 55 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 41 'O', 2, sub #line 56 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 42 'P', 1, undef ], [#Rule 43 'P', 2, sub #line 59 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 44 'P', 2, sub #line 60 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 45 'P', 4, sub #line 61 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 46 'Si', 1, undef ], [#Rule 47 'Si', 2, sub #line 64 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 48 'Th', 1, undef ], [#Rule 49 'Th', 2, sub #line 67 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 50 'Ti', 1, undef ], [#Rule 51 'Ti', 2, sub #line 70 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 52 'Ti', 2, sub #line 71 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 53 'e', 2, sub #line 74 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 54 'e', 2, sub #line 75 "task38.yp" { shift->YYData->{count}++ } ], [#Rule 55 'e', 2, sub #line 76 "task38.yp" { shift->YYData->{count}++ } ] ], @_); bless($self,$class); } #line 78 "task38.yp" 1;