# Parser. # This file was generated by SableCC (http://www.sablecc.org/). package parser import parser_prod intrude import parser_tables # State of the parser automata as stored in the parser stack. private class State # The internal state number readable writable var _state: Int # The node stored with the state in the stack readable writable var _nodes: nullable Object init(state: Int, nodes: nullable Object) do _state = state _nodes = nodes end end class Parser special ParserTable # Associated lexer var _lexer: Lexer # Stack of pushed states and productions var _stack: Array[State] # Position in the stack var _stack_pos: Int # Create a new parser based on a given lexer init(lexer: Lexer) do _lexer = lexer _stack = new Array[State] _stack_pos = -1 build_goto_table build_action_table build_reduce_table end # Do a transition in the automata private fun go_to(index: Int): Int do var state = state var table = _goto_table[index] var low = 1 var high = table.length/2 - 1 while low <= high do var middle = (low + high) / 2 var subindex = middle * 2 if state < table[subindex] then high = middle - 1 else if state > table[subindex] then low = middle + 1 else return table[subindex + 1] end end return table[1] # Default value end # Push someting in the state stack private fun push(numstate: Int, list_node: nullable Object) do var pos = _stack_pos + 1 _stack_pos = pos if pos < _stack.length then var state = _stack[pos] state.state = numstate state.nodes = list_node else _stack.push(new State(numstate, list_node)) end end # The current state private fun state: Int do return _stack[_stack_pos].state end # Pop something from the stack state private fun pop: nullable Object do var res = _stack[_stack_pos].nodes _stack_pos = _stack_pos -1 return res end # Build and return a full AST. fun parse: Start do push(0, null) var lexer = _lexer while true do var token = lexer.peek var last_pos = token.pos var last_line = token.line if token isa PError then return new Start(null, token) end var index = token.parser_index var table = _action_table[state] var action_type = table[1] var action_value = table[2] var low = 1 var high = table.length/3 - 1 while low <= high do var middle = (low + high) / 2 var subindex = middle * 3 if index < table[subindex] then high = middle - 1 else if index > table[subindex] then low = middle + 1 else action_type = table[subindex + 1] action_value = table[subindex + 2] high = low -1 # break end end if action_type == 0 then # SHIFT push(action_value, lexer.next) else if action_type == 1 then # REDUCE _reduce_table[action_value].action(self) else if action_type == 2 then # ACCEPT var node2 = lexer.next assert node2 isa EOF var node1 = pop assert node1 isa PModule var node = new Start(node1, node2) (new SearchTokensVisitor).visit(node) return node else if action_type == 3 then # ERROR var node2 = new PError.init_error(lexer.filename, last_line, last_pos, error_messages[errors[action_value]]) var node = new Start(null, node2) return node end end abort end var _reduce_table: Array[ReduceAction] private fun build_reduce_table do _reduce_table = new Array[ReduceAction].with_items( new ReduceAction0, new ReduceAction1, new ReduceAction2, new ReduceAction3, new ReduceAction4, new ReduceAction5, new ReduceAction6, new ReduceAction7, new ReduceAction8, new ReduceAction9, new ReduceAction10, new ReduceAction11, new ReduceAction12, new ReduceAction13, new ReduceAction14, new ReduceAction15, new ReduceAction16, new ReduceAction17, new ReduceAction18, new ReduceAction19, new ReduceAction20, new ReduceAction21, new ReduceAction22, new ReduceAction23, new ReduceAction24, new ReduceAction25, new ReduceAction26, new ReduceAction27, new ReduceAction28, new ReduceAction29, new ReduceAction30, new ReduceAction31, new ReduceAction32, new ReduceAction33, new ReduceAction34, new ReduceAction35, new ReduceAction36, new ReduceAction37, new ReduceAction38, new ReduceAction39, new ReduceAction40, new ReduceAction41, new ReduceAction42, new ReduceAction43, new ReduceAction44, new ReduceAction45, new ReduceAction46, new ReduceAction47, new ReduceAction48, new ReduceAction49, new ReduceAction50, new ReduceAction51, new ReduceAction52, new ReduceAction53, new ReduceAction54, new ReduceAction55, new ReduceAction56, new ReduceAction57, new ReduceAction58, new ReduceAction59, new ReduceAction60, new ReduceAction61, new ReduceAction62, new ReduceAction63, new ReduceAction64, new ReduceAction65, new ReduceAction66, new ReduceAction67, new ReduceAction68, new ReduceAction69, new ReduceAction70, new ReduceAction71, new ReduceAction72, new ReduceAction73, new ReduceAction74, new ReduceAction75, new ReduceAction76, new ReduceAction77, new ReduceAction78, new ReduceAction79, new ReduceAction80, new ReduceAction81, new ReduceAction82, new ReduceAction83, new ReduceAction84, new ReduceAction85, new ReduceAction86, new ReduceAction87, new ReduceAction88, new ReduceAction89, new ReduceAction90, new ReduceAction91, new ReduceAction92, new ReduceAction93, new ReduceAction94, new ReduceAction95, new ReduceAction96, new ReduceAction97, new ReduceAction98, new ReduceAction99, new ReduceAction100, new ReduceAction101, new ReduceAction102, new ReduceAction103, new ReduceAction104, new ReduceAction105, new ReduceAction106, new ReduceAction107, new ReduceAction108, new ReduceAction109, new ReduceAction110, new ReduceAction111, new ReduceAction112, new ReduceAction113, new ReduceAction114, new ReduceAction115, new ReduceAction116, new ReduceAction117, new ReduceAction118, new ReduceAction119, new ReduceAction120, new ReduceAction121, new ReduceAction122, new ReduceAction123, new ReduceAction124, new ReduceAction125, new ReduceAction126, new ReduceAction127, new ReduceAction128, new ReduceAction129, new ReduceAction130, new ReduceAction131, new ReduceAction132, new ReduceAction133, new ReduceAction134, new ReduceAction135, new ReduceAction136, new ReduceAction137, new ReduceAction138, new ReduceAction139, new ReduceAction140, new ReduceAction141, new ReduceAction142, new ReduceAction143, new ReduceAction144, new ReduceAction145, new ReduceAction146, new ReduceAction147, new ReduceAction148, new ReduceAction149, new ReduceAction150, new ReduceAction151, new ReduceAction152, new ReduceAction153, new ReduceAction154, new ReduceAction155, new ReduceAction156, new ReduceAction157, new ReduceAction158, new ReduceAction159, new ReduceAction160, new ReduceAction161, new ReduceAction162, new ReduceAction163, new ReduceAction164, new ReduceAction165, new ReduceAction166, new ReduceAction167, new ReduceAction168, new ReduceAction169, new ReduceAction170, new ReduceAction171, new ReduceAction172, new ReduceAction173, new ReduceAction174, new ReduceAction175, new ReduceAction176, new ReduceAction177, new ReduceAction178, new ReduceAction179, new ReduceAction180, new ReduceAction181, new ReduceAction182, new ReduceAction183, new ReduceAction184, new ReduceAction185, new ReduceAction186, new ReduceAction187, new ReduceAction188, new ReduceAction189, new ReduceAction190, new ReduceAction191, new ReduceAction192, new ReduceAction193, new ReduceAction194, new ReduceAction195, new ReduceAction196, new ReduceAction197, new ReduceAction198, new ReduceAction199, new ReduceAction200, new ReduceAction201, new ReduceAction202, new ReduceAction203, new ReduceAction204, new ReduceAction205, new ReduceAction206, new ReduceAction207, new ReduceAction208, new ReduceAction209, new ReduceAction210, new ReduceAction211, new ReduceAction212, new ReduceAction213, new ReduceAction214, new ReduceAction215, new ReduceAction216, new ReduceAction217, new ReduceAction218, new ReduceAction219, new ReduceAction220, new ReduceAction221, new ReduceAction222, new ReduceAction223, new ReduceAction224, new ReduceAction225, new ReduceAction226, new ReduceAction227, new ReduceAction228, new ReduceAction229, new ReduceAction230, new ReduceAction231, new ReduceAction232, new ReduceAction233, new ReduceAction234, new ReduceAction235, new ReduceAction236, new ReduceAction237, new ReduceAction238, new ReduceAction239, new ReduceAction240, new ReduceAction241, new ReduceAction242, new ReduceAction243, new ReduceAction244, new ReduceAction245, new ReduceAction246, new ReduceAction247, new ReduceAction248, new ReduceAction249, new ReduceAction250, new ReduceAction251, new ReduceAction252, new ReduceAction253, new ReduceAction254, new ReduceAction255, new ReduceAction256, new ReduceAction257, new ReduceAction258, new ReduceAction259, new ReduceAction260, new ReduceAction261, new ReduceAction262, new ReduceAction263, new ReduceAction264, new ReduceAction265, new ReduceAction266, new ReduceAction267, new ReduceAction268, new ReduceAction269, new ReduceAction270, new ReduceAction271, new ReduceAction272, new ReduceAction273, new ReduceAction274, new ReduceAction275, new ReduceAction276, new ReduceAction277, new ReduceAction278, new ReduceAction279, new ReduceAction280, new ReduceAction281, new ReduceAction282, new ReduceAction283, new ReduceAction284, new ReduceAction285, new ReduceAction286, new ReduceAction287, new ReduceAction288, new ReduceAction289, new ReduceAction290, new ReduceAction291, new ReduceAction292, new ReduceAction293, new ReduceAction294, new ReduceAction295, new ReduceAction296, new ReduceAction297, new ReduceAction298, new ReduceAction299, new ReduceAction300, new ReduceAction301, new ReduceAction302, new ReduceAction303, new ReduceAction304, new ReduceAction305, new ReduceAction306, new ReduceAction307, new ReduceAction308, new ReduceAction309, new ReduceAction310, new ReduceAction311, new ReduceAction312, new ReduceAction313, new ReduceAction314, new ReduceAction315, new ReduceAction316, new ReduceAction317, new ReduceAction318, new ReduceAction319, new ReduceAction320, new ReduceAction321, new ReduceAction322, new ReduceAction323, new ReduceAction324, new ReduceAction325, new ReduceAction326, new ReduceAction327, new ReduceAction328, new ReduceAction329, new ReduceAction330, new ReduceAction331, new ReduceAction332, new ReduceAction333, new ReduceAction334, new ReduceAction335, new ReduceAction336, new ReduceAction337, new ReduceAction338, new ReduceAction339, new ReduceAction340, new ReduceAction341, new ReduceAction342, new ReduceAction343, new ReduceAction344, new ReduceAction345, new ReduceAction346, new ReduceAction347, new ReduceAction348, new ReduceAction349, new ReduceAction350, new ReduceAction351, new ReduceAction352, new ReduceAction353, new ReduceAction354, new ReduceAction355, new ReduceAction356, new ReduceAction357, new ReduceAction358, new ReduceAction359, new ReduceAction360, new ReduceAction361, new ReduceAction362, new ReduceAction363, new ReduceAction364, new ReduceAction365, new ReduceAction366, new ReduceAction367, new ReduceAction368, new ReduceAction369, new ReduceAction370, new ReduceAction371, new ReduceAction372, new ReduceAction373, new ReduceAction374, new ReduceAction375, new ReduceAction376, new ReduceAction377, new ReduceAction378, new ReduceAction379, new ReduceAction380, new ReduceAction381, new ReduceAction382, new ReduceAction383, new ReduceAction384, new ReduceAction385, new ReduceAction386, new ReduceAction387, new ReduceAction388, new ReduceAction389, new ReduceAction390, new ReduceAction391, new ReduceAction392, new ReduceAction393, new ReduceAction394, new ReduceAction395, new ReduceAction396, new ReduceAction397, new ReduceAction398, new ReduceAction399, new ReduceAction400, new ReduceAction401, new ReduceAction402, new ReduceAction403, new ReduceAction404, new ReduceAction405, new ReduceAction406, new ReduceAction407, new ReduceAction408, new ReduceAction409, new ReduceAction410, new ReduceAction411, new ReduceAction412, new ReduceAction413, new ReduceAction414, new ReduceAction415, new ReduceAction416, new ReduceAction417, new ReduceAction418, new ReduceAction419, new ReduceAction420, new ReduceAction421, new ReduceAction422, new ReduceAction423, new ReduceAction424, new ReduceAction425, new ReduceAction426, new ReduceAction427, new ReduceAction428, new ReduceAction429, new ReduceAction430, new ReduceAction431, new ReduceAction432, new ReduceAction433, new ReduceAction434, new ReduceAction435, new ReduceAction436, new ReduceAction437, new ReduceAction438, new ReduceAction439, new ReduceAction440, new ReduceAction441, new ReduceAction442, new ReduceAction443, new ReduceAction444, new ReduceAction445, new ReduceAction446, new ReduceAction447, new ReduceAction448, new ReduceAction449, new ReduceAction450, new ReduceAction451, new ReduceAction452, new ReduceAction453, new ReduceAction454, new ReduceAction455, new ReduceAction456, new ReduceAction457, new ReduceAction458, new ReduceAction459, new ReduceAction460, new ReduceAction461, new ReduceAction462, new ReduceAction463, new ReduceAction464, new ReduceAction465, new ReduceAction466, new ReduceAction467, new ReduceAction468, new ReduceAction469, new ReduceAction470, new ReduceAction471, new ReduceAction472, new ReduceAction473, new ReduceAction474, new ReduceAction475, new ReduceAction476, new ReduceAction477, new ReduceAction478, new ReduceAction479, new ReduceAction480, new ReduceAction481, new ReduceAction482, new ReduceAction483, new ReduceAction484, new ReduceAction485, new ReduceAction486, new ReduceAction487, new ReduceAction488, new ReduceAction489, new ReduceAction490, new ReduceAction491, new ReduceAction492, new ReduceAction493, new ReduceAction494, new ReduceAction495, new ReduceAction496, new ReduceAction497, new ReduceAction498, new ReduceAction499, new ReduceAction500, new ReduceAction501, new ReduceAction502, new ReduceAction503, new ReduceAction504, new ReduceAction505, new ReduceAction506, new ReduceAction507, new ReduceAction508, new ReduceAction509, new ReduceAction510, new ReduceAction511, new ReduceAction512, new ReduceAction513, new ReduceAction514, new ReduceAction515, new ReduceAction516, new ReduceAction517, new ReduceAction518, new ReduceAction519, new ReduceAction520, new ReduceAction521, new ReduceAction522, new ReduceAction523, new ReduceAction524, new ReduceAction525, new ReduceAction526, new ReduceAction527, new ReduceAction528, new ReduceAction529, new ReduceAction530, new ReduceAction531, new ReduceAction532, new ReduceAction533, new ReduceAction534, new ReduceAction535, new ReduceAction536, new ReduceAction537, new ReduceAction538, new ReduceAction539, new ReduceAction540, new ReduceAction541, new ReduceAction542, new ReduceAction543, new ReduceAction544, new ReduceAction545, new ReduceAction546, new ReduceAction547, new ReduceAction548, new ReduceAction549, new ReduceAction550, new ReduceAction551, new ReduceAction552, new ReduceAction553, new ReduceAction554, new ReduceAction555, new ReduceAction556, new ReduceAction557, new ReduceAction558, new ReduceAction559, new ReduceAction560, new ReduceAction561, new ReduceAction562, new ReduceAction563, new ReduceAction564, new ReduceAction565, new ReduceAction566, new ReduceAction567, new ReduceAction568, new ReduceAction569, new ReduceAction570, new ReduceAction571, new ReduceAction572, new ReduceAction573, new ReduceAction574, new ReduceAction575, new ReduceAction576, new ReduceAction577, new ReduceAction578, new ReduceAction579, new ReduceAction580, new ReduceAction581, new ReduceAction582, new ReduceAction583, new ReduceAction584, new ReduceAction585, new ReduceAction586, new ReduceAction587, new ReduceAction588, new ReduceAction589, new ReduceAction590, new ReduceAction591, new ReduceAction592, new ReduceAction593, new ReduceAction594, new ReduceAction595, new ReduceAction596, new ReduceAction597, new ReduceAction598, new ReduceAction599, new ReduceAction600, new ReduceAction601, new ReduceAction602, new ReduceAction603, new ReduceAction604, new ReduceAction605, new ReduceAction606, new ReduceAction607, new ReduceAction608, new ReduceAction609, new ReduceAction610, new ReduceAction611, new ReduceAction612, new ReduceAction613, new ReduceAction614, new ReduceAction615, new ReduceAction616, new ReduceAction617, new ReduceAction618, new ReduceAction619, new ReduceAction620, new ReduceAction621, new ReduceAction622, new ReduceAction623, new ReduceAction624, new ReduceAction625, new ReduceAction626, new ReduceAction627, new ReduceAction628, new ReduceAction629, new ReduceAction630, new ReduceAction631, new ReduceAction632, new ReduceAction633, new ReduceAction634, new ReduceAction635, new ReduceAction636, new ReduceAction637, new ReduceAction638, new ReduceAction639, new ReduceAction640, new ReduceAction641, new ReduceAction642, new ReduceAction643, new ReduceAction644, new ReduceAction645, new ReduceAction646, new ReduceAction647, new ReduceAction648, new ReduceAction649, new ReduceAction650, new ReduceAction651, new ReduceAction652, new ReduceAction653, new ReduceAction654, new ReduceAction655, new ReduceAction656, new ReduceAction657, new ReduceAction658, new ReduceAction659, new ReduceAction660, new ReduceAction661, new ReduceAction662, new ReduceAction663, new ReduceAction664, new ReduceAction665, new ReduceAction666, new ReduceAction667, new ReduceAction668, new ReduceAction669, new ReduceAction670, new ReduceAction671, new ReduceAction672, new ReduceAction673, new ReduceAction674, new ReduceAction675, new ReduceAction676, new ReduceAction677, new ReduceAction678, new ReduceAction679, new ReduceAction680, new ReduceAction681, new ReduceAction682, new ReduceAction683, new ReduceAction684, new ReduceAction685, new ReduceAction686, new ReduceAction687, new ReduceAction688, new ReduceAction689, new ReduceAction690, new ReduceAction691, new ReduceAction692, new ReduceAction693, new ReduceAction694, new ReduceAction695, new ReduceAction696, new ReduceAction697, new ReduceAction698, new ReduceAction699, new ReduceAction700, new ReduceAction701, new ReduceAction702, new ReduceAction703, new ReduceAction704, new ReduceAction705, new ReduceAction706, new ReduceAction707, new ReduceAction708, new ReduceAction709, new ReduceAction710, new ReduceAction711, new ReduceAction712, new ReduceAction713, new ReduceAction714, new ReduceAction715, new ReduceAction716, new ReduceAction717, new ReduceAction718, new ReduceAction719, new ReduceAction720, new ReduceAction721, new ReduceAction722, new ReduceAction723, new ReduceAction724, new ReduceAction725, new ReduceAction726, new ReduceAction727, new ReduceAction728, new ReduceAction729, new ReduceAction730, new ReduceAction731, new ReduceAction732, new ReduceAction733, new ReduceAction734, new ReduceAction735, new ReduceAction736, new ReduceAction737 ) end end # Find first and last tokens of production nodes private class SearchTokensVisitor special Visitor var _untokenned_nodes: Array[Prod] var _last_token: nullable Token = null redef fun visit(n: nullable PNode) do if n == null then return else if n isa Token then _last_token = n for no in _untokenned_nodes do no.first_token = n end _untokenned_nodes.clear else assert n isa Prod _untokenned_nodes.add(n) n.visit_all(self) n.last_token = _last_token end end init do _untokenned_nodes = new Array[Prod] end end # Each reduca action has its own class, this one is the root of the hierarchy. private abstract class ReduceAction fun action(p: Parser) is abstract end private class ReduceAction0 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var listnode3 = new Array[Object] var listnode4 = new Array[Object] var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode4 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction1 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode4 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode4 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction2 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode5 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode5 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction3 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode5 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode5 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction4 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode5 = new Array[Object] var listnode4 = nodearraylist1 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode5 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction5 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode5 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode5 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction6 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode6 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist2 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode6 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction7 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode6 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist3 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode6 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction8 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode7 = new Array[Object] var listnode6 = new Array[Object] var ppropdefnode5 = nodearraylist1 assert ppropdefnode5 isa nullable PPropdef if ppropdefnode5 != null then listnode6.add(ppropdefnode5) end var pclassdefnode4: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode6 ) if pclassdefnode4 != null then listnode7.add(pclassdefnode4) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode7 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction9 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode8 = new Array[Object] var listnode7 = new Array[Object] var ppropdefnode5 = nodearraylist1 assert ppropdefnode5 isa nullable PPropdef var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] if ppropdefnode5 != null then listnode7.add(ppropdefnode5) end # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pclassdefnode4: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) if pclassdefnode4 != null then listnode8.add(pclassdefnode4) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode8 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction10 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode7 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode6 = new Array[Object] var ppropdefnode5 = nodearraylist2 assert ppropdefnode5 isa nullable PPropdef if ppropdefnode5 != null then listnode6.add(ppropdefnode5) end var pclassdefnode4: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode6 ) if pclassdefnode4 != null then listnode7.add(pclassdefnode4) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode7 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction11 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode8 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode7 = new Array[Object] var ppropdefnode5 = nodearraylist2 assert ppropdefnode5 isa nullable PPropdef var listnode6 = nodearraylist4 assert listnode6 isa Array[Object] if ppropdefnode5 != null then listnode7.add(ppropdefnode5) end # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pclassdefnode4: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) if pclassdefnode4 != null then listnode8.add(pclassdefnode4) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode8 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction12 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode8 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode7 = new Array[Object] var ppropdefnode6 = nodearraylist2 assert ppropdefnode6 isa nullable PPropdef if ppropdefnode6 != null then listnode7.add(ppropdefnode6) end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) if pclassdefnode5 != null then listnode8.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode8 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction13 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode9 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode8 = new Array[Object] var ppropdefnode6 = nodearraylist2 assert ppropdefnode6 isa nullable PPropdef var listnode7 = nodearraylist4 assert listnode7 isa Array[Object] if ppropdefnode6 != null then listnode8.add(ppropdefnode6) end # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) if pclassdefnode5 != null then listnode9.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction14 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode8 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode7 = new Array[Object] var ppropdefnode6 = nodearraylist3 assert ppropdefnode6 isa nullable PPropdef if ppropdefnode6 != null then listnode7.add(ppropdefnode6) end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) if pclassdefnode5 != null then listnode8.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode8 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction15 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode9 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode8 = new Array[Object] var ppropdefnode6 = nodearraylist3 assert ppropdefnode6 isa nullable PPropdef var listnode7 = nodearraylist5 assert listnode7 isa Array[Object] if ppropdefnode6 != null then listnode8.add(ppropdefnode6) end # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) if pclassdefnode5 != null then listnode9.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction16 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode8 = new Array[Object] var listnode4 = nodearraylist1 assert listnode4 isa Array[Object] var listnode7 = new Array[Object] var ppropdefnode6 = nodearraylist2 assert ppropdefnode6 isa nullable PPropdef if ppropdefnode6 != null then listnode7.add(ppropdefnode6) end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) # if listnode4 != null then if listnode8.is_empty then listnode8 = listnode4 else listnode8.append(listnode4) end # end if pclassdefnode5 != null then listnode8.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode8 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction17 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode9 = new Array[Object] var listnode4 = nodearraylist1 assert listnode4 isa Array[Object] var listnode8 = new Array[Object] var ppropdefnode6 = nodearraylist2 assert ppropdefnode6 isa nullable PPropdef var listnode7 = nodearraylist4 assert listnode7 isa Array[Object] if ppropdefnode6 != null then listnode8.add(ppropdefnode6) end # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) # if listnode4 != null then if listnode9.is_empty then listnode9 = listnode4 else listnode9.append(listnode4) end # end if pclassdefnode5 != null then listnode9.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction18 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode8 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] var listnode7 = new Array[Object] var ppropdefnode6 = nodearraylist3 assert ppropdefnode6 isa nullable PPropdef if ppropdefnode6 != null then listnode7.add(ppropdefnode6) end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) # if listnode4 != null then if listnode8.is_empty then listnode8 = listnode4 else listnode8.append(listnode4) end # end if pclassdefnode5 != null then listnode8.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode8 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction19 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode9 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] var listnode8 = new Array[Object] var ppropdefnode6 = nodearraylist3 assert ppropdefnode6 isa nullable PPropdef var listnode7 = nodearraylist5 assert listnode7 isa Array[Object] if ppropdefnode6 != null then listnode8.add(ppropdefnode6) end # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) # if listnode4 != null then if listnode9.is_empty then listnode9 = listnode4 else listnode9.append(listnode4) end # end if pclassdefnode5 != null then listnode9.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction20 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode9 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist2 assert listnode5 isa Array[Object] var listnode8 = new Array[Object] var ppropdefnode7 = nodearraylist3 assert ppropdefnode7 isa nullable PPropdef if ppropdefnode7 != null then listnode8.add(ppropdefnode7) end var pclassdefnode6: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) # if listnode5 != null then if listnode9.is_empty then listnode9 = listnode5 else listnode9.append(listnode5) end # end if pclassdefnode6 != null then listnode9.add(pclassdefnode6) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction21 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode10 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist2 assert listnode5 isa Array[Object] var listnode9 = new Array[Object] var ppropdefnode7 = nodearraylist3 assert ppropdefnode7 isa nullable PPropdef var listnode8 = nodearraylist5 assert listnode8 isa Array[Object] if ppropdefnode7 != null then listnode9.add(ppropdefnode7) end # if listnode8 != null then if listnode9.is_empty then listnode9 = listnode8 else listnode9.append(listnode8) end # end var pclassdefnode6: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode9 ) # if listnode5 != null then if listnode10.is_empty then listnode10 = listnode5 else listnode10.append(listnode5) end # end if pclassdefnode6 != null then listnode10.add(pclassdefnode6) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode10 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction22 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode9 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist3 assert listnode5 isa Array[Object] var listnode8 = new Array[Object] var ppropdefnode7 = nodearraylist4 assert ppropdefnode7 isa nullable PPropdef if ppropdefnode7 != null then listnode8.add(ppropdefnode7) end var pclassdefnode6: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) # if listnode5 != null then if listnode9.is_empty then listnode9 = listnode5 else listnode9.append(listnode5) end # end if pclassdefnode6 != null then listnode9.add(pclassdefnode6) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction23 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode10 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist3 assert listnode5 isa Array[Object] var listnode9 = new Array[Object] var ppropdefnode7 = nodearraylist4 assert ppropdefnode7 isa nullable PPropdef var listnode8 = nodearraylist6 assert listnode8 isa Array[Object] if ppropdefnode7 != null then listnode9.add(ppropdefnode7) end # if listnode8 != null then if listnode9.is_empty then listnode9 = listnode8 else listnode9.append(listnode8) end # end var pclassdefnode6: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode9 ) # if listnode5 != null then if listnode10.is_empty then listnode10 = listnode5 else listnode10.append(listnode5) end # end if pclassdefnode6 != null then listnode10.add(pclassdefnode6) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode10 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction24 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode5 = new Array[Object] var pclassdefnode4 = nodearraylist1 assert pclassdefnode4 isa nullable PClassdef if pclassdefnode4 != null then listnode5.add(pclassdefnode4) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode5 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction25 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode5 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var pclassdefnode4 = nodearraylist2 assert pclassdefnode4 isa nullable PClassdef if pclassdefnode4 != null then listnode5.add(pclassdefnode4) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode5 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction26 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode6 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var pclassdefnode5 = nodearraylist2 assert pclassdefnode5 isa nullable PClassdef if pclassdefnode5 != null then listnode6.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode6 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction27 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode6 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var pclassdefnode5 = nodearraylist3 assert pclassdefnode5 isa nullable PClassdef if pclassdefnode5 != null then listnode6.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode6 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction28 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode6 = new Array[Object] var listnode4 = nodearraylist1 assert listnode4 isa Array[Object] var pclassdefnode5 = nodearraylist2 assert pclassdefnode5 isa nullable PClassdef # if listnode4 != null then if listnode6.is_empty then listnode6 = listnode4 else listnode6.append(listnode4) end # end if pclassdefnode5 != null then listnode6.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode6 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction29 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode6 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] var pclassdefnode5 = nodearraylist3 assert pclassdefnode5 isa nullable PClassdef # if listnode4 != null then if listnode6.is_empty then listnode6 = listnode4 else listnode6.append(listnode4) end # end if pclassdefnode5 != null then listnode6.add(pclassdefnode5) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode6 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction30 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode7 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist2 assert listnode5 isa Array[Object] var pclassdefnode6 = nodearraylist3 assert pclassdefnode6 isa nullable PClassdef # if listnode5 != null then if listnode7.is_empty then listnode7 = listnode5 else listnode7.append(listnode5) end # end if pclassdefnode6 != null then listnode7.add(pclassdefnode6) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode7 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction31 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode7 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist3 assert listnode5 isa Array[Object] var pclassdefnode6 = nodearraylist4 assert pclassdefnode6 isa nullable PClassdef # if listnode5 != null then if listnode7.is_empty then listnode7 = listnode5 else listnode7.append(listnode5) end # end if pclassdefnode6 != null then listnode7.add(pclassdefnode6) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode7 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction32 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode8 = new Array[Object] var listnode6 = new Array[Object] var ppropdefnode5 = nodearraylist1 assert ppropdefnode5 isa nullable PPropdef if ppropdefnode5 != null then listnode6.add(ppropdefnode5) end var pclassdefnode4: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode6 ) var pclassdefnode7 = nodearraylist3 assert pclassdefnode7 isa nullable PClassdef if pclassdefnode4 != null then listnode8.add(pclassdefnode4) end if pclassdefnode7 != null then listnode8.add(pclassdefnode7) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode8 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction33 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode9 = new Array[Object] var listnode7 = new Array[Object] var ppropdefnode5 = nodearraylist1 assert ppropdefnode5 isa nullable PPropdef var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] if ppropdefnode5 != null then listnode7.add(ppropdefnode5) end # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pclassdefnode4: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) var pclassdefnode8 = nodearraylist4 assert pclassdefnode8 isa nullable PClassdef if pclassdefnode4 != null then listnode9.add(pclassdefnode4) end if pclassdefnode8 != null then listnode9.add(pclassdefnode8) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction34 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode8 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode6 = new Array[Object] var ppropdefnode5 = nodearraylist2 assert ppropdefnode5 isa nullable PPropdef if ppropdefnode5 != null then listnode6.add(ppropdefnode5) end var pclassdefnode4: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode6 ) var pclassdefnode7 = nodearraylist4 assert pclassdefnode7 isa nullable PClassdef if pclassdefnode4 != null then listnode8.add(pclassdefnode4) end if pclassdefnode7 != null then listnode8.add(pclassdefnode7) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode8 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction35 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode9 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode7 = new Array[Object] var ppropdefnode5 = nodearraylist2 assert ppropdefnode5 isa nullable PPropdef var listnode6 = nodearraylist4 assert listnode6 isa Array[Object] if ppropdefnode5 != null then listnode7.add(ppropdefnode5) end # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pclassdefnode4: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) var pclassdefnode8 = nodearraylist5 assert pclassdefnode8 isa nullable PClassdef if pclassdefnode4 != null then listnode9.add(pclassdefnode4) end if pclassdefnode8 != null then listnode9.add(pclassdefnode8) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction36 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode9 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode7 = new Array[Object] var ppropdefnode6 = nodearraylist2 assert ppropdefnode6 isa nullable PPropdef if ppropdefnode6 != null then listnode7.add(ppropdefnode6) end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) var pclassdefnode8 = nodearraylist4 assert pclassdefnode8 isa nullable PClassdef if pclassdefnode5 != null then listnode9.add(pclassdefnode5) end if pclassdefnode8 != null then listnode9.add(pclassdefnode8) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction37 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode10 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode8 = new Array[Object] var ppropdefnode6 = nodearraylist2 assert ppropdefnode6 isa nullable PPropdef var listnode7 = nodearraylist4 assert listnode7 isa Array[Object] if ppropdefnode6 != null then listnode8.add(ppropdefnode6) end # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) var pclassdefnode9 = nodearraylist5 assert pclassdefnode9 isa nullable PClassdef if pclassdefnode5 != null then listnode10.add(pclassdefnode5) end if pclassdefnode9 != null then listnode10.add(pclassdefnode9) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode10 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction38 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode9 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode7 = new Array[Object] var ppropdefnode6 = nodearraylist3 assert ppropdefnode6 isa nullable PPropdef if ppropdefnode6 != null then listnode7.add(ppropdefnode6) end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) var pclassdefnode8 = nodearraylist5 assert pclassdefnode8 isa nullable PClassdef if pclassdefnode5 != null then listnode9.add(pclassdefnode5) end if pclassdefnode8 != null then listnode9.add(pclassdefnode8) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction39 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode10 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode8 = new Array[Object] var ppropdefnode6 = nodearraylist3 assert ppropdefnode6 isa nullable PPropdef var listnode7 = nodearraylist5 assert listnode7 isa Array[Object] if ppropdefnode6 != null then listnode8.add(ppropdefnode6) end # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) var pclassdefnode9 = nodearraylist6 assert pclassdefnode9 isa nullable PClassdef if pclassdefnode5 != null then listnode10.add(pclassdefnode5) end if pclassdefnode9 != null then listnode10.add(pclassdefnode9) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode10 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction40 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode9 = new Array[Object] var listnode4 = nodearraylist1 assert listnode4 isa Array[Object] var listnode7 = new Array[Object] var ppropdefnode6 = nodearraylist2 assert ppropdefnode6 isa nullable PPropdef if ppropdefnode6 != null then listnode7.add(ppropdefnode6) end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) var pclassdefnode8 = nodearraylist4 assert pclassdefnode8 isa nullable PClassdef # if listnode4 != null then if listnode9.is_empty then listnode9 = listnode4 else listnode9.append(listnode4) end # end if pclassdefnode5 != null then listnode9.add(pclassdefnode5) end if pclassdefnode8 != null then listnode9.add(pclassdefnode8) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction41 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode10 = new Array[Object] var listnode4 = nodearraylist1 assert listnode4 isa Array[Object] var listnode8 = new Array[Object] var ppropdefnode6 = nodearraylist2 assert ppropdefnode6 isa nullable PPropdef var listnode7 = nodearraylist4 assert listnode7 isa Array[Object] if ppropdefnode6 != null then listnode8.add(ppropdefnode6) end # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) var pclassdefnode9 = nodearraylist5 assert pclassdefnode9 isa nullable PClassdef # if listnode4 != null then if listnode10.is_empty then listnode10 = listnode4 else listnode10.append(listnode4) end # end if pclassdefnode5 != null then listnode10.add(pclassdefnode5) end if pclassdefnode9 != null then listnode10.add(pclassdefnode9) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode3, listnode10 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction42 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode9 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] var listnode7 = new Array[Object] var ppropdefnode6 = nodearraylist3 assert ppropdefnode6 isa nullable PPropdef if ppropdefnode6 != null then listnode7.add(ppropdefnode6) end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode7 ) var pclassdefnode8 = nodearraylist5 assert pclassdefnode8 isa nullable PClassdef # if listnode4 != null then if listnode9.is_empty then listnode9 = listnode4 else listnode9.append(listnode4) end # end if pclassdefnode5 != null then listnode9.add(pclassdefnode5) end if pclassdefnode8 != null then listnode9.add(pclassdefnode8) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode9 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction43 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode10 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] var listnode8 = new Array[Object] var ppropdefnode6 = nodearraylist3 assert ppropdefnode6 isa nullable PPropdef var listnode7 = nodearraylist5 assert listnode7 isa Array[Object] if ppropdefnode6 != null then listnode8.add(ppropdefnode6) end # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var pclassdefnode5: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) var pclassdefnode9 = nodearraylist6 assert pclassdefnode9 isa nullable PClassdef # if listnode4 != null then if listnode10.is_empty then listnode10 = listnode4 else listnode10.append(listnode4) end # end if pclassdefnode5 != null then listnode10.add(pclassdefnode5) end if pclassdefnode9 != null then listnode10.add(pclassdefnode9) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode3, listnode10 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction44 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode10 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist2 assert listnode5 isa Array[Object] var listnode8 = new Array[Object] var ppropdefnode7 = nodearraylist3 assert ppropdefnode7 isa nullable PPropdef if ppropdefnode7 != null then listnode8.add(ppropdefnode7) end var pclassdefnode6: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) var pclassdefnode9 = nodearraylist5 assert pclassdefnode9 isa nullable PClassdef # if listnode5 != null then if listnode10.is_empty then listnode10 = listnode5 else listnode10.append(listnode5) end # end if pclassdefnode6 != null then listnode10.add(pclassdefnode6) end if pclassdefnode9 != null then listnode10.add(pclassdefnode9) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode10 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction45 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode11 = new Array[Object] var listnode3 = nodearraylist1 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist2 assert listnode5 isa Array[Object] var listnode9 = new Array[Object] var ppropdefnode7 = nodearraylist3 assert ppropdefnode7 isa nullable PPropdef var listnode8 = nodearraylist5 assert listnode8 isa Array[Object] if ppropdefnode7 != null then listnode9.add(ppropdefnode7) end # if listnode8 != null then if listnode9.is_empty then listnode9 = listnode8 else listnode9.append(listnode8) end # end var pclassdefnode6: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode9 ) var pclassdefnode10 = nodearraylist6 assert pclassdefnode10 isa nullable PClassdef # if listnode5 != null then if listnode11.is_empty then listnode11 = listnode5 else listnode11.append(listnode5) end # end if pclassdefnode6 != null then listnode11.add(pclassdefnode6) end if pclassdefnode10 != null then listnode11.add(pclassdefnode10) end var pmodulenode1: nullable AModule = new AModule.init_amodule( null, listnode4, listnode11 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction46 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode10 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist3 assert listnode5 isa Array[Object] var listnode8 = new Array[Object] var ppropdefnode7 = nodearraylist4 assert ppropdefnode7 isa nullable PPropdef if ppropdefnode7 != null then listnode8.add(ppropdefnode7) end var pclassdefnode6: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode8 ) var pclassdefnode9 = nodearraylist6 assert pclassdefnode9 isa nullable PClassdef # if listnode5 != null then if listnode10.is_empty then listnode10 = listnode5 else listnode10.append(listnode5) end # end if pclassdefnode6 != null then listnode10.add(pclassdefnode6) end if pclassdefnode9 != null then listnode10.add(pclassdefnode9) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode10 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction47 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode11 = new Array[Object] var ppackagedeclnode2 = nodearraylist1 assert ppackagedeclnode2 isa nullable PPackagedecl var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist3 assert listnode5 isa Array[Object] var listnode9 = new Array[Object] var ppropdefnode7 = nodearraylist4 assert ppropdefnode7 isa nullable PPropdef var listnode8 = nodearraylist6 assert listnode8 isa Array[Object] if ppropdefnode7 != null then listnode9.add(ppropdefnode7) end # if listnode8 != null then if listnode9.is_empty then listnode9 = listnode8 else listnode9.append(listnode8) end # end var pclassdefnode6: nullable ATopClassdef = new ATopClassdef.init_atopclassdef( listnode9 ) var pclassdefnode10 = nodearraylist7 assert pclassdefnode10 isa nullable PClassdef # if listnode5 != null then if listnode11.is_empty then listnode11 = listnode5 else listnode11.append(listnode5) end # end if pclassdefnode6 != null then listnode11.add(pclassdefnode6) end if pclassdefnode10 != null then listnode11.add(pclassdefnode10) end var pmodulenode1: nullable AModule = new AModule.init_amodule( ppackagedeclnode2, listnode4, listnode11 ) node_list = pmodulenode1 p.push(p.go_to(0), node_list) end init do end end private class ReduceAction48 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwpackagenode3 = nodearraylist2 assert tkwpackagenode3 isa nullable TKwpackage var tidnode4 = nodearraylist4 assert tidnode4 isa nullable TId var ppackagedeclnode1: nullable APackagedecl = new APackagedecl.init_apackagedecl( pdocnode2, tkwpackagenode3, tidnode4 ) node_list = ppackagedeclnode1 p.push(p.go_to(1), node_list) end init do end end private class ReduceAction49 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pvisibilitynode2 = nodearraylist2 assert pvisibilitynode2 isa nullable PVisibility var tkwimportnode3 = nodearraylist3 assert tkwimportnode3 isa nullable TKwimport var tidnode4 = nodearraylist5 assert tidnode4 isa nullable TId var pimportnode1: nullable AImport = new AImport.init_aimport( pvisibilitynode2, tkwimportnode3, tidnode4 ) node_list = pimportnode1 p.push(p.go_to(2), node_list) end init do end end private class ReduceAction50 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pvisibilitynode2 = nodearraylist2 assert pvisibilitynode2 isa nullable PVisibility var tkwimportnode3 = nodearraylist3 assert tkwimportnode3 isa nullable TKwimport var tkwendnode4 = nodearraylist5 assert tkwendnode4 isa nullable TKwend var pimportnode1: nullable ANoImport = new ANoImport.init_anoimport( pvisibilitynode2, tkwimportnode3, tkwendnode4 ) node_list = pimportnode1 p.push(p.go_to(2), node_list) end init do end end private class ReduceAction51 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode3 = new Array[Object] var ppropdefnode2 = nodearraylist1 assert ppropdefnode2 isa nullable PPropdef if ppropdefnode2 != null then listnode3.add(ppropdefnode2) end var pclassdefnode1: nullable AMainClassdef = new AMainClassdef.init_amainclassdef( listnode3 ) node_list = pclassdefnode1 p.push(p.go_to(3), node_list) end init do end end private class ReduceAction52 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop node_list = null p.push(p.go_to(3), node_list) end init do end end private class ReduceAction53 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode4 = nodearraylist2 assert pexprnode4 isa nullable PExpr if pexprnode4 != null then listnode5.add(pexprnode4) end var pexprnode3: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode5 ) var ppropdefnode1: nullable AMainMethPropdef = new AMainMethPropdef.init_amainmethpropdef( null, pexprnode3 ) node_list = ppropdefnode1 p.push(p.go_to(4), node_list) end init do end end private class ReduceAction54 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode6 = new Array[Object] var pexprnode4 = nodearraylist2 assert pexprnode4 isa nullable PExpr var listnode5 = nodearraylist3 assert listnode5 isa Array[Object] if pexprnode4 != null then listnode6.add(pexprnode4) end # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pexprnode3: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode6 ) var ppropdefnode1: nullable AMainMethPropdef = new AMainMethPropdef.init_amainmethpropdef( null, pexprnode3 ) node_list = ppropdefnode1 p.push(p.go_to(4), node_list) end init do end end private class ReduceAction55 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode8 = new Array[Object] var listnode9 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode8, listnode9 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction56 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode8 = new Array[Object] var listnode9 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode8, listnode9 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction57 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode9 = new Array[Object] var listnode10 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist6 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode9, listnode10 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction58 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode9 = new Array[Object] var listnode10 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist7 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode9, listnode10 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction59 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode9 = new Array[Object] var listnode10 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var listnode8 = nodearraylist6 assert listnode8 isa Array[Object] # if listnode8 != null then if listnode9.is_empty then listnode9 = listnode8 else listnode9.append(listnode8) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode9, listnode10 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction60 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode9 = new Array[Object] var listnode10 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var listnode8 = nodearraylist7 assert listnode8 isa Array[Object] # if listnode8 != null then if listnode9.is_empty then listnode9 = listnode8 else listnode9.append(listnode8) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode9, listnode10 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction61 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode10 = new Array[Object] var listnode11 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist6 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var listnode9 = nodearraylist7 assert listnode9 isa Array[Object] # if listnode9 != null then if listnode10.is_empty then listnode10 = listnode9 else listnode10.append(listnode9) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode10, listnode11 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction62 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode10 = new Array[Object] var listnode11 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist7 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var listnode9 = nodearraylist8 assert listnode9 isa Array[Object] # if listnode9 != null then if listnode10.is_empty then listnode10 = listnode9 else listnode10.append(listnode9) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode10, listnode11 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction63 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode8 = new Array[Object] var listnode10 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var ppropdefnode9 = nodearraylist6 assert ppropdefnode9 isa nullable PPropdef if ppropdefnode9 != null then listnode10.add(ppropdefnode9) end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode8, listnode10 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction64 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode8 = new Array[Object] var listnode11 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var ppropdefnode9 = nodearraylist6 assert ppropdefnode9 isa nullable PPropdef var listnode10 = nodearraylist8 assert listnode10 isa Array[Object] if ppropdefnode9 != null then listnode11.add(ppropdefnode9) end # if listnode10 != null then if listnode11.is_empty then listnode11 = listnode10 else listnode11.append(listnode10) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode8, listnode11 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction65 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode8 = new Array[Object] var listnode10 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var ppropdefnode9 = nodearraylist7 assert ppropdefnode9 isa nullable PPropdef if ppropdefnode9 != null then listnode10.add(ppropdefnode9) end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode8, listnode10 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction66 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode8 = new Array[Object] var listnode11 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var ppropdefnode9 = nodearraylist7 assert ppropdefnode9 isa nullable PPropdef var listnode10 = nodearraylist9 assert listnode10 isa Array[Object] if ppropdefnode9 != null then listnode11.add(ppropdefnode9) end # if listnode10 != null then if listnode11.is_empty then listnode11 = listnode10 else listnode11.append(listnode10) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode8, listnode11 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction67 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode9 = new Array[Object] var listnode11 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist6 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var ppropdefnode10 = nodearraylist7 assert ppropdefnode10 isa nullable PPropdef if ppropdefnode10 != null then listnode11.add(ppropdefnode10) end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode9, listnode11 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction68 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode9 = new Array[Object] var listnode12 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist6 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var ppropdefnode10 = nodearraylist7 assert ppropdefnode10 isa nullable PPropdef var listnode11 = nodearraylist9 assert listnode11 isa Array[Object] if ppropdefnode10 != null then listnode12.add(ppropdefnode10) end # if listnode11 != null then if listnode12.is_empty then listnode12 = listnode11 else listnode12.append(listnode11) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode9, listnode12 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction69 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode9 = new Array[Object] var listnode11 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist7 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var ppropdefnode10 = nodearraylist8 assert ppropdefnode10 isa nullable PPropdef if ppropdefnode10 != null then listnode11.add(ppropdefnode10) end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode9, listnode11 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction70 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode9 = new Array[Object] var listnode12 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist7 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var ppropdefnode10 = nodearraylist8 assert ppropdefnode10 isa nullable PPropdef var listnode11 = nodearraylist10 assert listnode11 isa Array[Object] if ppropdefnode10 != null then listnode12.add(ppropdefnode10) end # if listnode11 != null then if listnode12.is_empty then listnode12 = listnode11 else listnode12.append(listnode11) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode9, listnode12 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction71 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode9 = new Array[Object] var listnode11 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var listnode8 = nodearraylist6 assert listnode8 isa Array[Object] # if listnode8 != null then if listnode9.is_empty then listnode9 = listnode8 else listnode9.append(listnode8) end # end var ppropdefnode10 = nodearraylist7 assert ppropdefnode10 isa nullable PPropdef if ppropdefnode10 != null then listnode11.add(ppropdefnode10) end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode9, listnode11 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction72 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode9 = new Array[Object] var listnode12 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var listnode8 = nodearraylist6 assert listnode8 isa Array[Object] # if listnode8 != null then if listnode9.is_empty then listnode9 = listnode8 else listnode9.append(listnode8) end # end var ppropdefnode10 = nodearraylist7 assert ppropdefnode10 isa nullable PPropdef var listnode11 = nodearraylist9 assert listnode11 isa Array[Object] if ppropdefnode10 != null then listnode12.add(ppropdefnode10) end # if listnode11 != null then if listnode12.is_empty then listnode12 = listnode11 else listnode12.append(listnode11) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode9, listnode12 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction73 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode9 = new Array[Object] var listnode11 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var listnode8 = nodearraylist7 assert listnode8 isa Array[Object] # if listnode8 != null then if listnode9.is_empty then listnode9 = listnode8 else listnode9.append(listnode8) end # end var ppropdefnode10 = nodearraylist8 assert ppropdefnode10 isa nullable PPropdef if ppropdefnode10 != null then listnode11.add(ppropdefnode10) end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode9, listnode11 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction74 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode7 = new Array[Object] var listnode9 = new Array[Object] var listnode12 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var listnode8 = nodearraylist7 assert listnode8 isa Array[Object] # if listnode8 != null then if listnode9.is_empty then listnode9 = listnode8 else listnode9.append(listnode8) end # end var ppropdefnode10 = nodearraylist8 assert ppropdefnode10 isa nullable PPropdef var listnode11 = nodearraylist10 assert listnode11 isa Array[Object] if ppropdefnode10 != null then listnode12.add(ppropdefnode10) end # if listnode11 != null then if listnode12.is_empty then listnode12 = listnode11 else listnode12.append(listnode11) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode7, listnode9, listnode12 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction75 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode10 = new Array[Object] var listnode12 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist6 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var listnode9 = nodearraylist7 assert listnode9 isa Array[Object] # if listnode9 != null then if listnode10.is_empty then listnode10 = listnode9 else listnode10.append(listnode9) end # end var ppropdefnode11 = nodearraylist8 assert ppropdefnode11 isa nullable PPropdef if ppropdefnode11 != null then listnode12.add(ppropdefnode11) end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode10, listnode12 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction76 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode10 = new Array[Object] var listnode13 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist3 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist6 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var listnode9 = nodearraylist7 assert listnode9 isa Array[Object] # if listnode9 != null then if listnode10.is_empty then listnode10 = listnode9 else listnode10.append(listnode9) end # end var ppropdefnode11 = nodearraylist8 assert ppropdefnode11 isa nullable PPropdef var listnode12 = nodearraylist10 assert listnode12 isa Array[Object] if ppropdefnode11 != null then listnode13.add(ppropdefnode11) end # if listnode12 != null then if listnode13.is_empty then listnode13 = listnode12 else listnode13.append(listnode12) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, null, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode10, listnode13 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction77 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode10 = new Array[Object] var listnode12 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist7 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var listnode9 = nodearraylist8 assert listnode9 isa Array[Object] # if listnode9 != null then if listnode10.is_empty then listnode10 = listnode9 else listnode10.append(listnode9) end # end var ppropdefnode11 = nodearraylist9 assert ppropdefnode11 isa nullable PPropdef if ppropdefnode11 != null then listnode12.add(ppropdefnode11) end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode10, listnode12 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction78 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist13 = p.pop var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode8 = new Array[Object] var listnode10 = new Array[Object] var listnode13 = new Array[Object] var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var pclasskindnode5 = nodearraylist4 assert pclasskindnode5 isa nullable PClasskind var tclassidnode6 = nodearraylist6 assert tclassidnode6 isa nullable TClassid var listnode7 = nodearraylist7 assert listnode7 isa Array[Object] # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var listnode9 = nodearraylist8 assert listnode9 isa Array[Object] # if listnode9 != null then if listnode10.is_empty then listnode10 = listnode9 else listnode10.append(listnode9) end # end var ppropdefnode11 = nodearraylist9 assert ppropdefnode11 isa nullable PPropdef var listnode12 = nodearraylist11 assert listnode12 isa Array[Object] if ppropdefnode11 != null then listnode13.add(ppropdefnode11) end # if listnode12 != null then if listnode13.is_empty then listnode13 = listnode12 else listnode13.append(listnode12) end # end var pclassdefnode1: nullable AClassdef = new AClassdef.init_aclassdef( pdocnode2, tkwredefnode3, pvisibilitynode4, pclasskindnode5, tclassidnode6, listnode8, listnode10, listnode13 ) node_list = pclassdefnode1 p.push(p.go_to(5), node_list) end init do end end private class ReduceAction79 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwclassnode2 = nodearraylist1 assert tkwclassnode2 isa nullable TKwclass var pclasskindnode1: nullable AConcreteClasskind = new AConcreteClasskind.init_aconcreteclasskind( tkwclassnode2 ) node_list = pclasskindnode1 p.push(p.go_to(6), node_list) end init do end end private class ReduceAction80 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwabstractnode2 = nodearraylist1 assert tkwabstractnode2 isa nullable TKwabstract var tkwclassnode3 = nodearraylist2 assert tkwclassnode3 isa nullable TKwclass var pclasskindnode1: nullable AAbstractClasskind = new AAbstractClasskind.init_aabstractclasskind( tkwabstractnode2, tkwclassnode3 ) node_list = pclasskindnode1 p.push(p.go_to(6), node_list) end init do end end private class ReduceAction81 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwinterfacenode2 = nodearraylist1 assert tkwinterfacenode2 isa nullable TKwinterface var pclasskindnode1: nullable AInterfaceClasskind = new AInterfaceClasskind.init_ainterfaceclasskind( tkwinterfacenode2 ) node_list = pclasskindnode1 p.push(p.go_to(6), node_list) end init do end end private class ReduceAction82 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwuniversalnode2 = nodearraylist1 assert tkwuniversalnode2 isa nullable TKwuniversal var pclasskindnode1: nullable AUniversalClasskind = new AUniversalClasskind.init_auniversalclasskind( tkwuniversalnode2 ) node_list = pclasskindnode1 p.push(p.go_to(6), node_list) end init do end end private class ReduceAction83 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pformaldefnode1 = nodearraylist3 assert pformaldefnode1 isa nullable PFormaldef if pformaldefnode1 != null then listnode2.add(pformaldefnode1) end node_list = listnode2 p.push(p.go_to(7), node_list) end init do end end private class ReduceAction84 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var pformaldefnode1 = nodearraylist3 assert pformaldefnode1 isa nullable PFormaldef var listnode2 = nodearraylist4 assert listnode2 isa Array[Object] if pformaldefnode1 != null then listnode3.add(pformaldefnode1) end # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end node_list = listnode3 p.push(p.go_to(7), node_list) end init do end end private class ReduceAction85 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pformaldefnode1 = nodearraylist3 assert pformaldefnode1 isa nullable PFormaldef node_list = pformaldefnode1 p.push(p.go_to(8), node_list) end init do end end private class ReduceAction86 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tclassidnode2 = nodearraylist1 assert tclassidnode2 isa nullable TClassid var pformaldefnode1: nullable AFormaldef = new AFormaldef.init_aformaldef( tclassidnode2, null ) node_list = pformaldefnode1 p.push(p.go_to(9), node_list) end init do end end private class ReduceAction87 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tclassidnode2 = nodearraylist1 assert tclassidnode2 isa nullable TClassid var ptypenode3 = nodearraylist2 assert ptypenode3 isa nullable PType var pformaldefnode1: nullable AFormaldef = new AFormaldef.init_aformaldef( tclassidnode2, ptypenode3 ) node_list = pformaldefnode1 p.push(p.go_to(9), node_list) end init do end end private class ReduceAction88 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwspecialnode2 = nodearraylist2 assert tkwspecialnode2 isa nullable TKwspecial var ptypenode3 = nodearraylist4 assert ptypenode3 isa nullable PType var psuperclassnode1: nullable ASuperclass = new ASuperclass.init_asuperclass( tkwspecialnode2, ptypenode3 ) node_list = psuperclassnode1 p.push(p.go_to(10), node_list) end init do end end private class ReduceAction89 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var ppropdefnode1 = nodearraylist1 assert ppropdefnode1 isa nullable PPropdef node_list = ppropdefnode1 p.push(p.go_to(11), node_list) end init do end end private class ReduceAction90 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist3 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist7 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteMethPropdef = new AConcreteMethPropdef.init_aconcretemethpropdef( pdocnode2, null, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction91 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist4 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist8 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteMethPropdef = new AConcreteMethPropdef.init_aconcretemethpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction92 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist3 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist7 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteMethPropdef = new AConcreteMethPropdef.init_aconcretemethpropdef( pdocnode2, null, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction93 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist4 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist8 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteMethPropdef = new AConcreteMethPropdef.init_aconcretemethpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction94 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist3 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var ppropdefnode1: nullable ADeferredMethPropdef = new ADeferredMethPropdef.init_adeferredmethpropdef( pdocnode2, null, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction95 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist4 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var ppropdefnode1: nullable ADeferredMethPropdef = new ADeferredMethPropdef.init_adeferredmethpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction96 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist3 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var ppropdefnode1: nullable AInternMethPropdef = new AInternMethPropdef.init_ainternmethpropdef( pdocnode2, null, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction97 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist4 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var ppropdefnode1: nullable AInternMethPropdef = new AInternMethPropdef.init_ainternmethpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction98 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist3 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var ppropdefnode1: nullable AExternMethPropdef = new AExternMethPropdef.init_aexternmethpropdef( pdocnode2, null, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction99 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist4 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var ppropdefnode1: nullable AExternMethPropdef = new AExternMethPropdef.init_aexternmethpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction100 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist3 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var tstringnode8 = nodearraylist8 assert tstringnode8 isa nullable TString var ppropdefnode1: nullable AExternMethPropdef = new AExternMethPropdef.init_aexternmethpropdef( pdocnode2, null, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, tstringnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction101 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist4 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var tstringnode8 = nodearraylist9 assert tstringnode8 isa nullable TString var ppropdefnode1: nullable AExternMethPropdef = new AExternMethPropdef.init_aexternmethpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, tstringnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction102 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist4 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist5 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist6 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction103 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction104 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist4 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction105 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction106 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction107 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction108 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist4 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction109 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction110 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode6 = nodearraylist2 assert pvisibilitynode6 isa nullable PVisibility var tkwattrnode7 = nodearraylist3 assert tkwattrnode7 isa nullable TKwattr var tattridnode9 = nodearraylist4 assert tattridnode9 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, null, pvisibilitynode6, tkwattrnode7, null, tattridnode9, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction111 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist4 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction112 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction113 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction114 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction115 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist6 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist7 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist8 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist9 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction116 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist6 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction117 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction118 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist6 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction119 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var pvisibilitynode6 = nodearraylist3 assert pvisibilitynode6 isa nullable PVisibility var tkwattrnode7 = nodearraylist4 assert tkwattrnode7 isa nullable TKwattr var tattridnode9 = nodearraylist5 assert tattridnode9 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, tkwredefnode5, pvisibilitynode6, tkwattrnode7, null, tattridnode9, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction120 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist4 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist5 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist6 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist7 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction121 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction122 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist4 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist6 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction123 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction124 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction125 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction126 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist4 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist6 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction127 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction128 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode6 = nodearraylist2 assert pvisibilitynode6 isa nullable PVisibility var tkwattrnode7 = nodearraylist3 assert tkwattrnode7 isa nullable TKwattr var tattridnode9 = nodearraylist4 assert tattridnode9 isa nullable TAttrid var ptypenode10 = nodearraylist5 assert ptypenode10 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, null, pvisibilitynode6, tkwattrnode7, null, tattridnode9, ptypenode10, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction129 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist4 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction130 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction131 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction132 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction133 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist6 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist7 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist8 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist9 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist10 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction134 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist6 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist8 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction135 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction136 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist6 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist8 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction137 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var pvisibilitynode6 = nodearraylist3 assert pvisibilitynode6 isa nullable PVisibility var tkwattrnode7 = nodearraylist4 assert tkwattrnode7 isa nullable TKwattr var tattridnode9 = nodearraylist5 assert tattridnode9 isa nullable TAttrid var ptypenode10 = nodearraylist6 assert ptypenode10 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, tkwredefnode5, pvisibilitynode6, tkwattrnode7, null, tattridnode9, ptypenode10, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction138 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist4 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist5 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist6 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist9 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction139 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist10 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction140 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist4 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist8 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction141 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist10 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction142 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction143 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction144 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist4 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist8 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction145 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction146 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode6 = nodearraylist2 assert pvisibilitynode6 isa nullable PVisibility var tkwattrnode7 = nodearraylist3 assert tkwattrnode7 isa nullable TKwattr var tattridnode9 = nodearraylist4 assert tattridnode9 isa nullable TAttrid var pexprnode11 = nodearraylist7 assert pexprnode11 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, null, pvisibilitynode6, tkwattrnode7, null, tattridnode9, null, pexprnode11 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction147 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist4 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist10 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction148 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction149 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction150 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction151 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist6 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist7 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist8 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist9 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist12 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction152 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist6 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction153 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction154 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist6 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction155 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var pvisibilitynode6 = nodearraylist3 assert pvisibilitynode6 isa nullable PVisibility var tkwattrnode7 = nodearraylist4 assert tkwattrnode7 isa nullable TKwattr var tattridnode9 = nodearraylist5 assert tattridnode9 isa nullable TAttrid var pexprnode11 = nodearraylist8 assert pexprnode11 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, tkwredefnode5, pvisibilitynode6, tkwattrnode7, null, tattridnode9, null, pexprnode11 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction156 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist4 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist5 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist6 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist7 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist10 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction157 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction158 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist4 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist6 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction159 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction160 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist12 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction161 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction162 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist4 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist6 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction163 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction164 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode6 = nodearraylist2 assert pvisibilitynode6 isa nullable PVisibility var tkwattrnode7 = nodearraylist3 assert tkwattrnode7 isa nullable TKwattr var tattridnode9 = nodearraylist4 assert tattridnode9 isa nullable TAttrid var ptypenode10 = nodearraylist5 assert ptypenode10 isa nullable PType var pexprnode11 = nodearraylist8 assert pexprnode11 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, null, pvisibilitynode6, tkwattrnode7, null, tattridnode9, ptypenode10, pexprnode11 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction165 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist4 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist6 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction166 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist12 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction167 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction168 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist7 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist12 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction169 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist13 = p.pop var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist6 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist7 assert pvisibilitynode10 isa nullable PVisibility var tkwattrnode11 = nodearraylist8 assert tkwattrnode11 isa nullable TKwattr var tattridnode13 = nodearraylist9 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist10 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist13 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, tkwattrnode11, null, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction170 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist6 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist8 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist11 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction171 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist5 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction172 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwattrnode9 = nodearraylist6 assert tkwattrnode9 isa nullable TKwattr var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist8 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist11 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, tkwattrnode9, null, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction173 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var pvisibilitynode6 = nodearraylist3 assert pvisibilitynode6 isa nullable PVisibility var tkwattrnode7 = nodearraylist4 assert tkwattrnode7 isa nullable TKwattr var tattridnode9 = nodearraylist5 assert tattridnode9 isa nullable TAttrid var ptypenode10 = nodearraylist6 assert ptypenode10 isa nullable PType var pexprnode11 = nodearraylist9 assert pexprnode11 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, tkwredefnode5, pvisibilitynode6, tkwattrnode7, null, tattridnode9, ptypenode10, pexprnode11 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction174 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist4 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist5 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist6 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction175 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction176 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist4 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction177 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction178 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction179 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction180 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist4 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction181 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction182 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode6 = nodearraylist2 assert pvisibilitynode6 isa nullable PVisibility var tkwvarnode8 = nodearraylist3 assert tkwvarnode8 isa nullable TKwvar var tattridnode9 = nodearraylist4 assert tattridnode9 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, null, pvisibilitynode6, null, tkwvarnode8, tattridnode9, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction183 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist4 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction184 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction185 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction186 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction187 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist6 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist7 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist8 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist9 assert tattridnode13 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction188 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist6 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction189 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction190 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist6 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction191 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var pvisibilitynode6 = nodearraylist3 assert pvisibilitynode6 isa nullable PVisibility var tkwvarnode8 = nodearraylist4 assert tkwvarnode8 isa nullable TKwvar var tattridnode9 = nodearraylist5 assert tattridnode9 isa nullable TAttrid var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, tkwredefnode5, pvisibilitynode6, null, tkwvarnode8, tattridnode9, null, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction192 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist4 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist5 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist6 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist7 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction193 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction194 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist4 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist6 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction195 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction196 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction197 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction198 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist4 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist6 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction199 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction200 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode6 = nodearraylist2 assert pvisibilitynode6 isa nullable PVisibility var tkwvarnode8 = nodearraylist3 assert tkwvarnode8 isa nullable TKwvar var tattridnode9 = nodearraylist4 assert tattridnode9 isa nullable TAttrid var ptypenode10 = nodearraylist5 assert ptypenode10 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, null, pvisibilitynode6, null, tkwvarnode8, tattridnode9, ptypenode10, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction201 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist4 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction202 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction203 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction204 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction205 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist6 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist7 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist8 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist9 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist10 assert ptypenode14 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction206 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist6 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist8 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction207 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction208 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist6 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist8 assert ptypenode12 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction209 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var pvisibilitynode6 = nodearraylist3 assert pvisibilitynode6 isa nullable PVisibility var tkwvarnode8 = nodearraylist4 assert tkwvarnode8 isa nullable TKwvar var tattridnode9 = nodearraylist5 assert tattridnode9 isa nullable TAttrid var ptypenode10 = nodearraylist6 assert ptypenode10 isa nullable PType var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, tkwredefnode5, pvisibilitynode6, null, tkwvarnode8, tattridnode9, ptypenode10, null ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction210 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist4 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist5 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist6 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist9 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction211 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist10 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction212 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist4 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist8 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction213 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist10 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction214 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction215 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction216 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist4 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist8 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction217 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction218 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode6 = nodearraylist2 assert pvisibilitynode6 isa nullable PVisibility var tkwvarnode8 = nodearraylist3 assert tkwvarnode8 isa nullable TKwvar var tattridnode9 = nodearraylist4 assert tattridnode9 isa nullable TAttrid var pexprnode11 = nodearraylist7 assert pexprnode11 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, null, pvisibilitynode6, null, tkwvarnode8, tattridnode9, null, pexprnode11 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction219 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist4 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist10 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction220 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction221 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction222 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction223 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist6 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist7 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist8 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist9 assert tattridnode13 isa nullable TAttrid var pexprnode15 = nodearraylist12 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, null, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction224 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist6 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction225 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction226 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist6 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, null, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction227 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var pvisibilitynode6 = nodearraylist3 assert pvisibilitynode6 isa nullable PVisibility var tkwvarnode8 = nodearraylist4 assert tkwvarnode8 isa nullable TKwvar var tattridnode9 = nodearraylist5 assert tattridnode9 isa nullable TAttrid var pexprnode11 = nodearraylist8 assert pexprnode11 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, tkwredefnode5, pvisibilitynode6, null, tkwvarnode8, tattridnode9, null, pexprnode11 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction228 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist4 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist5 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist6 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist7 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist10 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction229 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction230 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist4 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist6 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction231 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction232 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist12 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, null, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction233 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction234 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist3 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist4 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist5 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist6 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist9 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction235 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, null, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction236 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode6 = nodearraylist2 assert pvisibilitynode6 isa nullable PVisibility var tkwvarnode8 = nodearraylist3 assert tkwvarnode8 isa nullable TKwvar var tattridnode9 = nodearraylist4 assert tattridnode9 isa nullable TAttrid var ptypenode10 = nodearraylist5 assert ptypenode10 isa nullable PType var pexprnode11 = nodearraylist8 assert pexprnode11 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, null, pvisibilitynode6, null, tkwvarnode8, tattridnode9, ptypenode10, pexprnode11 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction237 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist3 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist4 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist5 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist6 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist7 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist8 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist11 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction238 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist12 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction239 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwreadablenode5 = nodearraylist2 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( null, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction240 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwwritablenode8 = nodearraylist4 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist5 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist6 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist7 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist8 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist9 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist12 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction241 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist13 = p.pop var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var tkwwritablenode8 = nodearraylist5 assert tkwwritablenode8 isa nullable TKwwritable var pablenode6: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode7, tkwwritablenode8 ) var tkwredefnode9 = nodearraylist6 assert tkwredefnode9 isa nullable TKwredef var pvisibilitynode10 = nodearraylist7 assert pvisibilitynode10 isa nullable PVisibility var tkwvarnode12 = nodearraylist8 assert tkwvarnode12 isa nullable TKwvar var tattridnode13 = nodearraylist9 assert tattridnode13 isa nullable TAttrid var ptypenode14 = nodearraylist10 assert ptypenode14 isa nullable PType var pexprnode15 = nodearraylist13 assert pexprnode15 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, pablenode6, tkwredefnode9, pvisibilitynode10, null, tkwvarnode12, tattridnode13, ptypenode14, pexprnode15 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction242 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode4 = nodearraylist2 assert tkwredefnode4 isa nullable TKwredef var tkwreadablenode5 = nodearraylist3 assert tkwreadablenode5 isa nullable TKwreadable var pablenode3: nullable AReadAble = new AReadAble.init_areadable( tkwredefnode4, tkwreadablenode5 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist6 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist8 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist11 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, pablenode3, null, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction243 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwwritablenode6 = nodearraylist2 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( null, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist3 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist4 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist5 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist6 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist7 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist10 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction244 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var tkwwritablenode6 = nodearraylist3 assert tkwwritablenode6 isa nullable TKwwritable var pablenode4: nullable AWriteAble = new AWriteAble.init_awriteable( tkwredefnode5, tkwwritablenode6 ) var tkwredefnode7 = nodearraylist4 assert tkwredefnode7 isa nullable TKwredef var pvisibilitynode8 = nodearraylist5 assert pvisibilitynode8 isa nullable PVisibility var tkwvarnode10 = nodearraylist6 assert tkwvarnode10 isa nullable TKwvar var tattridnode11 = nodearraylist7 assert tattridnode11 isa nullable TAttrid var ptypenode12 = nodearraylist8 assert ptypenode12 isa nullable PType var pexprnode13 = nodearraylist11 assert pexprnode13 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, pablenode4, tkwredefnode7, pvisibilitynode8, null, tkwvarnode10, tattridnode11, ptypenode12, pexprnode13 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction245 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode5 = nodearraylist2 assert tkwredefnode5 isa nullable TKwredef var pvisibilitynode6 = nodearraylist3 assert pvisibilitynode6 isa nullable PVisibility var tkwvarnode8 = nodearraylist4 assert tkwvarnode8 isa nullable TKwvar var tattridnode9 = nodearraylist5 assert tattridnode9 isa nullable TAttrid var ptypenode10 = nodearraylist6 assert ptypenode10 isa nullable PType var pexprnode11 = nodearraylist9 assert pexprnode11 isa nullable PExpr var ppropdefnode1: nullable AAttrPropdef = new AAttrPropdef.init_aattrpropdef( pdocnode2, null, null, tkwredefnode5, pvisibilitynode6, null, tkwvarnode8, tattridnode9, ptypenode10, pexprnode11 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction246 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwinitnode5 = nodearraylist3 assert tkwinitnode5 isa nullable TKwinit var psignaturenode7 = nodearraylist4 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist6 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteInitPropdef = new AConcreteInitPropdef.init_aconcreteinitpropdef( pdocnode2, null, pvisibilitynode4, tkwinitnode5, null, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction247 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwinitnode5 = nodearraylist4 assert tkwinitnode5 isa nullable TKwinit var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist7 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteInitPropdef = new AConcreteInitPropdef.init_aconcreteinitpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwinitnode5, null, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction248 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwinitnode5 = nodearraylist3 assert tkwinitnode5 isa nullable TKwinit var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist7 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteInitPropdef = new AConcreteInitPropdef.init_aconcreteinitpropdef( pdocnode2, null, pvisibilitynode4, tkwinitnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction249 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwinitnode5 = nodearraylist4 assert tkwinitnode5 isa nullable TKwinit var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist8 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteInitPropdef = new AConcreteInitPropdef.init_aconcreteinitpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwinitnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction250 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwinitnode5 = nodearraylist3 assert tkwinitnode5 isa nullable TKwinit var psignaturenode7 = nodearraylist4 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist6 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteInitPropdef = new AConcreteInitPropdef.init_aconcreteinitpropdef( pdocnode2, null, pvisibilitynode4, tkwinitnode5, null, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction251 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwinitnode5 = nodearraylist4 assert tkwinitnode5 isa nullable TKwinit var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist7 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteInitPropdef = new AConcreteInitPropdef.init_aconcreteinitpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwinitnode5, null, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction252 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwinitnode5 = nodearraylist3 assert tkwinitnode5 isa nullable TKwinit var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist7 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteInitPropdef = new AConcreteInitPropdef.init_aconcreteinitpropdef( pdocnode2, null, pvisibilitynode4, tkwinitnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction253 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwinitnode5 = nodearraylist4 assert tkwinitnode5 isa nullable TKwinit var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist8 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteInitPropdef = new AConcreteInitPropdef.init_aconcreteinitpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwinitnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction254 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwtypenode5 = nodearraylist3 assert tkwtypenode5 isa nullable TKwtype var tclassidnode6 = nodearraylist4 assert tclassidnode6 isa nullable TClassid var ptypenode7 = nodearraylist5 assert ptypenode7 isa nullable PType var ppropdefnode1: nullable ATypePropdef = new ATypePropdef.init_atypepropdef( pdocnode2, null, pvisibilitynode4, tkwtypenode5, tclassidnode6, ptypenode7 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction255 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwtypenode5 = nodearraylist4 assert tkwtypenode5 isa nullable TKwtype var tclassidnode6 = nodearraylist5 assert tclassidnode6 isa nullable TClassid var ptypenode7 = nodearraylist6 assert ptypenode7 isa nullable PType var ppropdefnode1: nullable ATypePropdef = new ATypePropdef.init_atypepropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwtypenode5, tclassidnode6, ptypenode7 ) node_list = ppropdefnode1 p.push(p.go_to(12), node_list) end init do end end private class ReduceAction256 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var pvisibilitynode1: nullable APublicVisibility = new APublicVisibility.init_apublicvisibility( ) node_list = pvisibilitynode1 p.push(p.go_to(13), node_list) end init do end end private class ReduceAction257 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwprivatenode2 = nodearraylist1 assert tkwprivatenode2 isa nullable TKwprivate var pvisibilitynode1: nullable APrivateVisibility = new APrivateVisibility.init_aprivatevisibility( tkwprivatenode2 ) node_list = pvisibilitynode1 p.push(p.go_to(13), node_list) end init do end end private class ReduceAction258 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwprotectednode2 = nodearraylist1 assert tkwprotectednode2 isa nullable TKwprotected var pvisibilitynode1: nullable AProtectedVisibility = new AProtectedVisibility.init_aprotectedvisibility( tkwprotectednode2 ) node_list = pvisibilitynode1 p.push(p.go_to(13), node_list) end init do end end private class ReduceAction259 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwintrudenode2 = nodearraylist1 assert tkwintrudenode2 isa nullable TKwintrude var pvisibilitynode1: nullable AIntrudeVisibility = new AIntrudeVisibility.init_aintrudevisibility( tkwintrudenode2 ) node_list = pvisibilitynode1 p.push(p.go_to(13), node_list) end init do end end private class ReduceAction260 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tidnode2 = nodearraylist1 assert tidnode2 isa nullable TId var pmethidnode1: nullable AIdMethid = new AIdMethid.init_aidmethid( tidnode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction261 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tplusnode2 = nodearraylist1 assert tplusnode2 isa nullable TPlus var pmethidnode1: nullable APlusMethid = new APlusMethid.init_aplusmethid( tplusnode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction262 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tminusnode2 = nodearraylist1 assert tminusnode2 isa nullable TMinus var pmethidnode1: nullable AMinusMethid = new AMinusMethid.init_aminusmethid( tminusnode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction263 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tstarnode2 = nodearraylist1 assert tstarnode2 isa nullable TStar var pmethidnode1: nullable AStarMethid = new AStarMethid.init_astarmethid( tstarnode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction264 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tslashnode2 = nodearraylist1 assert tslashnode2 isa nullable TSlash var pmethidnode1: nullable ASlashMethid = new ASlashMethid.init_aslashmethid( tslashnode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction265 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tpercentnode2 = nodearraylist1 assert tpercentnode2 isa nullable TPercent var pmethidnode1: nullable APercentMethid = new APercentMethid.init_apercentmethid( tpercentnode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction266 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var teqnode2 = nodearraylist1 assert teqnode2 isa nullable TEq var pmethidnode1: nullable AEqMethid = new AEqMethid.init_aeqmethid( teqnode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction267 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tnenode2 = nodearraylist1 assert tnenode2 isa nullable TNe var pmethidnode1: nullable ANeMethid = new ANeMethid.init_anemethid( tnenode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction268 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tlenode2 = nodearraylist1 assert tlenode2 isa nullable TLe var pmethidnode1: nullable ALeMethid = new ALeMethid.init_alemethid( tlenode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction269 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tgenode2 = nodearraylist1 assert tgenode2 isa nullable TGe var pmethidnode1: nullable AGeMethid = new AGeMethid.init_agemethid( tgenode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction270 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tltnode2 = nodearraylist1 assert tltnode2 isa nullable TLt var pmethidnode1: nullable ALtMethid = new ALtMethid.init_altmethid( tltnode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction271 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tgtnode2 = nodearraylist1 assert tgtnode2 isa nullable TGt var pmethidnode1: nullable AGtMethid = new AGtMethid.init_agtmethid( tgtnode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction272 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tobranode2 = nodearraylist1 assert tobranode2 isa nullable TObra var tcbranode3 = nodearraylist2 assert tcbranode3 isa nullable TCbra var pmethidnode1: nullable ABraMethid = new ABraMethid.init_abramethid( tobranode2, tcbranode3 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction273 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tstarshipnode2 = nodearraylist1 assert tstarshipnode2 isa nullable TStarship var pmethidnode1: nullable AStarshipMethid = new AStarshipMethid.init_astarshipmethid( tstarshipnode2 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction274 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tidnode2 = nodearraylist1 assert tidnode2 isa nullable TId var tassignnode3 = nodearraylist2 assert tassignnode3 isa nullable TAssign var pmethidnode1: nullable AAssignMethid = new AAssignMethid.init_aassignmethid( tidnode2, tassignnode3 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction275 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tobranode2 = nodearraylist1 assert tobranode2 isa nullable TObra var tcbranode3 = nodearraylist2 assert tcbranode3 isa nullable TCbra var tassignnode4 = nodearraylist3 assert tassignnode4 isa nullable TAssign var pmethidnode1: nullable ABraassignMethid = new ABraassignMethid.init_abraassignmethid( tobranode2, tcbranode3, tassignnode4 ) node_list = pmethidnode1 p.push(p.go_to(14), node_list) end init do end end private class ReduceAction276 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var listnode5 = new Array[Object] var listnode4 = nodearraylist1 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode2, null, listnode5 ) node_list = psignaturenode1 p.push(p.go_to(15), node_list) end init do end end private class ReduceAction277 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode6 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end var listnode5 = nodearraylist2 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode3, null, listnode6 ) node_list = psignaturenode1 p.push(p.go_to(15), node_list) end init do end end private class ReduceAction278 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode2 = new Array[Object] var listnode5 = new Array[Object] var ptypenode3 = nodearraylist1 assert ptypenode3 isa nullable PType var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode2, ptypenode3, listnode5 ) node_list = psignaturenode1 p.push(p.go_to(15), node_list) end init do end end private class ReduceAction279 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode6 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end var ptypenode4 = nodearraylist2 assert ptypenode4 isa nullable PType var listnode5 = nodearraylist3 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode3, ptypenode4, listnode6 ) node_list = psignaturenode1 p.push(p.go_to(15), node_list) end init do end end private class ReduceAction280 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var listnode4 = new Array[Object] var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode2, null, listnode4 ) node_list = psignaturenode1 p.push(p.go_to(15), node_list) end init do end end private class ReduceAction281 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode5 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode3, null, listnode5 ) node_list = psignaturenode1 p.push(p.go_to(15), node_list) end init do end end private class ReduceAction282 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode2 = new Array[Object] var listnode4 = new Array[Object] var ptypenode3 = nodearraylist1 assert ptypenode3 isa nullable PType var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode2, ptypenode3, listnode4 ) node_list = psignaturenode1 p.push(p.go_to(15), node_list) end init do end end private class ReduceAction283 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode5 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end var ptypenode4 = nodearraylist2 assert ptypenode4 isa nullable PType var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode3, ptypenode4, listnode5 ) node_list = psignaturenode1 p.push(p.go_to(15), node_list) end init do end end private class ReduceAction284 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var listnode2 = new Array[Object] var listnode4 = new Array[Object] var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode2, null, listnode4 ) node_list = psignaturenode1 p.push(p.go_to(16), node_list) end init do end end private class ReduceAction285 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode5 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode3, null, listnode5 ) node_list = psignaturenode1 p.push(p.go_to(16), node_list) end init do end end private class ReduceAction286 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var listnode4 = new Array[Object] var ptypenode3 = nodearraylist1 assert ptypenode3 isa nullable PType var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode2, ptypenode3, listnode4 ) node_list = psignaturenode1 p.push(p.go_to(16), node_list) end init do end end private class ReduceAction287 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode5 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end var ptypenode4 = nodearraylist2 assert ptypenode4 isa nullable PType var psignaturenode1: nullable ASignature = new ASignature.init_asignature( listnode3, ptypenode4, listnode5 ) node_list = psignaturenode1 p.push(p.go_to(16), node_list) end init do end end private class ReduceAction288 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pparamnode1 = nodearraylist3 assert pparamnode1 isa nullable PParam if pparamnode1 != null then listnode2.add(pparamnode1) end node_list = listnode2 p.push(p.go_to(17), node_list) end init do end end private class ReduceAction289 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var pparamnode1 = nodearraylist3 assert pparamnode1 isa nullable PParam var listnode2 = nodearraylist4 assert listnode2 isa Array[Object] if pparamnode1 != null then listnode3.add(pparamnode1) end # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end node_list = listnode3 p.push(p.go_to(17), node_list) end init do end end private class ReduceAction290 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode1 = new Array[Object] node_list = listnode1 p.push(p.go_to(17), node_list) end init do end end private class ReduceAction291 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pparamnode1 = nodearraylist3 assert pparamnode1 isa nullable PParam node_list = pparamnode1 p.push(p.go_to(18), node_list) end init do end end private class ReduceAction292 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tidnode2 = nodearraylist1 assert tidnode2 isa nullable TId var pparamnode1: nullable AParam = new AParam.init_aparam( tidnode2, null, null ) node_list = pparamnode1 p.push(p.go_to(19), node_list) end init do end end private class ReduceAction293 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tidnode2 = nodearraylist1 assert tidnode2 isa nullable TId var ptypenode3 = nodearraylist2 assert ptypenode3 isa nullable PType var pparamnode1: nullable AParam = new AParam.init_aparam( tidnode2, ptypenode3, null ) node_list = pparamnode1 p.push(p.go_to(19), node_list) end init do end end private class ReduceAction294 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tidnode2 = nodearraylist1 assert tidnode2 isa nullable TId var ptypenode3 = nodearraylist2 assert ptypenode3 isa nullable PType var tdotdotdotnode4 = nodearraylist3 assert tdotdotdotnode4 isa nullable TDotdotdot var pparamnode1: nullable AParam = new AParam.init_aparam( tidnode2, ptypenode3, tdotdotdotnode4 ) node_list = pparamnode1 p.push(p.go_to(19), node_list) end init do end end private class ReduceAction295 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode2 = new Array[Object] var listnode1 = nodearraylist2 assert listnode1 isa Array[Object] # if listnode1 != null then if listnode2.is_empty then listnode2 = listnode1 else listnode2.append(listnode1) end # end node_list = listnode2 p.push(p.go_to(20), node_list) end init do end end private class ReduceAction296 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var tidnode4 = nodearraylist3 assert tidnode4 isa nullable TId var psignaturenode5 = nodearraylist4 assert psignaturenode5 isa nullable PSignature var pclosuredeclnode1: nullable AClosureDecl = new AClosureDecl.init_aclosuredecl( tkwwithnode2, null, tidnode4, psignaturenode5, null ) node_list = pclosuredeclnode1 p.push(p.go_to(21), node_list) end init do end end private class ReduceAction297 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var tkwbreaknode3 = nodearraylist2 assert tkwbreaknode3 isa nullable TKwbreak var tidnode4 = nodearraylist4 assert tidnode4 isa nullable TId var psignaturenode5 = nodearraylist5 assert psignaturenode5 isa nullable PSignature var pclosuredeclnode1: nullable AClosureDecl = new AClosureDecl.init_aclosuredecl( tkwwithnode2, tkwbreaknode3, tidnode4, psignaturenode5, null ) node_list = pclosuredeclnode1 p.push(p.go_to(21), node_list) end init do end end private class ReduceAction298 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var tidnode4 = nodearraylist3 assert tidnode4 isa nullable TId var psignaturenode5 = nodearraylist4 assert psignaturenode5 isa nullable PSignature var pexprnode6 = nodearraylist6 assert pexprnode6 isa nullable PExpr var pclosuredeclnode1: nullable AClosureDecl = new AClosureDecl.init_aclosuredecl( tkwwithnode2, null, tidnode4, psignaturenode5, pexprnode6 ) node_list = pclosuredeclnode1 p.push(p.go_to(21), node_list) end init do end end private class ReduceAction299 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var tkwbreaknode3 = nodearraylist2 assert tkwbreaknode3 isa nullable TKwbreak var tidnode4 = nodearraylist4 assert tidnode4 isa nullable TId var psignaturenode5 = nodearraylist5 assert psignaturenode5 isa nullable PSignature var pexprnode6 = nodearraylist7 assert pexprnode6 isa nullable PExpr var pclosuredeclnode1: nullable AClosureDecl = new AClosureDecl.init_aclosuredecl( tkwwithnode2, tkwbreaknode3, tidnode4, psignaturenode5, pexprnode6 ) node_list = pclosuredeclnode1 p.push(p.go_to(21), node_list) end init do end end private class ReduceAction300 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode4 = new Array[Object] var tclassidnode3 = nodearraylist1 assert tclassidnode3 isa nullable TClassid var ptypenode1: nullable AType = new AType.init_atype( null, tclassidnode3, listnode4 ) node_list = ptypenode1 p.push(p.go_to(22), node_list) end init do end end private class ReduceAction301 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var tkwnullablenode2 = nodearraylist1 assert tkwnullablenode2 isa nullable TKwnullable var tclassidnode3 = nodearraylist2 assert tclassidnode3 isa nullable TClassid var ptypenode1: nullable AType = new AType.init_atype( tkwnullablenode2, tclassidnode3, listnode4 ) node_list = ptypenode1 p.push(p.go_to(22), node_list) end init do end end private class ReduceAction302 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var tclassidnode3 = nodearraylist1 assert tclassidnode3 isa nullable TClassid var listnode4 = nodearraylist4 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var ptypenode1: nullable AType = new AType.init_atype( null, tclassidnode3, listnode5 ) node_list = ptypenode1 p.push(p.go_to(22), node_list) end init do end end private class ReduceAction303 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var tkwnullablenode2 = nodearraylist1 assert tkwnullablenode2 isa nullable TKwnullable var tclassidnode3 = nodearraylist2 assert tclassidnode3 isa nullable TClassid var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var ptypenode1: nullable AType = new AType.init_atype( tkwnullablenode2, tclassidnode3, listnode5 ) node_list = ptypenode1 p.push(p.go_to(22), node_list) end init do end end private class ReduceAction304 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var ptypenode1 = nodearraylist1 assert ptypenode1 isa nullable PType if ptypenode1 != null then listnode2.add(ptypenode1) end node_list = listnode2 p.push(p.go_to(23), node_list) end init do end end private class ReduceAction305 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var ptypenode1 = nodearraylist1 assert ptypenode1 isa nullable PType var listnode2 = nodearraylist2 assert listnode2 isa Array[Object] if ptypenode1 != null then listnode3.add(ptypenode1) end # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end node_list = listnode3 p.push(p.go_to(23), node_list) end init do end end private class ReduceAction306 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var ptypenode1 = nodearraylist3 assert ptypenode1 isa nullable PType node_list = ptypenode1 p.push(p.go_to(24), node_list) end init do end end private class ReduceAction307 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var ptypenode1 = nodearraylist3 assert ptypenode1 isa nullable PType node_list = ptypenode1 p.push(p.go_to(25), node_list) end init do end end private class ReduceAction308 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(26), node_list) end init do end end private class ReduceAction309 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var pexprnode2 = nodearraylist2 assert pexprnode2 isa nullable PExpr if pexprnode2 != null then listnode3.add(pexprnode2) end var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode3 ) node_list = pexprnode1 p.push(p.go_to(26), node_list) end init do end end private class ReduceAction310 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var pexprnode2 = nodearraylist2 assert pexprnode2 isa nullable PExpr var listnode3 = nodearraylist3 assert listnode3 isa Array[Object] if pexprnode2 != null then listnode4.add(pexprnode2) end # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode4 ) node_list = pexprnode1 p.push(p.go_to(26), node_list) end init do end end private class ReduceAction311 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode2 ) node_list = pexprnode1 p.push(p.go_to(26), node_list) end init do end end private class ReduceAction312 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode2 ) node_list = pexprnode1 p.push(p.go_to(26), node_list) end init do end end private class ReduceAction313 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode1 = nodearraylist2 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(27), node_list) end init do end end private class ReduceAction314 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction315 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction316 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwreturnnode2 = nodearraylist1 assert tkwreturnnode2 isa nullable TKwreturn var pexprnode1: nullable AReturnExpr = new AReturnExpr.init_areturnexpr( tkwreturnnode2, null ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction317 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwreturnnode2 = nodearraylist1 assert tkwreturnnode2 isa nullable TKwreturn var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AReturnExpr = new AReturnExpr.init_areturnexpr( tkwreturnnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction318 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwbreaknode2 = nodearraylist1 assert tkwbreaknode2 isa nullable TKwbreak var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr( tkwbreaknode2, null ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction319 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwbreaknode2 = nodearraylist1 assert tkwbreaknode2 isa nullable TKwbreak var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr( tkwbreaknode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction320 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwabortnode2 = nodearraylist1 assert tkwabortnode2 isa nullable TKwabort var pexprnode1: nullable AAbortExpr = new AAbortExpr.init_aabortexpr( tkwabortnode2 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction321 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwcontinuenode2 = nodearraylist1 assert tkwcontinuenode2 isa nullable TKwcontinue var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr( tkwcontinuenode2, null ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction322 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwcontinuenode2 = nodearraylist1 assert tkwcontinuenode2 isa nullable TKwcontinue var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr( tkwcontinuenode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction323 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction324 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction325 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction326 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction327 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction328 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode6 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction329 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode6 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction330 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist6 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction331 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction332 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var tkwsupernode3 = nodearraylist1 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( null, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction333 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pqualifiednode2 = nodearraylist1 assert pqualifiednode2 isa nullable PQualified var tkwsupernode3 = nodearraylist2 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist3 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( pqualifiednode2, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction334 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwinitnode3 = nodearraylist4 assert tkwinitnode3 isa nullable TKwinit var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr( pexprnode2, tkwinitnode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction335 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tkwinitnode3 = nodearraylist1 assert tkwinitnode3 isa nullable TKwinit var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr( pexprnode2, tkwinitnode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(28), node_list) end init do end end private class ReduceAction336 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pclosuredefnode1 = nodearraylist1 assert pclosuredefnode1 isa nullable PClosureDef if pclosuredefnode1 != null then listnode2.add(pclosuredefnode1) end node_list = listnode2 p.push(p.go_to(29), node_list) end init do end end private class ReduceAction337 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var pclosuredefnode1 = nodearraylist1 assert pclosuredefnode1 isa nullable PClosureDef var listnode2 = nodearraylist2 assert listnode2 isa Array[Object] if pclosuredefnode1 != null then listnode3.add(pclosuredefnode1) end # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end node_list = listnode3 p.push(p.go_to(29), node_list) end init do end end private class ReduceAction338 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var tkwdonode4 = nodearraylist2 assert tkwdonode4 isa nullable TKwdo var pexprnode5 = nodearraylist3 assert pexprnode5 isa nullable PExpr var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef( tkwwithnode2, listnode3, tkwdonode4, pexprnode5 ) node_list = pclosuredefnode1 p.push(p.go_to(30), node_list) end init do end end private class ReduceAction339 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var tkwdonode5 = nodearraylist3 assert tkwdonode5 isa nullable TKwdo var pexprnode6 = nodearraylist4 assert pexprnode6 isa nullable PExpr var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef( tkwwithnode2, listnode4, tkwdonode5, pexprnode6 ) node_list = pclosuredefnode1 p.push(p.go_to(30), node_list) end init do end end private class ReduceAction340 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var tkwdonode4 = nodearraylist2 assert tkwdonode4 isa nullable TKwdo var listnode7 = new Array[Object] var pexprnode6 = nodearraylist4 assert pexprnode6 isa nullable PExpr if pexprnode6 != null then listnode7.add(pexprnode6) end var pexprnode5: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode7 ) var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef( tkwwithnode2, listnode3, tkwdonode4, pexprnode5 ) node_list = pclosuredefnode1 p.push(p.go_to(31), node_list) end init do end end private class ReduceAction341 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var tkwdonode4 = nodearraylist2 assert tkwdonode4 isa nullable TKwdo var listnode8 = new Array[Object] var pexprnode6 = nodearraylist4 assert pexprnode6 isa nullable PExpr var listnode7 = nodearraylist5 assert listnode7 isa Array[Object] if pexprnode6 != null then listnode8.add(pexprnode6) end # if listnode7 != null then if listnode8.is_empty then listnode8 = listnode7 else listnode8.append(listnode7) end # end var pexprnode5: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode8 ) var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef( tkwwithnode2, listnode3, tkwdonode4, pexprnode5 ) node_list = pclosuredefnode1 p.push(p.go_to(31), node_list) end init do end end private class ReduceAction342 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var tkwdonode5 = nodearraylist3 assert tkwdonode5 isa nullable TKwdo var listnode8 = new Array[Object] var pexprnode7 = nodearraylist5 assert pexprnode7 isa nullable PExpr if pexprnode7 != null then listnode8.add(pexprnode7) end var pexprnode6: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode8 ) var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef( tkwwithnode2, listnode4, tkwdonode5, pexprnode6 ) node_list = pclosuredefnode1 p.push(p.go_to(31), node_list) end init do end end private class ReduceAction343 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var tkwdonode5 = nodearraylist3 assert tkwdonode5 isa nullable TKwdo var listnode9 = new Array[Object] var pexprnode7 = nodearraylist5 assert pexprnode7 isa nullable PExpr var listnode8 = nodearraylist6 assert listnode8 isa Array[Object] if pexprnode7 != null then listnode9.add(pexprnode7) end # if listnode8 != null then if listnode9.is_empty then listnode9 = listnode8 else listnode9.append(listnode8) end # end var pexprnode6: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode9 ) var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef( tkwwithnode2, listnode4, tkwdonode5, pexprnode6 ) node_list = pclosuredefnode1 p.push(p.go_to(31), node_list) end init do end end private class ReduceAction344 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var tkwdonode4 = nodearraylist2 assert tkwdonode4 isa nullable TKwdo var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef( tkwwithnode2, listnode3, tkwdonode4, null ) node_list = pclosuredefnode1 p.push(p.go_to(31), node_list) end init do end end private class ReduceAction345 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var tkwdonode5 = nodearraylist3 assert tkwdonode5 isa nullable TKwdo var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef( tkwwithnode2, listnode4, tkwdonode5, null ) node_list = pclosuredefnode1 p.push(p.go_to(31), node_list) end init do end end private class ReduceAction346 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwvarnode2 = nodearraylist1 assert tkwvarnode2 isa nullable TKwvar var tidnode3 = nodearraylist2 assert tidnode3 isa nullable TId var pexprnode1: nullable AVardeclExpr = new AVardeclExpr.init_avardeclexpr( tkwvarnode2, tidnode3, null, null, null ) node_list = pexprnode1 p.push(p.go_to(32), node_list) end init do end end private class ReduceAction347 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwvarnode2 = nodearraylist1 assert tkwvarnode2 isa nullable TKwvar var tidnode3 = nodearraylist2 assert tidnode3 isa nullable TId var ptypenode4 = nodearraylist3 assert ptypenode4 isa nullable PType var pexprnode1: nullable AVardeclExpr = new AVardeclExpr.init_avardeclexpr( tkwvarnode2, tidnode3, ptypenode4, null, null ) node_list = pexprnode1 p.push(p.go_to(32), node_list) end init do end end private class ReduceAction348 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwvarnode2 = nodearraylist1 assert tkwvarnode2 isa nullable TKwvar var tidnode3 = nodearraylist2 assert tidnode3 isa nullable TId var tassignnode5 = nodearraylist3 assert tassignnode5 isa nullable TAssign var pexprnode6 = nodearraylist5 assert pexprnode6 isa nullable PExpr var pexprnode1: nullable AVardeclExpr = new AVardeclExpr.init_avardeclexpr( tkwvarnode2, tidnode3, null, tassignnode5, pexprnode6 ) node_list = pexprnode1 p.push(p.go_to(32), node_list) end init do end end private class ReduceAction349 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwvarnode2 = nodearraylist1 assert tkwvarnode2 isa nullable TKwvar var tidnode3 = nodearraylist2 assert tidnode3 isa nullable TId var ptypenode4 = nodearraylist3 assert ptypenode4 isa nullable PType var tassignnode5 = nodearraylist4 assert tassignnode5 isa nullable TAssign var pexprnode6 = nodearraylist6 assert pexprnode6 isa nullable PExpr var pexprnode1: nullable AVardeclExpr = new AVardeclExpr.init_avardeclexpr( tkwvarnode2, tidnode3, ptypenode4, tassignnode5, pexprnode6 ) node_list = pexprnode1 p.push(p.go_to(32), node_list) end init do end end private class ReduceAction350 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tattridnode3 = nodearraylist4 assert tattridnode3 isa nullable TAttrid var tassignnode4 = nodearraylist5 assert tassignnode4 isa nullable TAssign var pexprnode5 = nodearraylist6 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AAttrAssignExpr = new AAttrAssignExpr.init_aattrassignexpr( pexprnode2, tattridnode3, tassignnode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(33), node_list) end init do end end private class ReduceAction351 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tattridnode3 = nodearraylist1 assert tattridnode3 isa nullable TAttrid var tassignnode4 = nodearraylist2 assert tassignnode4 isa nullable TAssign var pexprnode5 = nodearraylist3 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AAttrAssignExpr = new AAttrAssignExpr.init_aattrassignexpr( pexprnode2, tattridnode3, tassignnode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(33), node_list) end init do end end private class ReduceAction352 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var tassignnode6 = nodearraylist6 assert tassignnode6 isa nullable TAssign var pexprnode7 = nodearraylist7 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable ACallAssignExpr = new ACallAssignExpr.init_acallassignexpr( pexprnode2, tidnode3, listnode5, tassignnode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(33), node_list) end init do end end private class ReduceAction353 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var tassignnode6 = nodearraylist3 assert tassignnode6 isa nullable TAssign var pexprnode7 = nodearraylist4 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable ACallAssignExpr = new ACallAssignExpr.init_acallassignexpr( pexprnode2, tidnode3, listnode5, tassignnode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(33), node_list) end init do end end private class ReduceAction354 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var tassignnode5 = nodearraylist3 assert tassignnode5 isa nullable TAssign var pexprnode6 = nodearraylist4 assert pexprnode6 isa nullable PExpr var pexprnode1: nullable ABraAssignExpr = new ABraAssignExpr.init_abraassignexpr( pexprnode2, listnode4, tassignnode5, pexprnode6 ) node_list = pexprnode1 p.push(p.go_to(33), node_list) end init do end end private class ReduceAction355 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tattridnode3 = nodearraylist4 assert tattridnode3 isa nullable TAttrid var passignopnode4 = nodearraylist5 assert passignopnode4 isa nullable PAssignOp var pexprnode5 = nodearraylist6 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AAttrReassignExpr = new AAttrReassignExpr.init_aattrreassignexpr( pexprnode2, tattridnode3, passignopnode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(33), node_list) end init do end end private class ReduceAction356 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tattridnode3 = nodearraylist1 assert tattridnode3 isa nullable TAttrid var passignopnode4 = nodearraylist2 assert passignopnode4 isa nullable PAssignOp var pexprnode5 = nodearraylist3 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AAttrReassignExpr = new AAttrReassignExpr.init_aattrreassignexpr( pexprnode2, tattridnode3, passignopnode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(33), node_list) end init do end end private class ReduceAction357 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var passignopnode6 = nodearraylist6 assert passignopnode6 isa nullable PAssignOp var pexprnode7 = nodearraylist7 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable ACallReassignExpr = new ACallReassignExpr.init_acallreassignexpr( pexprnode2, tidnode3, listnode5, passignopnode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(33), node_list) end init do end end private class ReduceAction358 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var passignopnode6 = nodearraylist3 assert passignopnode6 isa nullable PAssignOp var pexprnode7 = nodearraylist4 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable ACallReassignExpr = new ACallReassignExpr.init_acallreassignexpr( pexprnode2, tidnode3, listnode5, passignopnode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(33), node_list) end init do end end private class ReduceAction359 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var passignopnode5 = nodearraylist3 assert passignopnode5 isa nullable PAssignOp var pexprnode6 = nodearraylist4 assert pexprnode6 isa nullable PExpr var pexprnode1: nullable ABraReassignExpr = new ABraReassignExpr.init_abrareassignexpr( pexprnode2, listnode4, passignopnode5, pexprnode6 ) node_list = pexprnode1 p.push(p.go_to(33), node_list) end init do end end private class ReduceAction360 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tpluseqnode2 = nodearraylist1 assert tpluseqnode2 isa nullable TPluseq var passignopnode1: nullable APlusAssignOp = new APlusAssignOp.init_aplusassignop( tpluseqnode2 ) node_list = passignopnode1 p.push(p.go_to(34), node_list) end init do end end private class ReduceAction361 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tminuseqnode2 = nodearraylist1 assert tminuseqnode2 isa nullable TMinuseq var passignopnode1: nullable AMinusAssignOp = new AMinusAssignOp.init_aminusassignop( tminuseqnode2 ) node_list = passignopnode1 p.push(p.go_to(34), node_list) end init do end end private class ReduceAction362 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwdonode2 = nodearraylist1 assert tkwdonode2 isa nullable TKwdo var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ADoExpr = new ADoExpr.init_adoexpr( tkwdonode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(35), node_list) end init do end end private class ReduceAction363 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwifnode2 = nodearraylist1 assert tkwifnode2 isa nullable TKwif var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode4 = nodearraylist6 assert pexprnode4 isa nullable PExpr var pexprnode5 = nodearraylist8 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AIfExpr = new AIfExpr.init_aifexpr( tkwifnode2, pexprnode3, pexprnode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(36), node_list) end init do end end private class ReduceAction364 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwifnode2 = nodearraylist1 assert tkwifnode2 isa nullable TKwif var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode4 = nodearraylist6 assert pexprnode4 isa nullable PExpr var pexprnode1: nullable AIfExpr = new AIfExpr.init_aifexpr( tkwifnode2, pexprnode3, pexprnode4, null ) node_list = pexprnode1 p.push(p.go_to(36), node_list) end init do end end private class ReduceAction365 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwifnode2 = nodearraylist1 assert tkwifnode2 isa nullable TKwif var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var listnode6 = new Array[Object] var pexprnode5 = nodearraylist7 assert pexprnode5 isa nullable PExpr if pexprnode5 != null then listnode6.add(pexprnode5) end var pexprnode4: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode6 ) var pexprnode7 = nodearraylist9 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable AIfExpr = new AIfExpr.init_aifexpr( tkwifnode2, pexprnode3, pexprnode4, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(36), node_list) end init do end end private class ReduceAction366 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwifnode2 = nodearraylist1 assert tkwifnode2 isa nullable TKwif var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var listnode7 = new Array[Object] var pexprnode5 = nodearraylist7 assert pexprnode5 isa nullable PExpr var listnode6 = nodearraylist8 assert listnode6 isa Array[Object] if pexprnode5 != null then listnode7.add(pexprnode5) end # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode4: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode7 ) var pexprnode8 = nodearraylist10 assert pexprnode8 isa nullable PExpr var pexprnode1: nullable AIfExpr = new AIfExpr.init_aifexpr( tkwifnode2, pexprnode3, pexprnode4, pexprnode8 ) node_list = pexprnode1 p.push(p.go_to(36), node_list) end init do end end private class ReduceAction367 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwifnode2 = nodearraylist1 assert tkwifnode2 isa nullable TKwif var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode5 = nodearraylist6 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AIfExpr = new AIfExpr.init_aifexpr( tkwifnode2, pexprnode3, null, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(36), node_list) end init do end end private class ReduceAction368 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwifnode2 = nodearraylist1 assert tkwifnode2 isa nullable TKwif var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode5 = nodearraylist7 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AIfExpr = new AIfExpr.init_aifexpr( tkwifnode2, pexprnode3, null, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(36), node_list) end init do end end private class ReduceAction369 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode1 = nodearraylist2 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(37), node_list) end init do end end private class ReduceAction370 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop node_list = null p.push(p.go_to(37), node_list) end init do end end private class ReduceAction371 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwwhilenode2 = nodearraylist1 assert tkwwhilenode2 isa nullable TKwwhile var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var tkwdonode4 = nodearraylist5 assert tkwdonode4 isa nullable TKwdo var pexprnode5 = nodearraylist6 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AWhileExpr = new AWhileExpr.init_awhileexpr( tkwwhilenode2, pexprnode3, tkwdonode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(38), node_list) end init do end end private class ReduceAction372 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwfornode2 = nodearraylist1 assert tkwfornode2 isa nullable TKwfor var tidnode3 = nodearraylist3 assert tidnode3 isa nullable TId var pexprnode4 = nodearraylist7 assert pexprnode4 isa nullable PExpr var tkwdonode5 = nodearraylist9 assert tkwdonode5 isa nullable TKwdo var pexprnode6 = nodearraylist10 assert pexprnode6 isa nullable PExpr var pexprnode1: nullable AForExpr = new AForExpr.init_aforexpr( tkwfornode2, tidnode3, pexprnode4, tkwdonode5, pexprnode6 ) node_list = pexprnode1 p.push(p.go_to(39), node_list) end init do end end private class ReduceAction373 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwassertnode2 = nodearraylist1 assert tkwassertnode2 isa nullable TKwassert var pexprnode4 = nodearraylist2 assert pexprnode4 isa nullable PExpr var pexprnode1: nullable AAssertExpr = new AAssertExpr.init_aassertexpr( tkwassertnode2, null, pexprnode4 ) node_list = pexprnode1 p.push(p.go_to(40), node_list) end init do end end private class ReduceAction374 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwassertnode2 = nodearraylist1 assert tkwassertnode2 isa nullable TKwassert var tidnode3 = nodearraylist2 assert tidnode3 isa nullable TId var pexprnode4 = nodearraylist3 assert pexprnode4 isa nullable PExpr var pexprnode1: nullable AAssertExpr = new AAssertExpr.init_aassertexpr( tkwassertnode2, tidnode3, pexprnode4 ) node_list = pexprnode1 p.push(p.go_to(40), node_list) end init do end end private class ReduceAction375 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tidnode1 = nodearraylist1 assert tidnode1 isa nullable TId node_list = tidnode1 p.push(p.go_to(41), node_list) end init do end end private class ReduceAction376 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(42), node_list) end init do end end private class ReduceAction377 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist6 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(42), node_list) end init do end end private class ReduceAction378 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(42), node_list) end init do end end private class ReduceAction379 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist3 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pexprnode1: nullable ABraExpr = new ABraExpr.init_abraexpr( pexprnode2, listnode4, listnode6 ) node_list = pexprnode1 p.push(p.go_to(42), node_list) end init do end end private class ReduceAction380 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(43), node_list) end init do end end private class ReduceAction381 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwifnode2 = nodearraylist1 assert tkwifnode2 isa nullable TKwif var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var tkwthennode4 = nodearraylist5 assert tkwthennode4 isa nullable TKwthen var pexprnode5 = nodearraylist7 assert pexprnode5 isa nullable PExpr var tkwelsenode6 = nodearraylist9 assert tkwelsenode6 isa nullable TKwelse var pexprnode7 = nodearraylist11 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable AIfexprExpr = new AIfexprExpr.init_aifexprexpr( tkwifnode2, pexprnode3, tkwthennode4, pexprnode5, tkwelsenode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(43), node_list) end init do end end private class ReduceAction382 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(44), node_list) end init do end end private class ReduceAction383 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AOrExpr = new AOrExpr.init_aorexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(44), node_list) end init do end end private class ReduceAction384 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AAndExpr = new AAndExpr.init_aandexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(44), node_list) end init do end end private class ReduceAction385 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(45), node_list) end init do end end private class ReduceAction386 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwnotnode2 = nodearraylist1 assert tkwnotnode2 isa nullable TKwnot var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ANotExpr = new ANotExpr.init_anotexpr( tkwnotnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(45), node_list) end init do end end private class ReduceAction387 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(46), node_list) end init do end end private class ReduceAction388 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AEqExpr = new AEqExpr.init_aeqexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(46), node_list) end init do end end private class ReduceAction389 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AEeExpr = new AEeExpr.init_aeeexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(46), node_list) end init do end end private class ReduceAction390 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ANeExpr = new ANeExpr.init_aneexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(46), node_list) end init do end end private class ReduceAction391 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ALtExpr = new ALtExpr.init_altexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(46), node_list) end init do end end private class ReduceAction392 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ALeExpr = new ALeExpr.init_aleexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(46), node_list) end init do end end private class ReduceAction393 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AGtExpr = new AGtExpr.init_agtexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(46), node_list) end init do end end private class ReduceAction394 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AGeExpr = new AGeExpr.init_ageexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(46), node_list) end init do end end private class ReduceAction395 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AStarshipExpr = new AStarshipExpr.init_astarshipexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(46), node_list) end init do end end private class ReduceAction396 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var ptypenode3 = nodearraylist4 assert ptypenode3 isa nullable PType var pexprnode1: nullable AIsaExpr = new AIsaExpr.init_aisaexpr( pexprnode2, ptypenode3 ) node_list = pexprnode1 p.push(p.go_to(46), node_list) end init do end end private class ReduceAction397 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(47), node_list) end init do end end private class ReduceAction398 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable APlusExpr = new APlusExpr.init_aplusexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(47), node_list) end init do end end private class ReduceAction399 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AMinusExpr = new AMinusExpr.init_aminusexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(47), node_list) end init do end end private class ReduceAction400 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(48), node_list) end init do end end private class ReduceAction401 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AStarExpr = new AStarExpr.init_astarexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(48), node_list) end init do end end private class ReduceAction402 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ASlashExpr = new ASlashExpr.init_aslashexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(48), node_list) end init do end end private class ReduceAction403 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable APercentExpr = new APercentExpr.init_apercentexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(48), node_list) end init do end end private class ReduceAction404 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(49), node_list) end init do end end private class ReduceAction405 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tminusnode2 = nodearraylist1 assert tminusnode2 isa nullable TMinus var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AUminusExpr = new AUminusExpr.init_auminusexpr( tminusnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(49), node_list) end init do end end private class ReduceAction406 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwoncenode2 = nodearraylist1 assert tkwoncenode2 isa nullable TKwonce var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AOnceExpr = new AOnceExpr.init_aonceexpr( tkwoncenode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(49), node_list) end init do end end private class ReduceAction407 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(50), node_list) end init do end end private class ReduceAction408 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode6 = new Array[Object] var tkwnewnode2 = nodearraylist1 assert tkwnewnode2 isa nullable TKwnew var ptypenode3 = nodearraylist3 assert ptypenode3 isa nullable PType var listnode5 = nodearraylist4 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pexprnode1: nullable ANewExpr = new ANewExpr.init_anewexpr( tkwnewnode2, ptypenode3, null, listnode6 ) node_list = pexprnode1 p.push(p.go_to(50), node_list) end init do end end private class ReduceAction409 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwissetnode2 = nodearraylist1 assert tkwissetnode2 isa nullable TKwisset var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var tattridnode4 = nodearraylist5 assert tattridnode4 isa nullable TAttrid var pexprnode1: nullable AIssetAttrExpr = new AIssetAttrExpr.init_aissetattrexpr( tkwissetnode2, pexprnode3, tattridnode4 ) node_list = pexprnode1 p.push(p.go_to(50), node_list) end init do end end private class ReduceAction410 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwissetnode2 = nodearraylist1 assert tkwissetnode2 isa nullable TKwisset var pexprnode3: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tattridnode4 = nodearraylist2 assert tattridnode4 isa nullable TAttrid var pexprnode1: nullable AIssetAttrExpr = new AIssetAttrExpr.init_aissetattrexpr( tkwissetnode2, pexprnode3, tattridnode4 ) node_list = pexprnode1 p.push(p.go_to(50), node_list) end init do end end private class ReduceAction411 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tattridnode3 = nodearraylist4 assert tattridnode3 isa nullable TAttrid var pexprnode1: nullable AAttrExpr = new AAttrExpr.init_aattrexpr( pexprnode2, tattridnode3 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction412 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tattridnode3 = nodearraylist1 assert tattridnode3 isa nullable TAttrid var pexprnode1: nullable AAttrExpr = new AAttrExpr.init_aattrexpr( pexprnode2, tattridnode3 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction413 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode6 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction414 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode6 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction415 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var tkwsupernode3 = nodearraylist1 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( null, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction416 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pqualifiednode2 = nodearraylist1 assert pqualifiednode2 isa nullable PQualified var tkwsupernode3 = nodearraylist2 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist3 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( pqualifiednode2, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction417 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwinitnode3 = nodearraylist4 assert tkwinitnode3 isa nullable TKwinit var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr( pexprnode2, tkwinitnode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction418 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tkwinitnode3 = nodearraylist1 assert tkwinitnode3 isa nullable TKwinit var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr( pexprnode2, tkwinitnode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction419 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode5 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var pexprnode1: nullable ABraExpr = new ABraExpr.init_abraexpr( pexprnode2, listnode4, listnode5 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction420 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode6 = new Array[Object] var tkwnewnode2 = nodearraylist1 assert tkwnewnode2 isa nullable TKwnew var ptypenode3 = nodearraylist3 assert ptypenode3 isa nullable PType var tidnode4 = nodearraylist6 assert tidnode4 isa nullable TId var listnode5 = nodearraylist7 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pexprnode1: nullable ANewExpr = new ANewExpr.init_anewexpr( tkwnewnode2, ptypenode3, tidnode4, listnode6 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction421 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist3 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist7 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ACrangeExpr = new ACrangeExpr.init_acrangeexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction422 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist3 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist7 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AOrangeExpr = new AOrangeExpr.init_aorangeexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction423 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end var pexprnode1: nullable AArrayExpr = new AArrayExpr.init_aarrayexpr( listnode3 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction424 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwselfnode2 = nodearraylist1 assert tkwselfnode2 isa nullable TKwself var pexprnode1: nullable ASelfExpr = new ASelfExpr.init_aselfexpr( tkwselfnode2 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction425 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwtruenode2 = nodearraylist1 assert tkwtruenode2 isa nullable TKwtrue var pexprnode1: nullable ATrueExpr = new ATrueExpr.init_atrueexpr( tkwtruenode2 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction426 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwfalsenode2 = nodearraylist1 assert tkwfalsenode2 isa nullable TKwfalse var pexprnode1: nullable AFalseExpr = new AFalseExpr.init_afalseexpr( tkwfalsenode2 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction427 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwnullnode2 = nodearraylist1 assert tkwnullnode2 isa nullable TKwnull var pexprnode1: nullable ANullExpr = new ANullExpr.init_anullexpr( tkwnullnode2 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction428 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tnumbernode2 = nodearraylist1 assert tnumbernode2 isa nullable TNumber var pexprnode1: nullable AIntExpr = new AIntExpr.init_aintexpr( tnumbernode2 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction429 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tfloatnode2 = nodearraylist1 assert tfloatnode2 isa nullable TFloat var pexprnode1: nullable AFloatExpr = new AFloatExpr.init_afloatexpr( tfloatnode2 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction430 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tcharnode2 = nodearraylist1 assert tcharnode2 isa nullable TChar var pexprnode1: nullable ACharExpr = new ACharExpr.init_acharexpr( tcharnode2 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction431 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tstringnode2 = nodearraylist1 assert tstringnode2 isa nullable TString var pexprnode1: nullable AStringExpr = new AStringExpr.init_astringexpr( tstringnode2 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction432 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction433 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode1 = nodearraylist2 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction434 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwasnode3 = nodearraylist4 assert tkwasnode3 isa nullable TKwas var ptypenode4 = nodearraylist8 assert ptypenode4 isa nullable PType var pexprnode1: nullable AAsCastExpr = new AAsCastExpr.init_aascastexpr( pexprnode2, tkwasnode3, ptypenode4 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction435 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwasnode3 = nodearraylist4 assert tkwasnode3 isa nullable TKwas var tkwnotnode4 = nodearraylist8 assert tkwnotnode4 isa nullable TKwnot var tkwnullnode5 = nodearraylist10 assert tkwnullnode5 isa nullable TKwnull var pexprnode1: nullable AAsNotnullExpr = new AAsNotnullExpr.init_aasnotnullexpr( pexprnode2, tkwasnode3, tkwnotnode4, tkwnullnode5 ) node_list = pexprnode1 p.push(p.go_to(51), node_list) end init do end end private class ReduceAction436 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr # if listnode2 != null then if listnode4.is_empty then listnode4 = listnode2 else listnode4.append(listnode2) end # end if pexprnode3 != null then listnode4.add(pexprnode3) end var pexprnode1: nullable ASuperstringExpr = new ASuperstringExpr.init_asuperstringexpr( listnode4 ) node_list = pexprnode1 p.push(p.go_to(52), node_list) end init do end end private class ReduceAction437 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] var pexprnode4 = nodearraylist3 assert pexprnode4 isa nullable PExpr # if listnode2 != null then if listnode5.is_empty then listnode5 = listnode2 else listnode5.append(listnode2) end # end # if listnode3 != null then if listnode5.is_empty then listnode5 = listnode3 else listnode5.append(listnode3) end # end if pexprnode4 != null then listnode5.add(pexprnode4) end var pexprnode1: nullable ASuperstringExpr = new ASuperstringExpr.init_asuperstringexpr( listnode5 ) node_list = pexprnode1 p.push(p.go_to(52), node_list) end init do end end private class ReduceAction438 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr var pexprnode2 = nodearraylist3 assert pexprnode2 isa nullable PExpr if pexprnode1 != null then listnode3.add(pexprnode1) end if pexprnode2 != null then listnode3.add(pexprnode2) end node_list = listnode3 p.push(p.go_to(53), node_list) end init do end end private class ReduceAction439 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tstartstringnode2 = nodearraylist1 assert tstartstringnode2 isa nullable TStartString var pexprnode1: nullable AStartStringExpr = new AStartStringExpr.init_astartstringexpr( tstartstringnode2 ) node_list = pexprnode1 p.push(p.go_to(54), node_list) end init do end end private class ReduceAction440 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr var pexprnode2 = nodearraylist3 assert pexprnode2 isa nullable PExpr if pexprnode1 != null then listnode3.add(pexprnode1) end if pexprnode2 != null then listnode3.add(pexprnode2) end node_list = listnode3 p.push(p.go_to(55), node_list) end init do end end private class ReduceAction441 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tmidstringnode2 = nodearraylist1 assert tmidstringnode2 isa nullable TMidString var pexprnode1: nullable AMidStringExpr = new AMidStringExpr.init_amidstringexpr( tmidstringnode2 ) node_list = pexprnode1 p.push(p.go_to(56), node_list) end init do end end private class ReduceAction442 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tendstringnode2 = nodearraylist1 assert tendstringnode2 isa nullable TEndString var pexprnode1: nullable AEndStringExpr = new AEndStringExpr.init_aendstringexpr( tendstringnode2 ) node_list = pexprnode1 p.push(p.go_to(57), node_list) end init do end end private class ReduceAction443 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pexprnode1 = nodearraylist3 assert pexprnode1 isa nullable PExpr if pexprnode1 != null then listnode2.add(pexprnode1) end node_list = listnode2 p.push(p.go_to(58), node_list) end init do end end private class ReduceAction444 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var pexprnode1 = nodearraylist3 assert pexprnode1 isa nullable PExpr var listnode2 = nodearraylist5 assert listnode2 isa Array[Object] if pexprnode1 != null then listnode3.add(pexprnode1) end # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end node_list = listnode3 p.push(p.go_to(58), node_list) end init do end end private class ReduceAction445 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode1 = new Array[Object] node_list = listnode1 p.push(p.go_to(58), node_list) end init do end end private class ReduceAction446 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var listnode1 = new Array[Object] node_list = listnode1 p.push(p.go_to(58), node_list) end init do end end private class ReduceAction447 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pexprnode1 = nodearraylist3 assert pexprnode1 isa nullable PExpr if pexprnode1 != null then listnode2.add(pexprnode1) end node_list = listnode2 p.push(p.go_to(59), node_list) end init do end end private class ReduceAction448 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var pexprnode1 = nodearraylist3 assert pexprnode1 isa nullable PExpr var listnode2 = nodearraylist5 assert listnode2 isa Array[Object] if pexprnode1 != null then listnode3.add(pexprnode1) end # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end node_list = listnode3 p.push(p.go_to(59), node_list) end init do end end private class ReduceAction449 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr if pexprnode1 != null then listnode2.add(pexprnode1) end node_list = listnode2 p.push(p.go_to(59), node_list) end init do end end private class ReduceAction450 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode1 = new Array[Object] node_list = listnode1 p.push(p.go_to(59), node_list) end init do end end private class ReduceAction451 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var listnode1 = new Array[Object] node_list = listnode1 p.push(p.go_to(59), node_list) end init do end end private class ReduceAction452 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pexprnode1 = nodearraylist3 assert pexprnode1 isa nullable PExpr if pexprnode1 != null then listnode2.add(pexprnode1) end node_list = listnode2 p.push(p.go_to(60), node_list) end init do end end private class ReduceAction453 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var pexprnode1 = nodearraylist3 assert pexprnode1 isa nullable PExpr var listnode2 = nodearraylist5 assert listnode2 isa Array[Object] if pexprnode1 != null then listnode3.add(pexprnode1) end # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end node_list = listnode3 p.push(p.go_to(60), node_list) end init do end end private class ReduceAction454 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode1 = nodearraylist3 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(61), node_list) end init do end end private class ReduceAction455 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var tidnode1 = nodearraylist1 assert tidnode1 isa nullable TId if tidnode1 != null then listnode2.add(tidnode1) end node_list = listnode2 p.push(p.go_to(62), node_list) end init do end end private class ReduceAction456 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var tidnode2 = nodearraylist5 assert tidnode2 isa nullable TId # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if tidnode2 != null then listnode3.add(tidnode2) end node_list = listnode3 p.push(p.go_to(62), node_list) end init do end end private class ReduceAction457 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var tclassidnode3 = nodearraylist1 assert tclassidnode3 isa nullable TClassid var pqualifiednode1: nullable AQualified = new AQualified.init_aqualified( listnode2, tclassidnode3 ) node_list = pqualifiednode1 p.push(p.go_to(63), node_list) end init do end end private class ReduceAction458 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end var tclassidnode4 = nodearraylist2 assert tclassidnode4 isa nullable TClassid var pqualifiednode1: nullable AQualified = new AQualified.init_aqualified( listnode3, tclassidnode4 ) node_list = pqualifiednode1 p.push(p.go_to(63), node_list) end init do end end private class ReduceAction459 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end var pqualifiednode1: nullable AQualified = new AQualified.init_aqualified( listnode3, null ) node_list = pqualifiednode1 p.push(p.go_to(63), node_list) end init do end end private class ReduceAction460 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tidnode1 = nodearraylist1 assert tidnode1 isa nullable TId node_list = tidnode1 p.push(p.go_to(64), node_list) end init do end end private class ReduceAction461 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tclassidnode1 = nodearraylist1 assert tclassidnode1 isa nullable TClassid node_list = tclassidnode1 p.push(p.go_to(65), node_list) end init do end end private class ReduceAction462 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop p.push(p.go_to(66), node_list) end init do end end private class ReduceAction463 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop p.push(p.go_to(66), node_list) end init do end end private class ReduceAction464 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode2 = nodearraylist1 assert listnode2 isa Array[Object] # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end var pdocnode1: nullable ADoc = new ADoc.init_adoc( listnode3 ) node_list = pdocnode1 p.push(p.go_to(67), node_list) end init do end end private class ReduceAction465 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode2 = nodearraylist2 assert listnode2 isa Array[Object] # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end var pdocnode1: nullable ADoc = new ADoc.init_adoc( listnode3 ) node_list = pdocnode1 p.push(p.go_to(67), node_list) end init do end end private class ReduceAction466 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop node_list = null p.push(p.go_to(67), node_list) end init do end end private class ReduceAction467 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null node_list = null p.push(p.go_to(68), node_list) end init do end end private class ReduceAction468 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pdocnode1 = nodearraylist1 assert pdocnode1 isa nullable PDoc node_list = pdocnode1 p.push(p.go_to(68), node_list) end init do end end private class ReduceAction469 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop p.push(p.go_to(69), node_list) end init do end end private class ReduceAction470 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop p.push(p.go_to(69), node_list) end init do end end private class ReduceAction471 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop p.push(p.go_to(69), node_list) end init do end end private class ReduceAction472 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var ppropdefnode1 = nodearraylist1 assert ppropdefnode1 isa nullable PPropdef node_list = ppropdefnode1 p.push(p.go_to(70), node_list) end init do end end private class ReduceAction473 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist3 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist7 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteMethPropdef = new AConcreteMethPropdef.init_aconcretemethpropdef( pdocnode2, null, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(71), node_list) end init do end end private class ReduceAction474 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist4 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist8 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteMethPropdef = new AConcreteMethPropdef.init_aconcretemethpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(71), node_list) end init do end end private class ReduceAction475 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist3 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist7 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteMethPropdef = new AConcreteMethPropdef.init_aconcretemethpropdef( pdocnode2, null, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(71), node_list) end init do end end private class ReduceAction476 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist4 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var pexprnode8 = nodearraylist8 assert pexprnode8 isa nullable PExpr var ppropdefnode1: nullable AConcreteMethPropdef = new AConcreteMethPropdef.init_aconcretemethpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, pexprnode8 ) node_list = ppropdefnode1 p.push(p.go_to(71), node_list) end init do end end private class ReduceAction477 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist3 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var ppropdefnode1: nullable AExternMethPropdef = new AExternMethPropdef.init_aexternmethpropdef( pdocnode2, null, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, null ) node_list = ppropdefnode1 p.push(p.go_to(71), node_list) end init do end end private class ReduceAction478 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist4 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var ppropdefnode1: nullable AExternMethPropdef = new AExternMethPropdef.init_aexternmethpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, null ) node_list = ppropdefnode1 p.push(p.go_to(71), node_list) end init do end end private class ReduceAction479 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var pvisibilitynode4 = nodearraylist2 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist3 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist4 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist5 assert psignaturenode7 isa nullable PSignature var tstringnode8 = nodearraylist8 assert tstringnode8 isa nullable TString var ppropdefnode1: nullable AExternMethPropdef = new AExternMethPropdef.init_aexternmethpropdef( pdocnode2, null, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, tstringnode8 ) node_list = ppropdefnode1 p.push(p.go_to(71), node_list) end init do end end private class ReduceAction480 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pdocnode2 = nodearraylist1 assert pdocnode2 isa nullable PDoc var tkwredefnode3 = nodearraylist2 assert tkwredefnode3 isa nullable TKwredef var pvisibilitynode4 = nodearraylist3 assert pvisibilitynode4 isa nullable PVisibility var tkwmethnode5 = nodearraylist4 assert tkwmethnode5 isa nullable TKwmeth var pmethidnode6 = nodearraylist5 assert pmethidnode6 isa nullable PMethid var psignaturenode7 = nodearraylist6 assert psignaturenode7 isa nullable PSignature var tstringnode8 = nodearraylist9 assert tstringnode8 isa nullable TString var ppropdefnode1: nullable AExternMethPropdef = new AExternMethPropdef.init_aexternmethpropdef( pdocnode2, tkwredefnode3, pvisibilitynode4, tkwmethnode5, pmethidnode6, psignaturenode7, tstringnode8 ) node_list = ppropdefnode1 p.push(p.go_to(71), node_list) end init do end end private class ReduceAction481 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode4 = new Array[Object] var tclassidnode3 = nodearraylist1 assert tclassidnode3 isa nullable TClassid var ptypenode1: nullable AType = new AType.init_atype( null, tclassidnode3, listnode4 ) node_list = ptypenode1 p.push(p.go_to(72), node_list) end init do end end private class ReduceAction482 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var tkwnullablenode2 = nodearraylist1 assert tkwnullablenode2 isa nullable TKwnullable var tclassidnode3 = nodearraylist2 assert tclassidnode3 isa nullable TClassid var ptypenode1: nullable AType = new AType.init_atype( tkwnullablenode2, tclassidnode3, listnode4 ) node_list = ptypenode1 p.push(p.go_to(72), node_list) end init do end end private class ReduceAction483 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(73), node_list) end init do end end private class ReduceAction484 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist6 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(73), node_list) end init do end end private class ReduceAction485 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(73), node_list) end init do end end private class ReduceAction486 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(74), node_list) end init do end end private class ReduceAction487 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwifnode2 = nodearraylist1 assert tkwifnode2 isa nullable TKwif var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var tkwthennode4 = nodearraylist5 assert tkwthennode4 isa nullable TKwthen var pexprnode5 = nodearraylist7 assert pexprnode5 isa nullable PExpr var tkwelsenode6 = nodearraylist9 assert tkwelsenode6 isa nullable TKwelse var pexprnode7 = nodearraylist11 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable AIfexprExpr = new AIfexprExpr.init_aifexprexpr( tkwifnode2, pexprnode3, tkwthennode4, pexprnode5, tkwelsenode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(74), node_list) end init do end end private class ReduceAction488 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(75), node_list) end init do end end private class ReduceAction489 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AOrExpr = new AOrExpr.init_aorexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(75), node_list) end init do end end private class ReduceAction490 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AAndExpr = new AAndExpr.init_aandexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(75), node_list) end init do end end private class ReduceAction491 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(76), node_list) end init do end end private class ReduceAction492 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwnotnode2 = nodearraylist1 assert tkwnotnode2 isa nullable TKwnot var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ANotExpr = new ANotExpr.init_anotexpr( tkwnotnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(76), node_list) end init do end end private class ReduceAction493 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(77), node_list) end init do end end private class ReduceAction494 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AEqExpr = new AEqExpr.init_aeqexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(77), node_list) end init do end end private class ReduceAction495 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AEeExpr = new AEeExpr.init_aeeexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(77), node_list) end init do end end private class ReduceAction496 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ANeExpr = new ANeExpr.init_aneexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(77), node_list) end init do end end private class ReduceAction497 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ALtExpr = new ALtExpr.init_altexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(77), node_list) end init do end end private class ReduceAction498 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ALeExpr = new ALeExpr.init_aleexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(77), node_list) end init do end end private class ReduceAction499 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AGtExpr = new AGtExpr.init_agtexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(77), node_list) end init do end end private class ReduceAction500 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AGeExpr = new AGeExpr.init_ageexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(77), node_list) end init do end end private class ReduceAction501 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AStarshipExpr = new AStarshipExpr.init_astarshipexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(77), node_list) end init do end end private class ReduceAction502 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var ptypenode3 = nodearraylist4 assert ptypenode3 isa nullable PType var pexprnode1: nullable AIsaExpr = new AIsaExpr.init_aisaexpr( pexprnode2, ptypenode3 ) node_list = pexprnode1 p.push(p.go_to(77), node_list) end init do end end private class ReduceAction503 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(78), node_list) end init do end end private class ReduceAction504 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable APlusExpr = new APlusExpr.init_aplusexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(78), node_list) end init do end end private class ReduceAction505 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AMinusExpr = new AMinusExpr.init_aminusexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(78), node_list) end init do end end private class ReduceAction506 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(79), node_list) end init do end end private class ReduceAction507 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AStarExpr = new AStarExpr.init_astarexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(79), node_list) end init do end end private class ReduceAction508 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ASlashExpr = new ASlashExpr.init_aslashexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(79), node_list) end init do end end private class ReduceAction509 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable APercentExpr = new APercentExpr.init_apercentexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(79), node_list) end init do end end private class ReduceAction510 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(80), node_list) end init do end end private class ReduceAction511 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tminusnode2 = nodearraylist1 assert tminusnode2 isa nullable TMinus var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AUminusExpr = new AUminusExpr.init_auminusexpr( tminusnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(80), node_list) end init do end end private class ReduceAction512 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwoncenode2 = nodearraylist1 assert tkwoncenode2 isa nullable TKwonce var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AOnceExpr = new AOnceExpr.init_aonceexpr( tkwoncenode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(80), node_list) end init do end end private class ReduceAction513 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(81), node_list) end init do end end private class ReduceAction514 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode6 = new Array[Object] var tkwnewnode2 = nodearraylist1 assert tkwnewnode2 isa nullable TKwnew var ptypenode3 = nodearraylist3 assert ptypenode3 isa nullable PType var listnode5 = nodearraylist4 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pexprnode1: nullable ANewExpr = new ANewExpr.init_anewexpr( tkwnewnode2, ptypenode3, null, listnode6 ) node_list = pexprnode1 p.push(p.go_to(81), node_list) end init do end end private class ReduceAction515 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwissetnode2 = nodearraylist1 assert tkwissetnode2 isa nullable TKwisset var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var tattridnode4 = nodearraylist5 assert tattridnode4 isa nullable TAttrid var pexprnode1: nullable AIssetAttrExpr = new AIssetAttrExpr.init_aissetattrexpr( tkwissetnode2, pexprnode3, tattridnode4 ) node_list = pexprnode1 p.push(p.go_to(81), node_list) end init do end end private class ReduceAction516 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwissetnode2 = nodearraylist1 assert tkwissetnode2 isa nullable TKwisset var pexprnode3: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tattridnode4 = nodearraylist2 assert tattridnode4 isa nullable TAttrid var pexprnode1: nullable AIssetAttrExpr = new AIssetAttrExpr.init_aissetattrexpr( tkwissetnode2, pexprnode3, tattridnode4 ) node_list = pexprnode1 p.push(p.go_to(81), node_list) end init do end end private class ReduceAction517 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tattridnode3 = nodearraylist4 assert tattridnode3 isa nullable TAttrid var pexprnode1: nullable AAttrExpr = new AAttrExpr.init_aattrexpr( pexprnode2, tattridnode3 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction518 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tattridnode3 = nodearraylist1 assert tattridnode3 isa nullable TAttrid var pexprnode1: nullable AAttrExpr = new AAttrExpr.init_aattrexpr( pexprnode2, tattridnode3 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction519 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode6 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction520 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode6 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction521 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var tkwsupernode3 = nodearraylist1 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( null, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction522 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pqualifiednode2 = nodearraylist1 assert pqualifiednode2 isa nullable PQualified var tkwsupernode3 = nodearraylist2 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist3 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( pqualifiednode2, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction523 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwinitnode3 = nodearraylist4 assert tkwinitnode3 isa nullable TKwinit var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr( pexprnode2, tkwinitnode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction524 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tkwinitnode3 = nodearraylist1 assert tkwinitnode3 isa nullable TKwinit var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr( pexprnode2, tkwinitnode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction525 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode6 = new Array[Object] var tkwnewnode2 = nodearraylist1 assert tkwnewnode2 isa nullable TKwnew var ptypenode3 = nodearraylist3 assert ptypenode3 isa nullable PType var tidnode4 = nodearraylist6 assert tidnode4 isa nullable TId var listnode5 = nodearraylist7 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pexprnode1: nullable ANewExpr = new ANewExpr.init_anewexpr( tkwnewnode2, ptypenode3, tidnode4, listnode6 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction526 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwselfnode2 = nodearraylist1 assert tkwselfnode2 isa nullable TKwself var pexprnode1: nullable ASelfExpr = new ASelfExpr.init_aselfexpr( tkwselfnode2 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction527 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwtruenode2 = nodearraylist1 assert tkwtruenode2 isa nullable TKwtrue var pexprnode1: nullable ATrueExpr = new ATrueExpr.init_atrueexpr( tkwtruenode2 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction528 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwfalsenode2 = nodearraylist1 assert tkwfalsenode2 isa nullable TKwfalse var pexprnode1: nullable AFalseExpr = new AFalseExpr.init_afalseexpr( tkwfalsenode2 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction529 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwnullnode2 = nodearraylist1 assert tkwnullnode2 isa nullable TKwnull var pexprnode1: nullable ANullExpr = new ANullExpr.init_anullexpr( tkwnullnode2 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction530 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tnumbernode2 = nodearraylist1 assert tnumbernode2 isa nullable TNumber var pexprnode1: nullable AIntExpr = new AIntExpr.init_aintexpr( tnumbernode2 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction531 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tfloatnode2 = nodearraylist1 assert tfloatnode2 isa nullable TFloat var pexprnode1: nullable AFloatExpr = new AFloatExpr.init_afloatexpr( tfloatnode2 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction532 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tcharnode2 = nodearraylist1 assert tcharnode2 isa nullable TChar var pexprnode1: nullable ACharExpr = new ACharExpr.init_acharexpr( tcharnode2 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction533 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tstringnode2 = nodearraylist1 assert tstringnode2 isa nullable TString var pexprnode1: nullable AStringExpr = new AStringExpr.init_astringexpr( tstringnode2 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction534 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction535 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode1 = nodearraylist2 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction536 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwasnode3 = nodearraylist4 assert tkwasnode3 isa nullable TKwas var ptypenode4 = nodearraylist8 assert ptypenode4 isa nullable PType var pexprnode1: nullable AAsCastExpr = new AAsCastExpr.init_aascastexpr( pexprnode2, tkwasnode3, ptypenode4 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction537 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwasnode3 = nodearraylist4 assert tkwasnode3 isa nullable TKwas var tkwnotnode4 = nodearraylist8 assert tkwnotnode4 isa nullable TKwnot var tkwnullnode5 = nodearraylist10 assert tkwnullnode5 isa nullable TKwnull var pexprnode1: nullable AAsNotnullExpr = new AAsNotnullExpr.init_aasnotnullexpr( pexprnode2, tkwasnode3, tkwnotnode4, tkwnullnode5 ) node_list = pexprnode1 p.push(p.go_to(82), node_list) end init do end end private class ReduceAction538 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(83), node_list) end init do end end private class ReduceAction539 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var pexprnode2 = nodearraylist2 assert pexprnode2 isa nullable PExpr if pexprnode2 != null then listnode3.add(pexprnode2) end var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode3 ) node_list = pexprnode1 p.push(p.go_to(83), node_list) end init do end end private class ReduceAction540 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var pexprnode2 = nodearraylist2 assert pexprnode2 isa nullable PExpr var listnode3 = nodearraylist3 assert listnode3 isa Array[Object] if pexprnode2 != null then listnode4.add(pexprnode2) end # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode4 ) node_list = pexprnode1 p.push(p.go_to(83), node_list) end init do end end private class ReduceAction541 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode2 ) node_list = pexprnode1 p.push(p.go_to(83), node_list) end init do end end private class ReduceAction542 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pexprnode1: nullable ABlockExpr = new ABlockExpr.init_ablockexpr( listnode2 ) node_list = pexprnode1 p.push(p.go_to(83), node_list) end init do end end private class ReduceAction543 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction544 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction545 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwreturnnode2 = nodearraylist1 assert tkwreturnnode2 isa nullable TKwreturn var pexprnode1: nullable AReturnExpr = new AReturnExpr.init_areturnexpr( tkwreturnnode2, null ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction546 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwreturnnode2 = nodearraylist1 assert tkwreturnnode2 isa nullable TKwreturn var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AReturnExpr = new AReturnExpr.init_areturnexpr( tkwreturnnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction547 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwbreaknode2 = nodearraylist1 assert tkwbreaknode2 isa nullable TKwbreak var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr( tkwbreaknode2, null ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction548 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwbreaknode2 = nodearraylist1 assert tkwbreaknode2 isa nullable TKwbreak var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ABreakExpr = new ABreakExpr.init_abreakexpr( tkwbreaknode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction549 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwabortnode2 = nodearraylist1 assert tkwabortnode2 isa nullable TKwabort var pexprnode1: nullable AAbortExpr = new AAbortExpr.init_aabortexpr( tkwabortnode2 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction550 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwcontinuenode2 = nodearraylist1 assert tkwcontinuenode2 isa nullable TKwcontinue var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr( tkwcontinuenode2, null ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction551 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwcontinuenode2 = nodearraylist1 assert tkwcontinuenode2 isa nullable TKwcontinue var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AContinueExpr = new AContinueExpr.init_acontinueexpr( tkwcontinuenode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction552 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction553 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction554 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction555 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction556 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction557 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode6 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction558 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode6 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction559 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist6 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction560 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction561 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var tkwsupernode3 = nodearraylist1 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( null, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction562 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pqualifiednode2 = nodearraylist1 assert pqualifiednode2 isa nullable PQualified var tkwsupernode3 = nodearraylist2 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist3 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( pqualifiednode2, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction563 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwinitnode3 = nodearraylist4 assert tkwinitnode3 isa nullable TKwinit var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr( pexprnode2, tkwinitnode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction564 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tkwinitnode3 = nodearraylist1 assert tkwinitnode3 isa nullable TKwinit var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr( pexprnode2, tkwinitnode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(84), node_list) end init do end end private class ReduceAction565 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pclosuredefnode1 = nodearraylist1 assert pclosuredefnode1 isa nullable PClosureDef if pclosuredefnode1 != null then listnode2.add(pclosuredefnode1) end node_list = listnode2 p.push(p.go_to(85), node_list) end init do end end private class ReduceAction566 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var pclosuredefnode1 = nodearraylist1 assert pclosuredefnode1 isa nullable PClosureDef var listnode2 = nodearraylist2 assert listnode2 isa Array[Object] if pclosuredefnode1 != null then listnode3.add(pclosuredefnode1) end # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end node_list = listnode3 p.push(p.go_to(85), node_list) end init do end end private class ReduceAction567 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var tkwdonode4 = nodearraylist2 assert tkwdonode4 isa nullable TKwdo var pexprnode5 = nodearraylist3 assert pexprnode5 isa nullable PExpr var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef( tkwwithnode2, listnode3, tkwdonode4, pexprnode5 ) node_list = pclosuredefnode1 p.push(p.go_to(86), node_list) end init do end end private class ReduceAction568 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var tkwwithnode2 = nodearraylist1 assert tkwwithnode2 isa nullable TKwwith var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var tkwdonode5 = nodearraylist3 assert tkwdonode5 isa nullable TKwdo var pexprnode6 = nodearraylist4 assert pexprnode6 isa nullable PExpr var pclosuredefnode1: nullable AClosureDef = new AClosureDef.init_aclosuredef( tkwwithnode2, listnode4, tkwdonode5, pexprnode6 ) node_list = pclosuredefnode1 p.push(p.go_to(86), node_list) end init do end end private class ReduceAction569 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwvarnode2 = nodearraylist1 assert tkwvarnode2 isa nullable TKwvar var tidnode3 = nodearraylist2 assert tidnode3 isa nullable TId var pexprnode1: nullable AVardeclExpr = new AVardeclExpr.init_avardeclexpr( tkwvarnode2, tidnode3, null, null, null ) node_list = pexprnode1 p.push(p.go_to(87), node_list) end init do end end private class ReduceAction570 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwvarnode2 = nodearraylist1 assert tkwvarnode2 isa nullable TKwvar var tidnode3 = nodearraylist2 assert tidnode3 isa nullable TId var ptypenode4 = nodearraylist3 assert ptypenode4 isa nullable PType var pexprnode1: nullable AVardeclExpr = new AVardeclExpr.init_avardeclexpr( tkwvarnode2, tidnode3, ptypenode4, null, null ) node_list = pexprnode1 p.push(p.go_to(87), node_list) end init do end end private class ReduceAction571 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwvarnode2 = nodearraylist1 assert tkwvarnode2 isa nullable TKwvar var tidnode3 = nodearraylist2 assert tidnode3 isa nullable TId var tassignnode5 = nodearraylist3 assert tassignnode5 isa nullable TAssign var pexprnode6 = nodearraylist5 assert pexprnode6 isa nullable PExpr var pexprnode1: nullable AVardeclExpr = new AVardeclExpr.init_avardeclexpr( tkwvarnode2, tidnode3, null, tassignnode5, pexprnode6 ) node_list = pexprnode1 p.push(p.go_to(87), node_list) end init do end end private class ReduceAction572 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwvarnode2 = nodearraylist1 assert tkwvarnode2 isa nullable TKwvar var tidnode3 = nodearraylist2 assert tidnode3 isa nullable TId var ptypenode4 = nodearraylist3 assert ptypenode4 isa nullable PType var tassignnode5 = nodearraylist4 assert tassignnode5 isa nullable TAssign var pexprnode6 = nodearraylist6 assert pexprnode6 isa nullable PExpr var pexprnode1: nullable AVardeclExpr = new AVardeclExpr.init_avardeclexpr( tkwvarnode2, tidnode3, ptypenode4, tassignnode5, pexprnode6 ) node_list = pexprnode1 p.push(p.go_to(87), node_list) end init do end end private class ReduceAction573 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tattridnode3 = nodearraylist4 assert tattridnode3 isa nullable TAttrid var tassignnode4 = nodearraylist5 assert tassignnode4 isa nullable TAssign var pexprnode5 = nodearraylist6 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AAttrAssignExpr = new AAttrAssignExpr.init_aattrassignexpr( pexprnode2, tattridnode3, tassignnode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(88), node_list) end init do end end private class ReduceAction574 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tattridnode3 = nodearraylist1 assert tattridnode3 isa nullable TAttrid var tassignnode4 = nodearraylist2 assert tassignnode4 isa nullable TAssign var pexprnode5 = nodearraylist3 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AAttrAssignExpr = new AAttrAssignExpr.init_aattrassignexpr( pexprnode2, tattridnode3, tassignnode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(88), node_list) end init do end end private class ReduceAction575 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var tassignnode6 = nodearraylist6 assert tassignnode6 isa nullable TAssign var pexprnode7 = nodearraylist7 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable ACallAssignExpr = new ACallAssignExpr.init_acallassignexpr( pexprnode2, tidnode3, listnode5, tassignnode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(88), node_list) end init do end end private class ReduceAction576 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var tassignnode6 = nodearraylist3 assert tassignnode6 isa nullable TAssign var pexprnode7 = nodearraylist4 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable ACallAssignExpr = new ACallAssignExpr.init_acallassignexpr( pexprnode2, tidnode3, listnode5, tassignnode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(88), node_list) end init do end end private class ReduceAction577 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var tassignnode5 = nodearraylist3 assert tassignnode5 isa nullable TAssign var pexprnode6 = nodearraylist4 assert pexprnode6 isa nullable PExpr var pexprnode1: nullable ABraAssignExpr = new ABraAssignExpr.init_abraassignexpr( pexprnode2, listnode4, tassignnode5, pexprnode6 ) node_list = pexprnode1 p.push(p.go_to(88), node_list) end init do end end private class ReduceAction578 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tattridnode3 = nodearraylist4 assert tattridnode3 isa nullable TAttrid var passignopnode4 = nodearraylist5 assert passignopnode4 isa nullable PAssignOp var pexprnode5 = nodearraylist6 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AAttrReassignExpr = new AAttrReassignExpr.init_aattrreassignexpr( pexprnode2, tattridnode3, passignopnode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(88), node_list) end init do end end private class ReduceAction579 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tattridnode3 = nodearraylist1 assert tattridnode3 isa nullable TAttrid var passignopnode4 = nodearraylist2 assert passignopnode4 isa nullable PAssignOp var pexprnode5 = nodearraylist3 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AAttrReassignExpr = new AAttrReassignExpr.init_aattrreassignexpr( pexprnode2, tattridnode3, passignopnode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(88), node_list) end init do end end private class ReduceAction580 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var passignopnode6 = nodearraylist6 assert passignopnode6 isa nullable PAssignOp var pexprnode7 = nodearraylist7 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable ACallReassignExpr = new ACallReassignExpr.init_acallreassignexpr( pexprnode2, tidnode3, listnode5, passignopnode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(88), node_list) end init do end end private class ReduceAction581 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var passignopnode6 = nodearraylist3 assert passignopnode6 isa nullable PAssignOp var pexprnode7 = nodearraylist4 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable ACallReassignExpr = new ACallReassignExpr.init_acallreassignexpr( pexprnode2, tidnode3, listnode5, passignopnode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(88), node_list) end init do end end private class ReduceAction582 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var passignopnode5 = nodearraylist3 assert passignopnode5 isa nullable PAssignOp var pexprnode6 = nodearraylist4 assert pexprnode6 isa nullable PExpr var pexprnode1: nullable ABraReassignExpr = new ABraReassignExpr.init_abrareassignexpr( pexprnode2, listnode4, passignopnode5, pexprnode6 ) node_list = pexprnode1 p.push(p.go_to(88), node_list) end init do end end private class ReduceAction583 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwdonode2 = nodearraylist1 assert tkwdonode2 isa nullable TKwdo var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ADoExpr = new ADoExpr.init_adoexpr( tkwdonode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(89), node_list) end init do end end private class ReduceAction584 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwifnode2 = nodearraylist1 assert tkwifnode2 isa nullable TKwif var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode4 = nodearraylist6 assert pexprnode4 isa nullable PExpr var pexprnode5 = nodearraylist8 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AIfExpr = new AIfExpr.init_aifexpr( tkwifnode2, pexprnode3, pexprnode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(90), node_list) end init do end end private class ReduceAction585 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwwhilenode2 = nodearraylist1 assert tkwwhilenode2 isa nullable TKwwhile var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var tkwdonode4 = nodearraylist5 assert tkwdonode4 isa nullable TKwdo var pexprnode5 = nodearraylist6 assert pexprnode5 isa nullable PExpr var pexprnode1: nullable AWhileExpr = new AWhileExpr.init_awhileexpr( tkwwhilenode2, pexprnode3, tkwdonode4, pexprnode5 ) node_list = pexprnode1 p.push(p.go_to(91), node_list) end init do end end private class ReduceAction586 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwfornode2 = nodearraylist1 assert tkwfornode2 isa nullable TKwfor var tidnode3 = nodearraylist3 assert tidnode3 isa nullable TId var pexprnode4 = nodearraylist7 assert pexprnode4 isa nullable PExpr var tkwdonode5 = nodearraylist9 assert tkwdonode5 isa nullable TKwdo var pexprnode6 = nodearraylist10 assert pexprnode6 isa nullable PExpr var pexprnode1: nullable AForExpr = new AForExpr.init_aforexpr( tkwfornode2, tidnode3, pexprnode4, tkwdonode5, pexprnode6 ) node_list = pexprnode1 p.push(p.go_to(92), node_list) end init do end end private class ReduceAction587 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwassertnode2 = nodearraylist1 assert tkwassertnode2 isa nullable TKwassert var pexprnode4 = nodearraylist2 assert pexprnode4 isa nullable PExpr var pexprnode1: nullable AAssertExpr = new AAssertExpr.init_aassertexpr( tkwassertnode2, null, pexprnode4 ) node_list = pexprnode1 p.push(p.go_to(93), node_list) end init do end end private class ReduceAction588 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwassertnode2 = nodearraylist1 assert tkwassertnode2 isa nullable TKwassert var tidnode3 = nodearraylist2 assert tidnode3 isa nullable TId var pexprnode4 = nodearraylist3 assert pexprnode4 isa nullable PExpr var pexprnode1: nullable AAssertExpr = new AAssertExpr.init_aassertexpr( tkwassertnode2, tidnode3, pexprnode4 ) node_list = pexprnode1 p.push(p.go_to(93), node_list) end init do end end private class ReduceAction589 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(94), node_list) end init do end end private class ReduceAction590 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist6 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(94), node_list) end init do end end private class ReduceAction591 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(94), node_list) end init do end end private class ReduceAction592 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode4 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var listnode3 = nodearraylist2 assert listnode3 isa Array[Object] # if listnode3 != null then if listnode4.is_empty then listnode4 = listnode3 else listnode4.append(listnode3) end # end var listnode5 = nodearraylist3 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pexprnode1: nullable ABraExpr = new ABraExpr.init_abraexpr( pexprnode2, listnode4, listnode6 ) node_list = pexprnode1 p.push(p.go_to(94), node_list) end init do end end private class ReduceAction593 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(95), node_list) end init do end end private class ReduceAction594 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist6 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(95), node_list) end init do end end private class ReduceAction595 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(95), node_list) end init do end end private class ReduceAction596 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(96), node_list) end init do end end private class ReduceAction597 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist6 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(96), node_list) end init do end end private class ReduceAction598 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(96), node_list) end init do end end private class ReduceAction599 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(97), node_list) end init do end end private class ReduceAction600 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwifnode2 = nodearraylist1 assert tkwifnode2 isa nullable TKwif var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var tkwthennode4 = nodearraylist5 assert tkwthennode4 isa nullable TKwthen var pexprnode5 = nodearraylist7 assert pexprnode5 isa nullable PExpr var tkwelsenode6 = nodearraylist9 assert tkwelsenode6 isa nullable TKwelse var pexprnode7 = nodearraylist11 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable AIfexprExpr = new AIfexprExpr.init_aifexprexpr( tkwifnode2, pexprnode3, tkwthennode4, pexprnode5, tkwelsenode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(97), node_list) end init do end end private class ReduceAction601 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(98), node_list) end init do end end private class ReduceAction602 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AOrExpr = new AOrExpr.init_aorexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(98), node_list) end init do end end private class ReduceAction603 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AAndExpr = new AAndExpr.init_aandexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(98), node_list) end init do end end private class ReduceAction604 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(99), node_list) end init do end end private class ReduceAction605 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwnotnode2 = nodearraylist1 assert tkwnotnode2 isa nullable TKwnot var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ANotExpr = new ANotExpr.init_anotexpr( tkwnotnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(99), node_list) end init do end end private class ReduceAction606 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(100), node_list) end init do end end private class ReduceAction607 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AEqExpr = new AEqExpr.init_aeqexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(100), node_list) end init do end end private class ReduceAction608 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AEeExpr = new AEeExpr.init_aeeexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(100), node_list) end init do end end private class ReduceAction609 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ANeExpr = new ANeExpr.init_aneexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(100), node_list) end init do end end private class ReduceAction610 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ALtExpr = new ALtExpr.init_altexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(100), node_list) end init do end end private class ReduceAction611 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ALeExpr = new ALeExpr.init_aleexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(100), node_list) end init do end end private class ReduceAction612 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AGtExpr = new AGtExpr.init_agtexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(100), node_list) end init do end end private class ReduceAction613 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AGeExpr = new AGeExpr.init_ageexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(100), node_list) end init do end end private class ReduceAction614 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AStarshipExpr = new AStarshipExpr.init_astarshipexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(100), node_list) end init do end end private class ReduceAction615 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var ptypenode3 = nodearraylist4 assert ptypenode3 isa nullable PType var pexprnode1: nullable AIsaExpr = new AIsaExpr.init_aisaexpr( pexprnode2, ptypenode3 ) node_list = pexprnode1 p.push(p.go_to(100), node_list) end init do end end private class ReduceAction616 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(101), node_list) end init do end end private class ReduceAction617 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable APlusExpr = new APlusExpr.init_aplusexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(101), node_list) end init do end end private class ReduceAction618 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AMinusExpr = new AMinusExpr.init_aminusexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(101), node_list) end init do end end private class ReduceAction619 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(102), node_list) end init do end end private class ReduceAction620 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AStarExpr = new AStarExpr.init_astarexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(102), node_list) end init do end end private class ReduceAction621 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ASlashExpr = new ASlashExpr.init_aslashexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(102), node_list) end init do end end private class ReduceAction622 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable APercentExpr = new APercentExpr.init_apercentexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(102), node_list) end init do end end private class ReduceAction623 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(103), node_list) end init do end end private class ReduceAction624 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tminusnode2 = nodearraylist1 assert tminusnode2 isa nullable TMinus var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AUminusExpr = new AUminusExpr.init_auminusexpr( tminusnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(103), node_list) end init do end end private class ReduceAction625 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwoncenode2 = nodearraylist1 assert tkwoncenode2 isa nullable TKwonce var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AOnceExpr = new AOnceExpr.init_aonceexpr( tkwoncenode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(103), node_list) end init do end end private class ReduceAction626 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(104), node_list) end init do end end private class ReduceAction627 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode6 = new Array[Object] var tkwnewnode2 = nodearraylist1 assert tkwnewnode2 isa nullable TKwnew var ptypenode3 = nodearraylist3 assert ptypenode3 isa nullable PType var listnode5 = nodearraylist4 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pexprnode1: nullable ANewExpr = new ANewExpr.init_anewexpr( tkwnewnode2, ptypenode3, null, listnode6 ) node_list = pexprnode1 p.push(p.go_to(104), node_list) end init do end end private class ReduceAction628 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwissetnode2 = nodearraylist1 assert tkwissetnode2 isa nullable TKwisset var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var tattridnode4 = nodearraylist5 assert tattridnode4 isa nullable TAttrid var pexprnode1: nullable AIssetAttrExpr = new AIssetAttrExpr.init_aissetattrexpr( tkwissetnode2, pexprnode3, tattridnode4 ) node_list = pexprnode1 p.push(p.go_to(104), node_list) end init do end end private class ReduceAction629 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwissetnode2 = nodearraylist1 assert tkwissetnode2 isa nullable TKwisset var pexprnode3: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tattridnode4 = nodearraylist2 assert tattridnode4 isa nullable TAttrid var pexprnode1: nullable AIssetAttrExpr = new AIssetAttrExpr.init_aissetattrexpr( tkwissetnode2, pexprnode3, tattridnode4 ) node_list = pexprnode1 p.push(p.go_to(104), node_list) end init do end end private class ReduceAction630 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tattridnode3 = nodearraylist4 assert tattridnode3 isa nullable TAttrid var pexprnode1: nullable AAttrExpr = new AAttrExpr.init_aattrexpr( pexprnode2, tattridnode3 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction631 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tattridnode3 = nodearraylist1 assert tattridnode3 isa nullable TAttrid var pexprnode1: nullable AAttrExpr = new AAttrExpr.init_aattrexpr( pexprnode2, tattridnode3 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction632 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode6 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction633 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode6 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction634 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var tkwsupernode3 = nodearraylist1 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( null, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction635 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pqualifiednode2 = nodearraylist1 assert pqualifiednode2 isa nullable PQualified var tkwsupernode3 = nodearraylist2 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist3 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( pqualifiednode2, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction636 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwinitnode3 = nodearraylist4 assert tkwinitnode3 isa nullable TKwinit var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr( pexprnode2, tkwinitnode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction637 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tkwinitnode3 = nodearraylist1 assert tkwinitnode3 isa nullable TKwinit var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr( pexprnode2, tkwinitnode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction638 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode6 = new Array[Object] var tkwnewnode2 = nodearraylist1 assert tkwnewnode2 isa nullable TKwnew var ptypenode3 = nodearraylist3 assert ptypenode3 isa nullable PType var tidnode4 = nodearraylist6 assert tidnode4 isa nullable TId var listnode5 = nodearraylist7 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pexprnode1: nullable ANewExpr = new ANewExpr.init_anewexpr( tkwnewnode2, ptypenode3, tidnode4, listnode6 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction639 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwselfnode2 = nodearraylist1 assert tkwselfnode2 isa nullable TKwself var pexprnode1: nullable ASelfExpr = new ASelfExpr.init_aselfexpr( tkwselfnode2 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction640 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwtruenode2 = nodearraylist1 assert tkwtruenode2 isa nullable TKwtrue var pexprnode1: nullable ATrueExpr = new ATrueExpr.init_atrueexpr( tkwtruenode2 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction641 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwfalsenode2 = nodearraylist1 assert tkwfalsenode2 isa nullable TKwfalse var pexprnode1: nullable AFalseExpr = new AFalseExpr.init_afalseexpr( tkwfalsenode2 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction642 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwnullnode2 = nodearraylist1 assert tkwnullnode2 isa nullable TKwnull var pexprnode1: nullable ANullExpr = new ANullExpr.init_anullexpr( tkwnullnode2 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction643 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tnumbernode2 = nodearraylist1 assert tnumbernode2 isa nullable TNumber var pexprnode1: nullable AIntExpr = new AIntExpr.init_aintexpr( tnumbernode2 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction644 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tfloatnode2 = nodearraylist1 assert tfloatnode2 isa nullable TFloat var pexprnode1: nullable AFloatExpr = new AFloatExpr.init_afloatexpr( tfloatnode2 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction645 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tcharnode2 = nodearraylist1 assert tcharnode2 isa nullable TChar var pexprnode1: nullable ACharExpr = new ACharExpr.init_acharexpr( tcharnode2 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction646 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tstringnode2 = nodearraylist1 assert tstringnode2 isa nullable TString var pexprnode1: nullable AStringExpr = new AStringExpr.init_astringexpr( tstringnode2 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction647 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction648 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwasnode3 = nodearraylist4 assert tkwasnode3 isa nullable TKwas var ptypenode4 = nodearraylist8 assert ptypenode4 isa nullable PType var pexprnode1: nullable AAsCastExpr = new AAsCastExpr.init_aascastexpr( pexprnode2, tkwasnode3, ptypenode4 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction649 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwasnode3 = nodearraylist4 assert tkwasnode3 isa nullable TKwas var tkwnotnode4 = nodearraylist8 assert tkwnotnode4 isa nullable TKwnot var tkwnullnode5 = nodearraylist10 assert tkwnullnode5 isa nullable TKwnull var pexprnode1: nullable AAsNotnullExpr = new AAsNotnullExpr.init_aasnotnullexpr( pexprnode2, tkwasnode3, tkwnotnode4, tkwnullnode5 ) node_list = pexprnode1 p.push(p.go_to(105), node_list) end init do end end private class ReduceAction650 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(106), node_list) end init do end end private class ReduceAction651 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist6 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(106), node_list) end init do end end private class ReduceAction652 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(106), node_list) end init do end end private class ReduceAction653 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(107), node_list) end init do end end private class ReduceAction654 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwifnode2 = nodearraylist1 assert tkwifnode2 isa nullable TKwif var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var tkwthennode4 = nodearraylist5 assert tkwthennode4 isa nullable TKwthen var pexprnode5 = nodearraylist7 assert pexprnode5 isa nullable PExpr var tkwelsenode6 = nodearraylist9 assert tkwelsenode6 isa nullable TKwelse var pexprnode7 = nodearraylist11 assert pexprnode7 isa nullable PExpr var pexprnode1: nullable AIfexprExpr = new AIfexprExpr.init_aifexprexpr( tkwifnode2, pexprnode3, tkwthennode4, pexprnode5, tkwelsenode6, pexprnode7 ) node_list = pexprnode1 p.push(p.go_to(107), node_list) end init do end end private class ReduceAction655 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(108), node_list) end init do end end private class ReduceAction656 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AOrExpr = new AOrExpr.init_aorexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(108), node_list) end init do end end private class ReduceAction657 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AAndExpr = new AAndExpr.init_aandexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(108), node_list) end init do end end private class ReduceAction658 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(109), node_list) end init do end end private class ReduceAction659 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwnotnode2 = nodearraylist1 assert tkwnotnode2 isa nullable TKwnot var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ANotExpr = new ANotExpr.init_anotexpr( tkwnotnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(109), node_list) end init do end end private class ReduceAction660 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(110), node_list) end init do end end private class ReduceAction661 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AEqExpr = new AEqExpr.init_aeqexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(110), node_list) end init do end end private class ReduceAction662 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AEeExpr = new AEeExpr.init_aeeexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(110), node_list) end init do end end private class ReduceAction663 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ANeExpr = new ANeExpr.init_aneexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(110), node_list) end init do end end private class ReduceAction664 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ALtExpr = new ALtExpr.init_altexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(110), node_list) end init do end end private class ReduceAction665 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ALeExpr = new ALeExpr.init_aleexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(110), node_list) end init do end end private class ReduceAction666 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AGtExpr = new AGtExpr.init_agtexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(110), node_list) end init do end end private class ReduceAction667 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AGeExpr = new AGeExpr.init_ageexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(110), node_list) end init do end end private class ReduceAction668 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AStarshipExpr = new AStarshipExpr.init_astarshipexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(110), node_list) end init do end end private class ReduceAction669 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var ptypenode3 = nodearraylist4 assert ptypenode3 isa nullable PType var pexprnode1: nullable AIsaExpr = new AIsaExpr.init_aisaexpr( pexprnode2, ptypenode3 ) node_list = pexprnode1 p.push(p.go_to(110), node_list) end init do end end private class ReduceAction670 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(111), node_list) end init do end end private class ReduceAction671 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable APlusExpr = new APlusExpr.init_aplusexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(111), node_list) end init do end end private class ReduceAction672 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AMinusExpr = new AMinusExpr.init_aminusexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(111), node_list) end init do end end private class ReduceAction673 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(112), node_list) end init do end end private class ReduceAction674 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AStarExpr = new AStarExpr.init_astarexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(112), node_list) end init do end end private class ReduceAction675 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable ASlashExpr = new ASlashExpr.init_aslashexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(112), node_list) end init do end end private class ReduceAction676 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var pexprnode3 = nodearraylist4 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable APercentExpr = new APercentExpr.init_apercentexpr( pexprnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(112), node_list) end init do end end private class ReduceAction677 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(113), node_list) end init do end end private class ReduceAction678 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tminusnode2 = nodearraylist1 assert tminusnode2 isa nullable TMinus var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AUminusExpr = new AUminusExpr.init_auminusexpr( tminusnode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(113), node_list) end init do end end private class ReduceAction679 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwoncenode2 = nodearraylist1 assert tkwoncenode2 isa nullable TKwonce var pexprnode3 = nodearraylist3 assert pexprnode3 isa nullable PExpr var pexprnode1: nullable AOnceExpr = new AOnceExpr.init_aonceexpr( tkwoncenode2, pexprnode3 ) node_list = pexprnode1 p.push(p.go_to(113), node_list) end init do end end private class ReduceAction680 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(114), node_list) end init do end end private class ReduceAction681 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode6 = new Array[Object] var tkwnewnode2 = nodearraylist1 assert tkwnewnode2 isa nullable TKwnew var ptypenode3 = nodearraylist3 assert ptypenode3 isa nullable PType var listnode5 = nodearraylist4 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pexprnode1: nullable ANewExpr = new ANewExpr.init_anewexpr( tkwnewnode2, ptypenode3, null, listnode6 ) node_list = pexprnode1 p.push(p.go_to(114), node_list) end init do end end private class ReduceAction682 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var tkwissetnode2 = nodearraylist1 assert tkwissetnode2 isa nullable TKwisset var pexprnode3 = nodearraylist2 assert pexprnode3 isa nullable PExpr var tattridnode4 = nodearraylist3 assert tattridnode4 isa nullable TAttrid var pexprnode1: nullable AIssetAttrExpr = new AIssetAttrExpr.init_aissetattrexpr( tkwissetnode2, pexprnode3, tattridnode4 ) node_list = pexprnode1 p.push(p.go_to(114), node_list) end init do end end private class ReduceAction683 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tattridnode3 = nodearraylist2 assert tattridnode3 isa nullable TAttrid var pexprnode1: nullable AAttrExpr = new AAttrExpr.init_aattrexpr( pexprnode2, tattridnode3 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction684 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode6 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist2 assert tidnode3 isa nullable TId var listnode4 = nodearraylist3 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode6 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction685 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var tkwsupernode3 = nodearraylist1 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( null, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction686 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pqualifiednode2 = nodearraylist1 assert pqualifiednode2 isa nullable PQualified var tkwsupernode3 = nodearraylist2 assert tkwsupernode3 isa nullable TKwsuper var listnode4 = nodearraylist3 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable ASuperExpr = new ASuperExpr.init_asuperexpr( pqualifiednode2, tkwsupernode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction687 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwinitnode3 = nodearraylist2 assert tkwinitnode3 isa nullable TKwinit var listnode4 = nodearraylist3 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var pexprnode1: nullable AInitExpr = new AInitExpr.init_ainitexpr( pexprnode2, tkwinitnode3, listnode5 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction688 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode6 = new Array[Object] var tkwnewnode2 = nodearraylist1 assert tkwnewnode2 isa nullable TKwnew var ptypenode3 = nodearraylist3 assert ptypenode3 isa nullable PType var tidnode4 = nodearraylist6 assert tidnode4 isa nullable TId var listnode5 = nodearraylist7 assert listnode5 isa Array[Object] # if listnode5 != null then if listnode6.is_empty then listnode6 = listnode5 else listnode6.append(listnode5) end # end var pexprnode1: nullable ANewExpr = new ANewExpr.init_anewexpr( tkwnewnode2, ptypenode3, tidnode4, listnode6 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction689 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwselfnode2 = nodearraylist1 assert tkwselfnode2 isa nullable TKwself var pexprnode1: nullable ASelfExpr = new ASelfExpr.init_aselfexpr( tkwselfnode2 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction690 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwtruenode2 = nodearraylist1 assert tkwtruenode2 isa nullable TKwtrue var pexprnode1: nullable ATrueExpr = new ATrueExpr.init_atrueexpr( tkwtruenode2 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction691 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwfalsenode2 = nodearraylist1 assert tkwfalsenode2 isa nullable TKwfalse var pexprnode1: nullable AFalseExpr = new AFalseExpr.init_afalseexpr( tkwfalsenode2 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction692 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tkwnullnode2 = nodearraylist1 assert tkwnullnode2 isa nullable TKwnull var pexprnode1: nullable ANullExpr = new ANullExpr.init_anullexpr( tkwnullnode2 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction693 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tnumbernode2 = nodearraylist1 assert tnumbernode2 isa nullable TNumber var pexprnode1: nullable AIntExpr = new AIntExpr.init_aintexpr( tnumbernode2 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction694 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tfloatnode2 = nodearraylist1 assert tfloatnode2 isa nullable TFloat var pexprnode1: nullable AFloatExpr = new AFloatExpr.init_afloatexpr( tfloatnode2 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction695 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tcharnode2 = nodearraylist1 assert tcharnode2 isa nullable TChar var pexprnode1: nullable ACharExpr = new ACharExpr.init_acharexpr( tcharnode2 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction696 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var tstringnode2 = nodearraylist1 assert tstringnode2 isa nullable TString var pexprnode1: nullable AStringExpr = new AStringExpr.init_astringexpr( tstringnode2 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction697 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction698 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwasnode3 = nodearraylist4 assert tkwasnode3 isa nullable TKwas var ptypenode4 = nodearraylist8 assert ptypenode4 isa nullable PType var pexprnode1: nullable AAsCastExpr = new AAsCastExpr.init_aascastexpr( pexprnode2, tkwasnode3, ptypenode4 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction699 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist12 = p.pop var nodearraylist11 = p.pop var nodearraylist10 = p.pop var nodearraylist9 = p.pop var nodearraylist8 = p.pop var nodearraylist7 = p.pop var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tkwasnode3 = nodearraylist4 assert tkwasnode3 isa nullable TKwas var tkwnotnode4 = nodearraylist8 assert tkwnotnode4 isa nullable TKwnot var tkwnullnode5 = nodearraylist10 assert tkwnullnode5 isa nullable TKwnull var pexprnode1: nullable AAsNotnullExpr = new AAsNotnullExpr.init_aasnotnullexpr( pexprnode2, tkwasnode3, tkwnotnode4, tkwnullnode5 ) node_list = pexprnode1 p.push(p.go_to(115), node_list) end init do end end private class ReduceAction700 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(116), node_list) end init do end end private class ReduceAction701 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var pexprnode1: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) node_list = pexprnode1 p.push(p.go_to(116), node_list) end init do end end private class ReduceAction702 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(117), node_list) end init do end end private class ReduceAction703 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist6 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(117), node_list) end init do end end private class ReduceAction704 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(117), node_list) end init do end end private class ReduceAction705 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr node_list = pexprnode1 p.push(p.go_to(118), node_list) end init do end end private class ReduceAction706 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist6 = p.pop var nodearraylist5 = p.pop var nodearraylist4 = p.pop var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2 = nodearraylist1 assert pexprnode2 isa nullable PExpr var tidnode3 = nodearraylist4 assert tidnode3 isa nullable TId var listnode4 = nodearraylist5 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist6 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(118), node_list) end init do end end private class ReduceAction707 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist3 = p.pop var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode5 = new Array[Object] var listnode7 = new Array[Object] var pexprnode2: nullable AImplicitSelfExpr = new AImplicitSelfExpr.init_aimplicitselfexpr( ) var tidnode3 = nodearraylist1 assert tidnode3 isa nullable TId var listnode4 = nodearraylist2 assert listnode4 isa Array[Object] # if listnode4 != null then if listnode5.is_empty then listnode5 = listnode4 else listnode5.append(listnode4) end # end var listnode6 = nodearraylist3 assert listnode6 isa Array[Object] # if listnode6 != null then if listnode7.is_empty then listnode7 = listnode6 else listnode7.append(listnode6) end # end var pexprnode1: nullable ACallExpr = new ACallExpr.init_acallexpr( pexprnode2, tidnode3, listnode5, listnode7 ) node_list = pexprnode1 p.push(p.go_to(118), node_list) end init do end end private class ReduceAction708 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pimportnode1 = nodearraylist1 assert pimportnode1 isa nullable PImport if pimportnode1 != null then listnode2.add(pimportnode1) end node_list = listnode2 p.push(p.go_to(119), node_list) end init do end end private class ReduceAction709 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var pimportnode2 = nodearraylist2 assert pimportnode2 isa nullable PImport # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if pimportnode2 != null then listnode3.add(pimportnode2) end node_list = listnode3 p.push(p.go_to(119), node_list) end init do end end private class ReduceAction710 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pclassdefnode1 = nodearraylist1 assert pclassdefnode1 isa nullable PClassdef if pclassdefnode1 != null then listnode2.add(pclassdefnode1) end node_list = listnode2 p.push(p.go_to(120), node_list) end init do end end private class ReduceAction711 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var pclassdefnode2 = nodearraylist2 assert pclassdefnode2 isa nullable PClassdef # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if pclassdefnode2 != null then listnode3.add(pclassdefnode2) end node_list = listnode3 p.push(p.go_to(120), node_list) end init do end end private class ReduceAction712 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var psuperclassnode1 = nodearraylist1 assert psuperclassnode1 isa nullable PSuperclass if psuperclassnode1 != null then listnode2.add(psuperclassnode1) end node_list = listnode2 p.push(p.go_to(121), node_list) end init do end end private class ReduceAction713 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var psuperclassnode2 = nodearraylist2 assert psuperclassnode2 isa nullable PSuperclass # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if psuperclassnode2 != null then listnode3.add(psuperclassnode2) end node_list = listnode3 p.push(p.go_to(121), node_list) end init do end end private class ReduceAction714 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pformaldefnode1 = nodearraylist1 assert pformaldefnode1 isa nullable PFormaldef if pformaldefnode1 != null then listnode2.add(pformaldefnode1) end node_list = listnode2 p.push(p.go_to(122), node_list) end init do end end private class ReduceAction715 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var pformaldefnode2 = nodearraylist2 assert pformaldefnode2 isa nullable PFormaldef # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if pformaldefnode2 != null then listnode3.add(pformaldefnode2) end node_list = listnode3 p.push(p.go_to(122), node_list) end init do end end private class ReduceAction716 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var ppropdefnode1 = nodearraylist1 assert ppropdefnode1 isa nullable PPropdef if ppropdefnode1 != null then listnode2.add(ppropdefnode1) end node_list = listnode2 p.push(p.go_to(123), node_list) end init do end end private class ReduceAction717 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var ppropdefnode2 = nodearraylist2 assert ppropdefnode2 isa nullable PPropdef # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if ppropdefnode2 != null then listnode3.add(ppropdefnode2) end node_list = listnode3 p.push(p.go_to(123), node_list) end init do end end private class ReduceAction718 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pparamnode1 = nodearraylist1 assert pparamnode1 isa nullable PParam if pparamnode1 != null then listnode2.add(pparamnode1) end node_list = listnode2 p.push(p.go_to(124), node_list) end init do end end private class ReduceAction719 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var pparamnode2 = nodearraylist2 assert pparamnode2 isa nullable PParam # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if pparamnode2 != null then listnode3.add(pparamnode2) end node_list = listnode3 p.push(p.go_to(124), node_list) end init do end end private class ReduceAction720 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pclosuredeclnode1 = nodearraylist1 assert pclosuredeclnode1 isa nullable PClosureDecl if pclosuredeclnode1 != null then listnode2.add(pclosuredeclnode1) end node_list = listnode2 p.push(p.go_to(125), node_list) end init do end end private class ReduceAction721 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var pclosuredeclnode2 = nodearraylist2 assert pclosuredeclnode2 isa nullable PClosureDecl # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if pclosuredeclnode2 != null then listnode3.add(pclosuredeclnode2) end node_list = listnode3 p.push(p.go_to(125), node_list) end init do end end private class ReduceAction722 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var ptypenode1 = nodearraylist1 assert ptypenode1 isa nullable PType if ptypenode1 != null then listnode2.add(ptypenode1) end node_list = listnode2 p.push(p.go_to(126), node_list) end init do end end private class ReduceAction723 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var ptypenode2 = nodearraylist2 assert ptypenode2 isa nullable PType # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if ptypenode2 != null then listnode3.add(ptypenode2) end node_list = listnode3 p.push(p.go_to(126), node_list) end init do end end private class ReduceAction724 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr if pexprnode1 != null then listnode2.add(pexprnode1) end node_list = listnode2 p.push(p.go_to(127), node_list) end init do end end private class ReduceAction725 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var pexprnode2 = nodearraylist2 assert pexprnode2 isa nullable PExpr # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if pexprnode2 != null then listnode3.add(pexprnode2) end node_list = listnode3 p.push(p.go_to(127), node_list) end init do end end private class ReduceAction726 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] # if listnode1 != null then if listnode2.is_empty then listnode2 = listnode1 else listnode2.append(listnode1) end # end node_list = listnode2 p.push(p.go_to(128), node_list) end init do end end private class ReduceAction727 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var listnode2 = nodearraylist2 assert listnode2 isa Array[Object] # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end # if listnode2 != null then if listnode3.is_empty then listnode3 = listnode2 else listnode3.append(listnode2) end # end node_list = listnode3 p.push(p.go_to(128), node_list) end init do end end private class ReduceAction728 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var pexprnode1 = nodearraylist1 assert pexprnode1 isa nullable PExpr if pexprnode1 != null then listnode2.add(pexprnode1) end node_list = listnode2 p.push(p.go_to(129), node_list) end init do end end private class ReduceAction729 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var pexprnode2 = nodearraylist2 assert pexprnode2 isa nullable PExpr # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if pexprnode2 != null then listnode3.add(pexprnode2) end node_list = listnode3 p.push(p.go_to(129), node_list) end init do end end private class ReduceAction730 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var tidnode1 = nodearraylist1 assert tidnode1 isa nullable TId if tidnode1 != null then listnode2.add(tidnode1) end node_list = listnode2 p.push(p.go_to(130), node_list) end init do end end private class ReduceAction731 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var tidnode2 = nodearraylist2 assert tidnode2 isa nullable TId # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if tidnode2 != null then listnode3.add(tidnode2) end node_list = listnode3 p.push(p.go_to(130), node_list) end init do end end private class ReduceAction732 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var tcommentnode1 = nodearraylist1 assert tcommentnode1 isa nullable TComment if tcommentnode1 != null then listnode2.add(tcommentnode1) end node_list = listnode2 p.push(p.go_to(131), node_list) end init do end end private class ReduceAction733 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var tcommentnode2 = nodearraylist2 assert tcommentnode2 isa nullable TComment # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if tcommentnode2 != null then listnode3.add(tcommentnode2) end node_list = listnode3 p.push(p.go_to(131), node_list) end init do end end private class ReduceAction734 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var teolnode1 = nodearraylist1 assert teolnode1 isa nullable TEol if teolnode1 != null then listnode2.add(teolnode1) end node_list = listnode2 p.push(p.go_to(132), node_list) end init do end end private class ReduceAction735 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var teolnode2 = nodearraylist2 assert teolnode2 isa nullable TEol # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if teolnode2 != null then listnode3.add(teolnode2) end node_list = listnode3 p.push(p.go_to(132), node_list) end init do end end private class ReduceAction736 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist1 = p.pop var listnode2 = new Array[Object] var ppropdefnode1 = nodearraylist1 assert ppropdefnode1 isa nullable PPropdef if ppropdefnode1 != null then listnode2.add(ppropdefnode1) end node_list = listnode2 p.push(p.go_to(133), node_list) end init do end end private class ReduceAction737 special ReduceAction redef fun action(p: Parser) do var node_list: nullable Object = null var nodearraylist2 = p.pop var nodearraylist1 = p.pop var listnode3 = new Array[Object] var listnode1 = nodearraylist1 assert listnode1 isa Array[Object] var ppropdefnode2 = nodearraylist2 assert ppropdefnode2 isa nullable PPropdef # if listnode1 != null then if listnode3.is_empty then listnode3 = listnode1 else listnode3.append(listnode1) end # end if ppropdefnode2 != null then listnode3.add(ppropdefnode2) end node_list = listnode3 p.push(p.go_to(133), node_list) end init do end end