EDITING DELEGATE: shouldBeginEditingInDOMRange:range from 0 of BODY > HTML > #document to 16 of BODY > HTML > #document
EDITING DELEGATE: webViewDidBeginEditing:WebViewDidBeginEditingNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 6 of #text > B > P > BODY > HTML > #document to 6 of #text > B > P > BODY > HTML > #document toDOMRange:range from 0 of P > BODY > HTML > #document to 0 of P > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification
EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 0 of P > BODY > HTML > #document to 0 of P > BODY > HTML > #document toDOMRange:range from 0 of P > BODY > HTML > #document to 0 of P > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification
EDITING DELEGATE: shouldChangeSelectedDOMRange:range from 1 of #text > B > P > BODY > HTML > #document to 1 of #text > B > P > BODY > HTML > #document toDOMRange:range from 1 of #text > B > P > BODY > HTML > #document to 1 of #text > B > P > BODY > HTML > #document affinity:NSSelectionAffinityDownstream stillSelecting:FALSE
EDITING DELEGATE: webViewDidChangeSelection:WebViewDidChangeSelectionNotification
EDITING DELEGATE: webViewDidChange:WebViewDidChangeNotification
layer at (0,0) size 785x685
  RenderView at (0,0) size 785x600
layer at (0,0) size 785x685
  RenderBlock {HTML} at (0,0) size 785x685
    RenderBody {BODY} at (8,8) size 769x653
      RenderBlock (anonymous) at (0,0) size 769x84
        RenderText {#text} at (0,0) size 750x55
          text run at (0,0) width 744: "Test inserting paragraphs and managing typing style correctly: \"x\" under \"line"
          text run at (744,0) width 6: " "
          text run at (0,28) width 338: "2\" should be bold. Fix for this bug: "
        RenderInline {A} at (0,0) size 257x27 [color=#0000EE]
          RenderText {#text} at (338,28) size 257x27
            text run at (338,28) width 257: "<rdar://problem/3939523>"
        RenderText {#text} at (595,28) size 744x55
          text run at (595,28) width 143: " in some cases,"
          text run at (738,28) width 6: " "
          text run at (0,56) width 537: "text does not retain style info after pressing return twice"
      RenderBlock {DIV} at (0,84) size 769x12
      RenderBlock {P} at (0,120) size 769x56 [border: (2px solid #0000FF)]
        RenderText {#text} at (14,14) size 53x27
          text run at (14,14) width 53: "line 1"
      RenderBlock {P} at (0,200) size 769x56 [border: (2px solid #0000FF)]
        RenderBR {BR} at (14,14) size 0x27 [bgcolor=#008000]
      RenderBlock {P} at (0,280) size 769x55 [border: (2px solid #0000FF)]
        RenderInline {B} at (0,0) size 56x26
          RenderText {#text} at (14,14) size 56x26
            text run at (14,14) width 56: "line 2"
      RenderBlock {P} at (0,359) size 769x55 [border: (2px solid #0000FF)]
        RenderInline {B} at (0,0) size 0x26
          RenderBR {BR} at (14,14) size 0x26 [bgcolor=#008000]
      RenderBlock {P} at (0,438) size 769x55 [border: (2px solid #0000FF)]
        RenderInline {B} at (0,0) size 12x26
          RenderText {#text} at (14,14) size 12x26
            text run at (14,14) width 12: "x"
      RenderBlock {P} at (0,517) size 769x56 [border: (2px solid #0000FF)]
        RenderBR {BR} at (14,14) size 0x27 [bgcolor=#008000]
      RenderBlock {P} at (0,597) size 769x56 [border: (2px solid #0000FF)]
        RenderText {#text} at (14,14) size 53x27
          text run at (14,14) width 53: "line 3"
caret: position 1 of child 0 {#text} of child 0 {B} of child 11 {P} of body
