 
     previousSide = new sideKlass(text, description, textMarker, bannerMarker, position)
 
+  markSeparator = ->
+    sepRowStart = row
+    row += 1
+    sepRowEnd = row
+
+    marker = editor.markBufferRange([[sepRowStart, 0], [sepRowEnd, 0]], options)
+    previousSide.followingMarker = marker
+    previousSide = new Navigator(marker)
+
   # Mark and construct a Side with a banner and description as its last line.
   markFooterSide = (position, sideKlass) ->
     sideRowStart = row
-    advanceToBoundary()
+    advanceToBoundary('>')
     description = sideDescription()
-    row += 1 # Advance past the boundary line.
+    row += 1
     sideRowEnd = row
 
     textRange = [[sideRowStart, 0], [sideRowEnd - 1, 0]]

parseConflict = (state, editor, row) ->
  previousSide = null

  d = (x) -> console.log "#{x} - #{editor.lineTextForBufferRow row}"

  # Mark and construct a Side that begins with a banner and description as its first line.
  markHeaderSide = (position, sideKlass) ->
    sideRowStart = row
    description = sideDescription()
    advanceToBoundary()
    sideRowEnd = row

    bannerMarker = editor.markBufferRange([[sideRowStart, 0], [sideRowStart + 1, 0]], options)
    previousSide.followingMarker = bannerMarker if previousSide?


    previousSide.followingMarker = bannerMarker
    previousSide

  sideDescription = -> editor.lineTextForBufferRow(row).match(/^[<|>]{7} (.*)$/)[1]

  isAtBoundary = (boundaryKinds = '<|=>') ->
    line = editor.lineTextForBufferRow(row)
    for b in boundaryKinds
      return b if line.startsWith(b.repeat(7))
    null

  advanceToBoundary = (boundaryKinds = '<|=>') ->
    b = isAtBoundary(boundaryKinds)
    until b
      row += 1
      b = isAtBoundary(boundaryKinds)
    b

  if state.isRebase
    theirs = markHeaderSide(TOP, TheirSide)
