public final void atributes() throws RecognitionException, TokenStreamException {
		
		returnAST = null;
		ASTPair currentAST = new ASTPair();
		AST atributes_AST = null;
		
		try {      // for error handling
			boolean synPredMatched1333 = false;
			if (((LA(1)==VB) && (_tokenSet_3.member(LA(2))))) {
				int _m1333 = mark();
				synPredMatched1333 = true;
				inputState.guessing++;
				try {
					{
					match(VB);
					}
				}
				catch (RecognitionException pe) {
					synPredMatched1333 = false;
				}
				rewind(_m1333);
inputState.guessing--;
			}
			if ( synPredMatched1333 ) {
				match(VB);
				list_of_atributes();
				astFactory.addASTChild(currentAST, returnAST);
				atributes_AST = (AST)currentAST.root;
			}
			else if ((LA(1)==VB) && (LA(2)==CSB||LA(2)==VB)) {
				match(VB);
				atributes_AST = (AST)currentAST.root;
			}
			else {
				throw new NoViableAltException(LT(1), getFilename());
			}
			
		}
		catch (RecognitionException ex) {
			if (inputState.guessing==0) {
				reportError(ex);
				recover(ex,_tokenSet_8);
			} else {
			  throw ex;
			}
		}
		returnAST = atributes_AST;
	}