docs: public final void mOctalEscape() throws RecognitionException {
  		try {
  			// src/main/resources/org/drools/compiler/semantics/java/parser/Java.g:1360:5: ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) )
  			int alt25=3;
  			int LA25_0 = input.LA(1);
  			if ( (LA25_0=='\\') ) {
  				int LA25_1 = input.LA(2);
  				if ( ((LA25_1 >= '0' && LA25_1 <= '3')) ) {
  					int LA25_2 = input.LA(3);
  					if ( ((LA25_2 >= '0' && LA25_2 <= '7')) ) {
  						int LA25_4 = input.LA(4);
  						if ( ((LA25_4 >= '0' && LA25_4 <= '7')) ) {
  							alt25=1;
  						}
  
  						else {
  							alt25=2;
  						}
  
  					}
  
  					else {
  						alt25=3;
  					}
  
  				}
  				else if ( ((LA25_1 >= '4' && LA25_1 <= '7')) ) {
  					int LA25_3 = input.LA(3);
  					if ( ((LA25_3 >= '0' && LA25_3 <= '7')) ) {
  						alt25=2;
  					}
  
  					else {
  						alt25=3;
  					}
  
  				}
  
  				else {
  					int nvaeMark = input.mark();
  					try {
  						input.consume();
  						NoViableAltException nvae =
  							new NoViableAltException("", 25, 1, input);
  						throw nvae;
  					} finally {
  						input.rewind(nvaeMark);
  					}
  				}
  
  			}
  
  			else {
  				NoViableAltException nvae =
  					new NoViableAltException("", 25, 0, input);
  				throw nvae;
  			}
  
  			switch (alt25) {
  				case 1 :
  					// src/main/resources/org/drools/compiler/semantics/java/parser/Java.g:1360:9: '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' )
  					{
  					match('\\'); 
  					if ( (input.LA(1) >= '0' && input.LA(1) <= '3') ) {
  						input.consume();
  					}
  					else {
  						MismatchedSetException mse = new MismatchedSetException(null,input);
  						recover(mse);
  						throw mse;
  					}
  					if ( (input.LA(1) >= '0' && input.LA(1) <= '7') ) {
  						input.consume();
  					}
  					else {
  						MismatchedSetException mse = new MismatchedSetException(null,input);
  						recover(mse);
  						throw mse;
  					}
  					if ( (input.LA(1) >= '0' && input.LA(1) <= '7') ) {
  						input.consume();
  					}
  					else {
  						MismatchedSetException mse = new MismatchedSetException(null,input);
  						recover(mse);
  						throw mse;
  					}
  					}
  					break;
  				case 2 :
  					// src/main/resources/org/drools/compiler/semantics/java/parser/Java.g:1361:9: '\\\\' ( '0' .. '7' ) ( '0' .. '7' )
  					{
  					match('\\'); 
  					if ( (input.LA(1) >= '0' && input.LA(1) <= '7') ) {
  						input.consume();
  					}
  					else {
  						MismatchedSetException mse = new MismatchedSetException(null,input);
  						recover(mse);
  						throw mse;
  					}
  					if ( (input.LA(1) >= '0' && input.LA(1) <= '7') ) {
  						input.consume();
  					}
  					else {
  						MismatchedSetException mse = new MismatchedSetException(null,input);
  						recover(mse);
  						throw mse;
  					}
  					}
  					break;
  				case 3 :
  					// src/main/resources/org/drools/compiler/semantics/java/parser/Java.g:1362:9: '\\\\' ( '0' .. '7' )
  					{
  					match('\\'); 
  					if ( (input.LA(1) >= '0' && input.LA(1) <= '7') ) {
  						input.consume();
  					}
  					else {
  						MismatchedSetException mse = new MismatchedSetException(null,input);
  						recover(mse);
  						throw mse;
  					}
  					}
  					break;
  
  			}
  		}
  		finally {
  			// do for sure before leaving
  		}
  	}