public final void oper_list(SS_script script, SS_statement stat) throws RecognitionException {
		ParserRuleReturnScope x =null;
		ParserRuleReturnScope y =null;

		try {
			// SayScript.g:145:48: (x= oper[$script] ( COMMA y= oper[script] )* )
			// SayScript.g:145:50: x= oper[$script] ( COMMA y= oper[script] )*
			{
			pushFollow(FOLLOW_oper_in_oper_list1047);
			x=oper(script);
			state._fsp--;


						stat.lineno = (x!=null?((SayScriptParser.oper_return)x).line:0);
						SS_op op = new SS_op((x!=null?((SayScriptParser.oper_return)x).x:0));
						stat.oplist.add(op);
					 
			// SayScript.g:150:6: ( COMMA y= oper[script] )*
			loop2:
			while (true) {
				int alt2=2;
				int LA2_0 = input.LA(1);
				if ( (LA2_0==COMMA) ) {
					alt2=1;
				}

				switch (alt2) {
				case 1 :
					// SayScript.g:150:8: COMMA y= oper[script]
					{
					match(input,COMMA,FOLLOW_COMMA_in_oper_list1064); 
					pushFollow(FOLLOW_oper_in_oper_list1068);
					y=oper(script);
					state._fsp--;


							    stat.lineno = (y!=null?((SayScriptParser.oper_return)y).line:0);
								SS_op op2 = new SS_op((y!=null?((SayScriptParser.oper_return)y).x:0));
								stat.oplist.add(op2);
					         
					}
					break;

				default :
					break loop2;
				}
			}

			}

		}
		catch (RecognitionException re) {
			reportError(re);
			recover(input,re);
		}
		finally {
			// do for sure before leaving
		}
	}