docs: function getCheckStartEndBlockEvalFunction() {
  		var skipBogus = false,
  			whitespaces = CKEDITOR.dom.walker.whitespaces(),
  			bookmarkEvaluator = CKEDITOR.dom.walker.bookmark( true ),
  			isBogus = CKEDITOR.dom.walker.bogus();
  
  		return function( node ) {
  			// First skip empty nodes
  			if ( bookmarkEvaluator( node ) || whitespaces( node ) )
  				return true;
  
  			// Skip the bogus node at the end of block.
  			if ( isBogus( node ) && !skipBogus ) {
  				skipBogus = true;
  				return true;
  			}
  
  			// If there's any visible text, then we're not at the start.
  			if ( node.type == CKEDITOR.NODE_TEXT &&
  				( node.hasAscendant( 'pre' ) ||
  					CKEDITOR.tools.trim( node.getText() ).length ) ) {
  				return false;
  			}
  
  			// If there are non-empty inline elements (e.g. <img />), then we're not
  			// at the start.
  			if ( node.type == CKEDITOR.NODE_ELEMENT && !node.is( inlineChildReqElements ) )
  				return false;
  
  			return true;
  		};
  	}