docs: public final DSLMapParser.value_chunk_return value_chunk() throws RecognitionException {
  		DSLMapParser.value_chunk_return retval = new DSLMapParser.value_chunk_return();
  		retval.start = input.LT(1);
  
  		Object root_0 = null;
  
  		Token EQUALS21=null;
  		Token COMMA22=null;
  		Token DOT23=null;
  		ParserRuleReturnScope literal20 =null;
  
  		Object EQUALS21_tree=null;
  		Object COMMA22_tree=null;
  		Object DOT23_tree=null;
  
  		try {
  			// src/main/resources/org/drools/compiler/lang/dsl/DSLMap.g:182:5: ( ( literal | EQUALS | COMMA | DOT )+ )
  			// src/main/resources/org/drools/compiler/lang/dsl/DSLMap.g:182:7: ( literal | EQUALS | COMMA | DOT )+
  			{
  			root_0 = (Object)adaptor.nil();
  
  
  			// src/main/resources/org/drools/compiler/lang/dsl/DSLMap.g:182:7: ( literal | EQUALS | COMMA | DOT )+
  			int cnt13=0;
  			loop13:
  			while (true) {
  				int alt13=5;
  				switch ( input.LA(1) ) {
  				case COLON:
  				case LEFT_SQUARE:
  				case LITERAL:
  				case RIGHT_SQUARE:
  					{
  					int LA13_2 = input.LA(2);
  					if ( (synpred15_DSLMap()) ) {
  						alt13=1;
  					}
  
  					}
  					break;
  				case EQUALS:
  					{
  					int LA13_3 = input.LA(2);
  					if ( (synpred16_DSLMap()) ) {
  						alt13=2;
  					}
  
  					}
  					break;
  				case COMMA:
  					{
  					int LA13_4 = input.LA(2);
  					if ( (synpred17_DSLMap()) ) {
  						alt13=3;
  					}
  
  					}
  					break;
  				case DOT:
  					{
  					int LA13_5 = input.LA(2);
  					if ( (synpred18_DSLMap()) ) {
  						alt13=4;
  					}
  
  					}
  					break;
  				}
  				switch (alt13) {
  				case 1 :
  					// src/main/resources/org/drools/compiler/lang/dsl/DSLMap.g:182:8: literal
  					{
  					pushFollow(FOLLOW_literal_in_value_chunk742);
  					literal20=literal();
  					state._fsp--;
  					if (state.failed) return retval;
  					if ( state.backtracking==0 ) adaptor.addChild(root_0, literal20.getTree());
  
  					}
  					break;
  				case 2 :
  					// src/main/resources/org/drools/compiler/lang/dsl/DSLMap.g:182:16: EQUALS
  					{
  					EQUALS21=(Token)match(input,EQUALS,FOLLOW_EQUALS_in_value_chunk744); if (state.failed) return retval;
  					if ( state.backtracking==0 ) {
  					EQUALS21_tree = (Object)adaptor.create(EQUALS21);
  					adaptor.addChild(root_0, EQUALS21_tree);
  					}
  
  					}
  					break;
  				case 3 :
  					// src/main/resources/org/drools/compiler/lang/dsl/DSLMap.g:182:23: COMMA
  					{
  					COMMA22=(Token)match(input,COMMA,FOLLOW_COMMA_in_value_chunk746); if (state.failed) return retval;
  					if ( state.backtracking==0 ) {
  					COMMA22_tree = (Object)adaptor.create(COMMA22);
  					adaptor.addChild(root_0, COMMA22_tree);
  					}
  
  					}
  					break;
  				case 4 :
  					// src/main/resources/org/drools/compiler/lang/dsl/DSLMap.g:182:29: DOT
  					{
  					DOT23=(Token)match(input,DOT,FOLLOW_DOT_in_value_chunk748); if (state.failed) return retval;
  					if ( state.backtracking==0 ) {
  					DOT23_tree = (Object)adaptor.create(DOT23);
  					adaptor.addChild(root_0, DOT23_tree);
  					}
  
  					}
  					break;
  
  				default :
  					if ( cnt13 >= 1 ) break loop13;
  					if (state.backtracking>0) {state.failed=true; return retval;}
  					EarlyExitException eee = new EarlyExitException(13, input);
  					throw eee;
  				}
  				cnt13++;
  			}
  
  			}
  
  			retval.stop = input.LT(-1);
  
  			if ( state.backtracking==0 ) {
  			retval.tree = (Object)adaptor.rulePostProcessing(root_0);
  			adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop);
  			}
  		}
  		catch (RecognitionException re) {
  			reportError(re);
  			recover(input,re);
  			retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re);
  		}
  		finally {
  			// do for sure before leaving
  		}
  		return retval;
  	}