code: function pruneEmptyDisjointAncestors( first, second, isPruneToEnd ) {
  		var commonParent = first.getCommonAncestor( second ),
  			node = isPruneToEnd ? second : first,
  			removableParent = node;
  
  		while ( ( node = node.getParent() ) && !commonParent.equals( node ) && node.getChildCount() == 1 )
  			removableParent = node;
  
  		removableParent.remove();
  	}
docs: Finds the innermost child of common parent, which, if removed, removes nothing but the contents of the element.  before: <div><p><strong>first</strong></p><p>second</p></div> after:  <div><p>second</p></div>  before: <div><p>x<strong>first</strong></p><p>second</p></div> after:  <div><p>x</p><p>second</p></div>  isPruneToEnd=true before: <div><p><strong>first</strong></p><p>second</p></div> after:  <div><p><strong>first</strong></p></div>  @param {CKEDITOR.dom.element} first @param {CKEDITOR.dom.element} second @param {Boolean} isPruneToEnd